Ho un file PDF di input (di solito, ma non sempre generato da pdfTeX), che voglio convertire in un PDF di output, che è visivamente equivalente (indipendentemente dalla risoluzione), ha gli stessi metadati (informazioni di testo Unicode, collegamenti ipertestuali, contorni, ecc.), ma la dimensione del file è la più piccola possibile.Come ottimizzare le dimensioni del file PDF?
Conosco i seguenti metodi:
java -cp Multivalent.jar tool.pdf.Compress input.pdf
(da http://multivalent.sourceforge.net/). Ricomprime tutti i flussi, rimuove gli oggetti non utilizzati, unifica gli oggetti equivalenti, comprime gli spazi bianchi, rimuove i valori predefiniti, comprime la tabella dei riferimenti incrociati.- Ricompressione di immagini appropriate con jbig2 e PNGOUT.
- Ricodifica caratteri Type1 come caratteri CFF.
- Immagini equivalenti unificanti.
- Unificare sottoinsiemi dello stesso tipo di carattere su un sottoinsieme più grande.
- Rimuovi forme compilabili.
- Durante la distillazione o la conversione in altro modo (ad esempio
gs -sDEVICE=pdfwrite
), assicurarsi che non degradi la qualità dell'immagine e non aumenti (!) Le dimensioni dell'immagine.
Conosco le seguenti tecniche, ma esse non si applicano nel mio caso, dal momento che ho già un PDF:
- Usa caratteri più piccoli e/o meno.
- Utilizzare immagini vettoriali invece immagini bitmap.
Avete altre idee su come ottimizzare il PDF?
L'attuale multivalente: http://downloads.sourceforge.net/project/multivalent/multivalent/Release20091027/Multivalent20091027.jar manca ora alla classe tool.pdf.Compress. Questo è descritto qui: http://sourceforge.net/p/multivalent/discussion/252478/thread/e7850c31/?limit=50#a96d. Sei a conoscenza di una buona attrezzatura sostitutiva? –
Più vecchie versioni multivalenti esistono in Arch Linux: https://aur.archlinux.org/packages/multivalent-pdf-tools/ –