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

Aspose.PDF FOSS per TypeScript

Libreria TypeScript open-source per creare, modificare, convertire, annotare e proteggere documenti PDF — con licenza MIT, senza dipendenze.

Aspose.PDF FOSS — Libreria PDF Open Source TypeScript

Aspose.PDF FOSS for TypeScript è una libreria open-source per creare, modificare, convertire, e proteggere documenti PDF in applicazioni Node.js (>=22). Le classi Document e Page sono i punti di ingresso principali: Document.OpenFile() / Document.Open() caricano file esistenti o byte in memoria, Document.New() avvia un documento vuoto, e WriteTo() / Save() scrivono il risultato, opzionalmente con compressione xref-stream. Il progetto è un pacchetto a zero dipendenze (Node.js è l’unico requisito di runtime) ed è in sviluppo attivo in fase iniziale (attualmente versione 0.1.0).

Oltre alla modifica di documento e pagina di base — divisione, unione, estrazione, riordino e aggiunta di pagine con Document.Split(), Document.Merge(), Document.ExtractPages(), e Document.Append() — la libreria converte pagine e documenti interi in altri formati con ToHtml(), ToMarkdown(), ToDocx(), ToSvg(), ToImage(), e ToEpub(). L’annotazione supporta evidenziazione, sottolineatura, ondulazione, barrato, link, nota testuale, testo libero e marcatura di timbro tramite metodi come Page.AddHighlight() e Page.AddStamp(). AcroForm campi (testo, casella di controllo, radio, casella combinata, casella di elenco e pulsante) sono costruiti con la classe Form e le sue sottoclassi tipizzate Field, e i documenti possono essere crittografati con AES-128, AES-256 o RC4, firmati digitalmente con Document.Sign(), e redatti con Document.Redact() / Page.ApplyRedactions().

Aspose.PDF FOSS for TypeScript è rilasciato sotto licenza MIT senza costi di runtime o restrizioni d’uso (vedi la sezione di installazione di seguito). Per la famiglia di prodotti enterprise, vedi Aspose.PDF — Enterprise Product Family.

Modifica di Documenti e Pagine

  • Apri PDF dal disco o da byte in memoria con Document.OpenFile() / Document.Open(), o avvia vuoto con Document.New()
  • Dividi, unisci, estrai, riordina e aggiungi pagine con Document.Split(), Document.Merge(), Document.ExtractPages(), Document.Reorder(), e Document.Append()
  • Leggi e aggiorna i metadati del documento con Document.SetMetadata() / Document.GetMetadata()
  • Scrivi l’output con Document.WriteTo(), opzionalmente compresso tramite flussi xref e flussi di oggetti

Dove è usato

  • Pipeline di assemblaggio PDF backend che dividono, uniscono e riordinano i file in ingresso
  • Servizi di estrazione pagine per la suddivisione di capitoli o fatture
  • Gestione dei metadati dei documenti per la conformità e l’archiviazione
  • Generazione di output ottimizzata per l’archiviazione per archivi di documenti ad alto volume

Conversione di formato

  • Renderizza interi documenti in HTML con Document.ToHtml() e in Markdown in stile GitHub con Document.ToMarkdown()
  • Genera output .docx a flusso libero o a layout fisso con Document.ToDocx() / Page.ToDocx()
  • Renderizza pagine individuali in SVG autonomo con Page.ToSvg() o in byte raster PNG/TIFF con Page.ToImage()
  • Esporta in EPUB con Document.ToEpub() per la distribuzione su e-reader

Dove è usato

  • Pipeline di pubblicazione che trasformano i PDF in HTML pronti per il web o Markdown
  • Generazione di miniature e anteprime per i sistemi di gestione documentale
  • Archiviazione dei PDF come documenti Word modificabili
  • Flussi di lavoro per la distribuzione di e-book

Annotazioni e Markup

  • Aggiungi markup del testo con Page.AddHighlight(), Page.AddUnderline(), Page.AddSquiggly() e Page.AddStrikeOut()
  • Allega note adesive e testo indipendente con Page.AddTextNote() e Page.AddFreeText()
  • Inserisci annotazioni a timbro di gomma con Page.AddStamp() e collegamenti cliccabili con Page.AddLink()
  • Appiattisci qualsiasi annotazione nel contenuto della pagina con il metodo Annotation.Flatten() esposto sui sottotipi tipizzati come MarkupAnnotation e StampAnnotation

Dove è usato

  • Strumenti di revisione dei documenti e redlining
  • Flussi di lavoro collaborativi per markup e commenti
  • Posizionamento del timbro di approvazione nei flussi di firma
  • Pubblicazione in sola lettura del markup interattivo precedente

AcroForms

  • Aggiungi campi di testo, casella di controllo, pulsante radio, casella combinata, casella di elenco e pulsante di invio con la classe Form (AddTextField(), AddCheckbox(), AddRadioGroup(), AddComboBox(), AddListBox(), AddPushButton())
  • Stila e aggiorna le apparenze dei campi con SetStyle() e GenerateAppearance() sulle classi di campo tipizzate come TextField, ChoiceField e ButtonField
  • Configura il comportamento dei campi con SetActions() su qualsiasi Field
  • Appiattisci un modulo completato in contenuto di pagina statico con Document.FlattenForm()

Dove è usato

  • Moduli governativi, fiscali e di iscrizione compilabili
  • Pre-compilazione programmatica dei moduli da record di database
  • Appiattimento dei moduli inviati prima dell’archiviazione a lungo termine
  • Sondaggi interattivi e documenti di accettazione

Sicurezza, Firma e Redazione

  • Proteggi con password e cripta l’output con AES-128, AES-256 o RC4 tramite l’opzione encrypt di Document.WriteTo(), con Permissions granulari
  • Firma digitalmente i documenti con Document.Sign() e verifica le firme con Document.VerifySignatures()
  • Aggiungi timestamp attendibili con Document.AddDocumentTimestamp()
  • Censura permanentemente le regioni sensibili o il testo corrispondente con Document.Redact(), Document.RedactText() e Page.ApplyRedactions()

Dove è usato

  • Distribuire rapporti confidenziali con password per destinatario
  • Contratti firmati digitalmente e con marcatura temporale
  • Redazione conforme di PII prima del rilascio pubblico
  • Tracce di audit a prova di manomissione per settori regolamentati

Converti un PDF in HTML, Markdown, e DOCX

Apri un PDF e renderizzalo in diversi formati di destinazione in un solo passaggio.

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);

Modifica pagine e metadati, quindi salva

Carica un PDF, modifica le sue pagine e i metadati, e scrivilo nuovamente con compressione.

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

Crea un nuovo PDF da zero

Crea un documento vuoto, aggiungi del testo posizionato e aggiungi un’altra pagina.

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');

Proteggi con password e crittografa un PDF

Cifra un PDF esistente con una coppia di password utente/proprietario e AES-256, limitando la copia e la modifica.

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,
  },
});

Domande Frequenti

Qual è il modello di licenza per Aspose.PDF FOSS for TypeScript?

Aspose.PDF FOSS for TypeScript è rilasciato sotto la licenza MIT, consentendo l’uso gratuito nei prodotti commerciali senza costi di runtime. Il codice sorgente è pubblicamente disponibile su GitHub.

Come installo Aspose.PDF FOSS for TypeScript?

Il pacchetto è destinato a Node.js 22 e versioni successive e non ha altre dipendenze di runtime. Vedi la sezione di installazione sopra per il comando di installazione corrente.

Quali formati di file supporta Aspose.PDF FOSS for TypeScript?

La libreria legge e scrive PDF, Markdown, SVG e TIFF, e può generare output DOCX, HTML, PNG ed EPUB.

Come creo un nuovo documento PDF?

Usa Document.New(PageFormat.A4) per produrre un documento vuoto, quindi aggiungi pagine e salva con Document.WriteTo().

È necessaria una chiave di licenza per utilizzare Aspose.PDF FOSS for TypeScript?

Non è necessaria alcuna chiave di licenza o passaggio di attivazione. La libreria funziona completamente senza licenza a costo zero sotto la licenza MIT.

  

Risorse di Supporto e Apprendimento

 Italiano