Come lavorare con gli allegati PDF in TypeScript
Questa guida mostra come lavorare con gli allegati di file nei documenti PDF con Aspose.PDF FOSS per TypeScript. Document.AddAttachment() incorpora un file a livello di documento; Page.AddFileAttachment() inserisce un’annotazione cliccabile in stile graffetta su una pagina che apre un file incorporato. Richiede Node.js 22 o successivo.
Guida passo-passo
Passo 1: Installa il pacchetto
git clone https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-TypeScript.git
cd Aspose.PDF-FOSS-for-TypeScript
npm install
npm run buildVerifica l’installazione importando la classe Document in un nuovo file TypeScript — questa riga dovrebbe risolversi senza errori una volta installato il pacchetto:
import { Document } from '@asposefoss/pdf';Passo 2: Importa le classi richieste
Importa Document per aprire il file e raggiungere entrambi i punti di ingresso degli allegati utilizzati di seguito:
import { Document } from '@asposefoss/pdf';Passo 3: Apri il documento di destinazione
Entrambi i metodi di allegato vengono chiamati su un Document aperto — gli allegati a livello Page richiedono inoltre il Page di destinazione:
const doc = Document.OpenFile('input.pdf');
const page = doc.Pages[0];Passo 4: Inserisci un allegato a livello documento
Document.AddAttachment(name, bytes, opts) -> Attachment inserisce un file nella collezione di file incorporati del documento, indicizzato da name. Document.GetAttachments() -> Attachment[] elenca tutto ciò che è attualmente incorporato, e Document.RemoveAttachment(name) -> boolean rimuove uno per nome.
Passo 5: Aggiungi un’annotazione di allegato file a livello pagina
Page.AddFileAttachment(opts) -> FileAttachmentAnnotation posiziona un’icona cliccabile sulla pagina — simile alle annotazioni tipo sticky-note e testo libero trattate nella Annotazioni guida — che un visualizzatore apre per salvare o visualizzare in anteprima il file incorporato. Diversamente da Document.AddAttachment(), è ancorato a una posizione specifica della pagina piuttosto che essere elencato solo nella collezione di file incorporati del documento.
Problemi comuni e soluzioni
Un allegato aggiunto con Document.AddAttachment() non ha alcuna icona visibile su alcuna pagina. Questo è previsto — un allegato a livello di documento vive nella collezione di file incorporati, non su una pagina. Usa Page.AddFileAttachment() in aggiunta se è necessaria un’icona cliccabile su una pagina specifica.
Document.RemoveAttachment() returns false. Restituisce false quando non è registrato alcun allegato sotto il nome fornito name — elenca il set corrente con Document.GetAttachments() prima per confermare il nome esatto in uso.
Due allegati sono stati incorporati sotto lo stesso name. name in Document.AddAttachment() è la chiave utilizzata per recuperare l’allegato con RemoveAttachment() — riutilizzare lo stesso nome per una seconda chiamata può oscurare o confliggere con il primo, a seconda di come il visualizzatore risolve i duplicati. Usa un nome distinto per ogni file incorporato.
Domande frequenti
Qual è la differenza tra un allegato a livello di documento e un allegato a livello di pagina?
Un allegato a livello di documento (Document.AddAttachment()) vive nella collezione embedded-files del PDF e non è legato a nessuna pagina. Un allegato a livello di pagina (Page.AddFileAttachment()) è un’annotazione ancorata a una posizione specifica della pagina, simile a una nota adesiva.
Come posso vedere cosa è attualmente incorporato in un documento?
Chiama Document.GetAttachments(), che restituisce tutti gli Attachment attualmente incorporati.
È possibile rimuovere un allegato dopo che è stato aggiunto?
Sì — Document.RemoveAttachment(name) rimuove un allegato a livello di documento in base al nome con cui è stato aggiunto e restituisce true se ne ha trovato e rimosso uno.