1. Produtos
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for Go

Aspose.PDF FOSS for Go

Biblioteca Pure-Go para criar, editar, mesclar e proteger documentos PDF — código aberto sob MIT, sem dependências não‑Go.

Aspose.PDF FOSS — Biblioteca PDF Go de Código Aberto

Aspose.PDF FOSS for Go é uma biblioteca pure-Go que permite aos desenvolvedores criar, ler, editar, mesclar, dividir e proteger documentos PDF sem quaisquer dependências nativas externas. Desenvolvida para aplicações Go do lado do servidor, ela se integra a qualquer projeto de módulo Go com um único go get github.com/aspose-pdf-foss/aspose-pdf-foss-for-go comando.

A biblioteca expõe uma superfície abrangente API através dos tipos Document, Page, Form, Table, e AnnotationCollection, cobrindo gerenciamento de documentos, preenchimento de AcroForm, tabela estruturada layout, navegação de marcadores, manipulação de imagens e validação de integridade estrutural. Recursos de segurança incluem criptografia AES-128, AES-256 e RC4-128 via EncryptionOptions e Permissions, com controle de acesso granular por operação. Aspose.PDF FOSS for Go é lançado sob a licença MIT sem taxas de tempo de execução ou restrições de uso. Requer Go 1.24 ou superior. Para recursos empresariais e suporte, veja Aspose.PDF for Go — Enterprise Product.

Operações de documentação

  • Abra, crie, salve e feche arquivos PDF via Document
  • Dividir um documento em instâncias Document por página
  • Anexar vários PDFs no local usando Append
  • Extrair subconjuntos de páginas usando PageRange para exportações parciais
  • Leia e escreva metadados de documentos XMP através do tipo XMPMetadata

Scenários práticos

  • Dividir em lotes os PDFs recebidos em arquivos de página individuais
  • Reunir relatórios mensais de PDFs secções
  • Extracção de intervalos de página para fluxos de trabalho com cópia redigida
  • Atualizar o autor e a data de criação do documento programaticamente

Segurança e Permissões

  • Criptografar PDFs com AES-128, AEs-256 ou RC4-128 via EncryptionOptions
  • Configurar senhas de usuário e proprietário em uma única chamada SetEncryption
  • Restringir impressão, cópia e acessibilidade usando Permissions
  • Abra arquivos protegidos por senha com OpenWithPassword
  • Remover a criptografia e produzir cópias descifradas quando necessário

Scenários práticos

  • Entregar relatórios confidenciais com senhas para cada destinatário
  • Aplicar as permissões de impressão apenas em contratos distribuídos
  • Re-criptografar documentos após a marca d’água no local
  • Produção de cópias de arquivo em texto simples a partir dos originais protegidos

Processamento de AcroForm

  • Enumerar todos os campos num formulário usando Form e Field
  • Definir valores de texto em instâncias TextBoxField por nome do campo
  • Ligue CheckboxField e selecione RadioButtonField opções
  • Escolha itens nos controles ComboBoxField e ListBoxField
  • Ações de desencadeamento ButtonField em documentos interativos de formulário

Scenários práticos

  • Automatizar a enchimento de faturas e formulários contratuais
  • Preencher os modelos de aplicação antes da distribuição em PDF
  • Valores de campo preenchidos para processamento dos dados a jusante
  • Validar a presença no campo antes do arquivo

Tabelas e estrutura estruturada

  • Construir layouts de grade com Table, Row e Cell tipos
  • Aplicar estilos de borda através BorderInfo por célula ou tabela
  • Configurar o preenchimento e espaçamento com MarginInfo
  • Texto de estilo com TextStyle, Font , Color,HAlign e VAlign
  • Incorporar imagens dentro de células da tabela usando Image

Scenários práticos

  • Gerar faturas e demonstrações financeiras com dados em tabelas
  • Calendário de renderização ou tabelas de comparação nos relatórios gerados
  • Produzir PDFs baseados em dados a partir dos resultados de consultas do banco de dados
  • Criar tabelas acessíveis com bordas e espaçamento consistentes

Marcas de favoritos e navegação

  • Criar árvores de marcadores hierárquicos através OutlineItemCollection
  • Configurar estilos negritos/italic e cores personalizadas nos itens de contorno
  • Linkar marcadores para coordenadas exatas usando DestinationXYZ
  • Use os destinos de página com DestinationFit
  • Registre os alvos de salto através do NamedDestinations

Scenários práticos

  • Adicionar marcadores de capítulo e secção a documentos longos
  • Criar tabelas de conteúdo interativas para manuais técnicos
  • Ativar a navegação de links profundos a partir de hiperlinks externos
  • Preservar a estrutura de marcador quando se juntam vários documentos

Anotativas e selos

  • Adicionar comentários através de Annotation e AnnotationCollection
  • Crie chamadas de texto com TextAnnotation e FreeTextAnnotation
  • Aplicar selos de homologação através dos formulários StampAnnotation e StampName
  • Sublinhar o conteúdo com HighlightAnnotation
  • Reduzir regiões sensíveis usando RedactAnnotation

Scenários práticos

  • Adicionar comentários dos revisores aos projectos de documentos para aprovação.
  • Marca APPROVED ou CONFIDENTIAL nos PDFs finalizados
  • Reduzir permanentemente os dados pessoais para arquivos compatíveis com o RGPD
  • Incorporar hiperlinks e ações URI via LinkAnnotation

Dividir e fundir PDFs

Abra um PDF, divida-o em documentos por página ou junte vários arquivos num só.

doc, _ := pdf.Open("input.pdf")
pages, _ := doc.Split()
for i, p := range pages {
    p.Save(fmt.Sprintf("page%03d.pdf", i+1))
}
doc2, _ := pdf.Open("file2.pdf")
doc.Append(doc2)
doc.Save("merged.pdf")

Criptografar com Permissões .

Aplicar a encriptação AES-128 com permissões de impressão e cópia granulares numa chamada.

doc, _ := pdf.Open("input.pdf")
doc.SetEncryption(pdf.EncryptionOptions{
    UserPassword:  "userpass",
    OwnerPassword: "ownerpass",
    Permissions:   &pdf.Permissions{AllowPrint: true, AllowCopy: true},
})
doc.Save("restricted.pdf")

Preencher os campos do AcroForm

Objetivo campos de formulário por nome e definir valores para todos os tipos de widget.

doc, _ := pdf.Open("template.pdf")
text := doc.Form().Field("name").(*pdf.TextBoxField)
text.SetValue("Jane Doe")
check := doc.Form().Field("subscribe").(*pdf.CheckboxField)
check.SetChecked(true)
radio := doc.Form().Field("plan").(*pdf.RadioButtonField)
radio.Options()[1].SetSelected(true)
doc.Save("filled.pdf")

Criar marcadores hierárquicos

Construir uma árvore de marcadores aninhados com entradas em estilo e destinos de página precisos.

doc, _ := pdf.Open("input.pdf")
page, _ := doc.Page(1)
chapter := pdf.NewOutlineItemCollection(doc)
chapter.SetTitle("Chapter 1")
chapter.SetBold(true)
chapter.SetDestination(pdf.NewDestinationXYZ(page, 0, 800, 1.0))
doc.Outlines().Add(chapter)
doc.Save("with_bookmarks.pdf")

Perguntas Frequentes

Qual é a licença para Aspose.PDF FOSS para Go?

Aspose.PDF FOSS for Go é lançado sob a MIT License. O texto completo da licença está incluído no repositório em github.com/aspose-pdf-foss/aspose-pdf-foss-for-go.

Posso usar Aspose.PDF FOSS para Go em um produto comercial?

Sim, a licença do MIT permite uso comercial ilimitado, modificação, distribuição e uso privado.

Existe uma versão empresarial?

O produto Aspose.PDF comercial está disponível como o Aspose.PDF — Enterprise Product Family com suporte empresarial, cobertura de formato estendido e integração na nuvem.

Como instalo o Aspose.PDF FOSS para Go?

Execute go get github.com/aspose-pdf-foss/aspose-pdf-foss-for-go para adicionar o módulo ao seu projeto Go. Importe-o com um alias nos arquivos de origem usando import pdf "github.com/aspose-pdf-foss/aspose-pdf-foss-for-go".

Qual é a versão do Go?

É necessário ir 1.24 ou posterior. Verifique a sua versão com go version.

  

Recursos de Suporte e Aprendizado

 Português