Vai al contenuto
PDFLove

come funziona unire i pdf

Come funziona davvero unire due PDF

Entrambi i file hanno un oggetto numerato 1. Quella singola collisione è tutta la ragione per cui unire è più che concatenare, e spiega tutto ciò che sopravvive all'operazione e tutto ciò che non sopravvive.

01

Perché non puoi semplicemente incollare un file dopo l'altro

Un PDF è un insieme di oggetti numerati più un indice di dove ciascuno comincia. Entrambi i file numerano i propri oggetti a partire da 1. Entrambi hanno un catalogo, un albero delle pagine e un dizionario dei font chiamato F1. Concatena i byte e ottieni due indici in competizione che descrivono due oggetti 1 in competizione, e il lettore che lo apre vedrà quello che trova per ultimo — cioè solo il secondo documento.

Quindi unire deve riscrivere. Ogni oggetto del secondo file viene copiato nel primo con un numero nuovo, e ogni riferimento dentro quegli oggetti viene riscritto perché punti ai numeri nuovi. Una pagina che diceva «il mio contenuto è nell'oggetto 12» ora dice «il mio contenuto è nell'oggetto 847».

Poi i due alberi delle pagine vengono innestati in uno solo, si costruisce una nuova tabella dei riferimenti incrociati con gli scostamenti corretti per tutto, e si scrive un nuovo trailer che punta al catalogo sopravvissuto.

1. Analizzare entrambi
Leggere i grafi degli oggetti e gli alberi delle pagine. Non si renderizza nulla.
2. Rinumerare e copiare
Ogni oggetto del file B riceve un identificatore nuovo, e ogni riferimento a esso viene riscritto.
3. Innestare gli alberi delle pagine
Costruire un albero solo, nell'ordine che hai chiesto. Le pagine in sé non vengono toccate.
4. Ricostruire l'indice
Scostamenti nuovi per ogni oggetto, trailer nuovo, file nuovo.

02

Perché unire non costa mai qualità

Non si decodifica nulla. I flussi delle immagini vengono copiati byte per byte, ancora nella codifica in cui sono arrivati. I flussi di contenuto vengono copiati invariati. I font vengono copiati invariati.

È tutta qui la ragione per cui unire è senza perdita e veloce. Unire 500 pagine è un esercizio di contabilità su qualche centinaio di migliaia di riferimenti tra oggetti, e una macchina moderna lo fa in un secondo o due. Confrontalo con comprimere, che deve decodificare e ricodificare ogni immagine del file.

Significa anche che un file unito è esattamente buono e cattivo quanto i suoi ingressi. Unire una scansione sfocata con un'esportazione nitida dà un documento sfocato a metà. Niente si normalizza.

03

Cosa va sistemato lungo la strada

Rinumerare gli oggetti è meccanico. Tutto ciò che si riferiva a quegli oggetti per nome anziché per numero non lo è.

Segnalibri e sommario
L'albero dei segnalibri punta a oggetti pagina. Va ricostruito e ripuntato, altrimenti i segnalibri del secondo documento finiscono sulle pagine del primo — o spariscono.
Collegamenti interni
I rimandi incrociati e i salti del sommario sono destinazioni che puntano a oggetti pagina, e hanno bisogno dello stesso rimappaggio dei segnalibri.
Campi modulo
I campi sono indirizzati per nome. Unisci due copie dello stesso modulo e ti ritrovi con due campi chiamati `nome`, che la maggior parte dei lettori tratta come un campo solo compilando entrambi. Appiattire prima lo evita.
Risorse duplicate
Entrambi i file incorporano Helvetica come sottoinsieme sotto nomi interni diversi. Niente può dimostrare che i sottoinsiemi siano intercambiabili, quindi viaggiano entrambi — ed è per questo che un file unito a volte pesa più della somma delle sue parti.

04

La cifratura deve uscire per prima

In un PDF cifrato, i flussi e le stringhe sono cifrati singolarmente, con una chiave per oggetto derivata dalla chiave di cifratura del file combinata con il numero e la generazione di quell'oggetto. Il numero dell'oggetto fa parte della chiave.

Il che significa che rinumerare un oggetto cifrato lo invalida in silenzio. Per unire, lo strumento deve prima decifrare con la chiave del file, copiare gli oggetti in chiaro, rinumerarli e cifrare il risultato sotto una chiave nuova se l'uscita deve essere protetta. È per questo che uno strumento di unione chiede la password invece di aggirarla, e per questo l'uscita esce senza cifratura a meno che tu non la protegga di nuovo dopo.

05

Dividere è la stessa operazione al contrario

Dividere costruisce un file nuovo contenente solo le pagine che hai chiesto, più ogni oggetto che quelle pagine raggiungono: i loro flussi di contenuto, i loro font, le loro immagini, e nient'altro. È un attraversamento di grafo a partire da un insieme di radici.

È per questo che tagliare a metà un documento di 100 pagine raramente dà due file grandi la metà. Se un font o un logo è usato su pagine sparse per il documento, entrambe le metà hanno bisogno della propria copia. Le risorse condivise vengono duplicate, non divise.

Domande

Domande collegate

Unire i PDF riduce la qualità?

No. Non si decodifica né si ricodifica nulla — i flussi delle immagini e del contenuto vengono copiati byte per byte. Le pagine unite sono identiche bit per bit agli originali.

Perché i miei segnalibri sono spariti dopo l'unione?

Perché l'albero dei segnalibri punta a oggetti pagina che sono stati rinumerati, e ripuntarlo è un passaggio separato rispetto al copiare le pagine. Un'unione che salta quel passaggio o butta via il sommario o lo lascia puntato alle pagine sbagliate.

Posso unire un PDF protetto da password?

Solo fornendo la password. Gli oggetti cifrati sono chiavati in parte dal proprio numero, quindi non possono essere rinumerati mentre sono cifrati. Sbloccalo, unisci e riproteggi il risultato se deve restare chiuso.

Perché unire è molto più veloce di comprimere?

Perché unire è contabilità e comprimere è elaborazione di immagini. Un'unione riscrive numeri di oggetto e riferimenti; una passata di compressione decodifica, ricampiona e ricodifica ogni immagine di ogni pagina.