2012-05-11 11 views
12

Quindi ci sono alcuni thread qui sulla compressione PDF che dicono che c'è un po ', ma non molto, guadagno nella compressione di PDF come PDF sono già compressi.Tutti i file PDF sono compressi?

La mia domanda è: è vero per tutti i PDF inclusa la versione precedente del formato?

Inoltre sono sicuro che è possibile che qualcuno (un idiota forse) inserisca bitmap nel PDF piuttosto che in JPEG ecc. La nostra azienda ha molti PDF nei suoi DB (alcuni formati più vecchi forse). Stiamo considerando utilizzando gzip per comprimere durante la trasmissione, ma non sappiamo se vale la fatica

risposta

11

PDF in generale compressione interna uso per gli oggetti in essi contenuti. Ma questa compressione non è affatto obbligatoria in base alle specifiche del formato del file. Tutti (o alcuni) oggetti potrebbero apparire completamente non compressi e farebbero comunque un PDF valido.

Ci sono strumenti a riga di comando là fuori che sono in grado di decomprimere la maggior parte (se non tutti) dei flussi oggetti interni (anche delle versioni più moderne di file PDF) - e la nuova versione non compressa del file renderanno esattamente lo stesso su schermo o su carta (se stampato).

Quindi, per rispondere alla tua domanda: No, non puoi presumere che una compressione gzip stia aggiungendo solo problemi e nessun beneficio. Devi testarlo con un campione rappresentativo dei tuoi file. Basta gziparli e prendere nota del tempo impiegato e dello spazio salvato.

Dipende anche dal tipo di software di produrre PDF che è stato utilizzato ...

+0

Grazie Pipitas. Buona risposta –

2

Invece di applicare la compressione gzip, si otterrebbe molto meglio guadagno utilizzando utility PDF per applicare la compressione al contenuto all'interno del formato oltre a rimuovere cose come font incorporati non necessari. Tali utility possono ridimensionare le immagini e applicare la corretta compressione dell'immagine, che sarebbe molto più efficace di gzip. JBIG2 può essere applicato a immagini bilevel ed è straordinariamente efficace e JPEG può essere applicato a immagini naturali con il livello di qualità selezionato in base alle proprie esigenze. In Acrobat Pro, puoi utilizzare Avanzate -> Ottimizzatore PDF per vedere dove viene utilizzato lo spazio e attaccare in modo selettivo i consumatori. C'è anche un documento generico -> Riduci dimensioni file per applicare automaticamente queste riduzioni.

Aggiornamento:

risposta di Ika ha un collegamento a un programma di utilità di ottimizzazione PDF che può essere utilizzata da Java. Puoi guardare il loro sample Java code there. Questo codice elenca esattamente le cose che ho menzionato:

  • Rimuovere i caratteri duplicati, le immagini, i profili ICC e qualsiasi altro flusso di dati.
  • In alternativa, è possibile convertire file PDF di alta qualità o pronti per la stampa in PDF piccoli, efficienti e pronti per il Web.
  • Facoltativamente scansioni di immagini di grandi dimensioni a una determinata risoluzione.
  • Opzionalmente comprimere o ricomprimere immagini PDF utilizzando i formati di compressione JBIG2 e JPEG2000.
  • Comprime i flussi non compressi e rimuove gli oggetti PDF non utilizzati.
+0

Non ho familiarità con le utilità PDF. Esiste una API JAVA per questo come qualsiasi soluzione che usiamo dovrebbe avere una API in modo che possiamo automatizzare il processo sui nostri server? Sono a conoscenza di Apache PDFbox ma non sono sicuro di quanto sia buono per la compressione di un PDF già costruito –

Problemi correlati