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

Aspose.PDF FOSS para TypeScript

Biblioteca TypeScript de código aberto para criar, editar, converter, anotar e proteger documentos PDF — licenciada sob MIT, sem dependências.

Aspose.PDF FOSS — Biblioteca PDF de Código Aberto em TypeScript

Aspose.PDF FOSS for TypeScript é uma biblioteca de código aberto para criar, editar, converter e proteger documentos PDF em aplicações Node.js (>=22). As classes Document e Page são os pontos de entrada centrais: Document.OpenFile() / Document.Open() carregam arquivos existentes ou bytes em memória, Document.New() inicia um documento em branco, e WriteTo() / Save() gravam o resultado de volta, opcionalmente com compressão xref-stream. O projeto é um pacote sem dependências (Node.js é o único requisito de tempo de execução) e está em desenvolvimento ativo em estágio inicial (atualmente versão 0.1.0).

Além da edição central de documentos e páginas — dividir, mesclar, extrair, reordenar e anexar páginas com Document.Split(), Document.Merge(), Document.ExtractPages() e Document.Append() — a biblioteca converte páginas e documentos inteiros para outros formatos com ToHtml(), ToMarkdown(), ToDocx(), ToSvg(), ToImage() e ToEpub(). O suporte a anotações inclui realce, sublinhado, ondulado, tachado, link, nota de texto, texto livre e marcação de selo por meio de métodos como Page.AddHighlight() e Page.AddStamp(). Campos AcroForm (texto, caixa de seleção, rádio, caixa combo, caixa de lista e botão) são criados com a classe Form e suas subclasses tipadas Field, e documentos podem ser criptografados com AES-128, AES-256 ou RC4, assinados digitalmente com Document.Sign() e redigidos com Document.Redact() / Page.ApplyRedactions().

Aspose.PDF FOSS for TypeScript é distribuído sob a licença MIT sem taxas de tempo de execução ou restrições de uso (veja a seção de instalação abaixo). Para a família de produtos empresariais, veja Aspose.PDF — Enterprise Product Family.

Edição de Documento e Página

  • Abra PDFs do disco ou a partir de bytes na memória com Document.OpenFile() / Document.Open(), ou inicie em branco com Document.New()
  • Divida, mescle, extraia, reorganize e anexe páginas com Document.Split(), Document.Merge(), Document.ExtractPages(), Document.Reorder() e Document.Append()
  • Leia e atualize os metadados do documento com Document.SetMetadata() / Document.GetMetadata()
  • Grave a saída com Document.WriteTo(), opcionalmente comprimida via fluxos xref e fluxos de objetos

Onde é usado

  • Pipelines de montagem de PDF no backend que dividem, mesclam e reordenam arquivos recebidos
  • Serviços de extração de páginas para divisão de capítulos ou faturas
  • Gerenciamento de metadados de documentos para conformidade e arquivamento
  • Geração de saída otimizada para armazenamento em repositórios de documentos de alto volume

Conversão de Formato

  • Renderize documentos completos para HTML com Document.ToHtml() e para Markdown no estilo GitHub com Document.ToMarkdown()
  • Produza saída .docx em fluxo reformatável ou layout fixo com Document.ToDocx() / Page.ToDocx()
  • Renderize páginas individuais para SVG autônomo com Page.ToSvg() ou bytes rasterizados PNG/TIFF com Page.ToImage()
  • Exporte para EPUB com Document.ToEpub() para distribuição em leitores digitais

Onde é usado

  • Pipelines de publicação que convertem PDFs em HTML prontos para web ou Markdown
  • Geração de miniaturas e visualizações para sistemas de gerenciamento de documentos
  • Arquivamento de PDFs como documentos Word editáveis
  • Fluxos de trabalho de distribuição de e-books

Anotações e Marcação

  • Adicione marcações de texto com Page.AddHighlight(), Page.AddUnderline(), Page.AddSquiggly() e Page.AddStrikeOut()
  • Anexe notas autoadesivas e texto independente com Page.AddTextNote() e Page.AddFreeText()
  • Insira anotações de carimbo com Page.AddStamp() e links clicáveis com Page.AddLink()
  • Achate qualquer anotação no conteúdo da página usando o método Annotation.Flatten() exposto em subtipos tipados como MarkupAnnotation e StampAnnotation

Onde é usado

  • Ferramentas de revisão e marcação de alterações
  • Fluxos de trabalho colaborativos de marcação e comentários
  • Posicionamento de selo de aprovação em fluxos de assinatura
  • Publicação somente leitura de marcação interativa anterior

AcroForms

  • Adicione campos de texto, caixa de seleção, rádio, caixa de combinação, caixa de lista e campos push-button com a classe Form (AddTextField(), AddCheckbox(), AddRadioGroup(), AddComboBox(), AddListBox(), AddPushButton())
  • Estilize e atualize a aparência dos campos com SetStyle() e GenerateAppearance() nas classes de campo tipadas, como TextField, ChoiceField e ButtonField
  • Vincule o comportamento do campo com SetActions() em qualquer Field
  • Achate um formulário concluído em conteúdo de página estático com Document.FlattenForm()

Onde é usado

  • Formulários governamentais, fiscais e de inscrição preenchíveis
  • Pré-preenchimento programático de formulários a partir de registros de banco de dados
  • Aplanamento de formulários enviados antes do arquivamento de longo prazo
  • Pesquisas interativas e documentos de admissão

Segurança, Assinatura e Redação

  • Proteger por senha e criptografar a saída com AES-128, AES-256 ou RC4 via Document.WriteTo()’s encrypt opção, com Permissions granulares
  • Assinar digitalmente documentos com Document.Sign() e verificar assinaturas com Document.VerifySignatures()
  • Adicionar carimbos de tempo confiáveis com Document.AddDocumentTimestamp()
  • Redigir permanentemente regiões sensíveis ou texto correspondido com Document.Redact(), Document.RedactText() e Page.ApplyRedactions()

Onde é usado

  • Distribuição de relatórios confidenciais com senhas por destinatário
  • Contratos assinados digitalmente e com carimbo de data/hora
  • Redação de conformidade de PII antes da divulgação pública
  • Trilhas de auditoria à prova de violação para indústrias reguladas

Converter um PDF para HTML, Markdown e DOCX

Abra um PDF e renderize-o em vários formatos downstream em uma única passagem.

git clone https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-TypeScript.git
cd Aspose.PDF-FOSS-for-TypeScript
npm install
npm run build
import { Document } from '@asposefoss/pdf';
const doc = Document.OpenFile('in.pdf');
const svg = doc.Pages[0].ToSvg();          // standalone <svg> string
// fs.writeFileSync('page1.svg', svg);
const png = doc.Pages[0].ToImage({ scale: 2 }); // Uint8Array of PNG bytes @144 DPI
// fs.writeFileSync('page1.png', png);
const html = doc.ToHtml();                 // standalone semantic HTML, all pages
// fs.writeFileSync('out.html', html);
const md = doc.ToMarkdown();               // GFM Markdown, all pages
// fs.writeFileSync('out.md', md);
const docx = doc.ToDocx();                 // .docx bytes, reflowed, images in the package
// fs.writeFileSync('out.docx', docx);
const fixed = doc.ToDocx({ mode: 'textbox' });  // .docx keeping each page's own geometry
// fs.writeFileSync('fixed.docx', fixed);

Editar Páginas e Metadados, Em seguida Salvar

Carregue um PDF, edite suas páginas e metadados, e grave-o novamente com compressão.

import { Document } from '@asposefoss/pdf';

// Open from disk (or Document.Open(uint8array) for in-memory data)
const doc = Document.OpenFile('input.pdf');

// Inspect and edit pages
console.log(doc.Pages.length);
doc.Pages[0].Rotate = 90;
doc.RemovePage(2);                 // 1-based page number
doc.Reorder([3, 1, 2]);

// Metadata
doc.SetMetadata({ title: 'Report', author: 'Jane', custom: { Dept: 'R&D' } });

// Save
doc.WriteTo('output.pdf');         // or: const bytes = doc.Save();
doc.WriteTo('small.pdf', { compressed: true }); // xref stream + object streams

Criar um Novo PDF do Zero

Inicie um documento em branco, adicione texto posicionado e anexe outra página.

import { Document, PageFormat } from '@asposefoss/pdf';
const doc = Document.New(PageFormat.A4);          // one blank A4 page
doc.Pages[0].AddText('Hello', 72, 720, { fontSize: 14 });
doc.AddPage(PageFormat.A4.landscape());           // append more as you go
doc.WriteTo('scratch.pdf');

Proteja com senha e criptografe um PDF

Criptografe um PDF existente com um par de senhas de usuário/proprietário e AES-256, restringindo a cópia e a modificação.

import { Document } from '@asposefoss/pdf';
const doc = Document.OpenFile('in.pdf');
doc.WriteTo('locked.pdf', {
  encrypt: {
    userPassword: 'open-me',       // required to open (default '')
    ownerPassword: 'full-rights',  // default: same as userPassword
    algorithm: 'aes256',           // 'aes256' (default) | 'aes128' | 'rc4'
    permissions: { copying: false, modifying: false },
    encryptMetadata: true,
  },
});

Perguntas Frequentes

Qual é o modelo de licenciamento para Aspose.PDF FOSS for TypeScript?

Aspose.PDF FOSS for TypeScript é lançado sob a Licença MIT, permitindo uso gratuito em produtos comerciais sem taxas de tempo de execução. O código-fonte está publicamente disponível no GitHub.

Como instalo Aspose.PDF FOSS for TypeScript?

O pacote tem como alvo o Node.js 22 e versões posteriores e não possui outras dependências de tempo de execução. Consulte a seção de instalação acima para o comando de instalação atual.

Quais formatos de arquivo Aspose.PDF FOSS for TypeScript suporta?

A biblioteca lê e grava PDF, Markdown, SVG e TIFF, e pode gerar saída DOCX, HTML, PNG e EPUB.

Como criar um novo documento PDF?

Use Document.New(PageFormat.A4) para produzir um documento em branco, em seguida adicione páginas e salve com Document.WriteTo().

É necessária uma chave de licença para usar Aspose.PDF FOSS for TypeScript?

Nenhuma chave de licença ou etapa de ativação é necessária. A biblioteca funciona totalmente sem licença e sem custo sob a MIT License.

  

Recursos de Suporte e Aprendizado

 Português