en breve:
Para saber si ya está comprimido:
strings your.pdf | grep /Filter
Para ( des ) comprimir un PDF, use QPDF
qpdf --stream-data=compress your.pdf compressed.pdf
qpdf --stream-data=uncompress compressed.pdf uncompressed.pdf
explicación:
La palabra clave "Filtro" dentro de un archivo pdf es un indicador del método de compresión utilizado. Algunos de ellos son:
CCITT G3 / G4 - utilizado para imágenes monocromas
JPEG - un algoritmo con pérdida que se utiliza para imágenes
JPEG2000 - una alternativa más moderna a JPEG, que también se utiliza para comprimir imágenes
Flate - utilizado para comprimir texto así como imágenes
JBIG2 - una alternativa a Compresión CCITT para imágenes monocromas
LZW: se usa para comprimir texto e imágenes, pero se reemplaza por Flate
RLE: se usa para imágenes monocromáticas
ZIP: se usa para imágenes en escala de grises o en color
(copiado de aquí ).
Sin embargo, dada la compleja estructura de archivos PDF, la mayoría de las veces alguna parte (o "flujo") del PDF ya se comprimirá de alguna manera (y se mostrará cuando grepping / Filter) mientras que otra parte no lo estará, así que no hay respuesta SÍ / NO a la pregunta de si el PDF está comprimido.
Una forma de superar esto sería agregar la -c
opción a grep, que devuelve el número de ocurrencias, para que pueda ver relativamente qué tan bien está comprimido. por ejemplo, si devuelve menos de 10, es bastante no comprimido.strings
"large
.pdf" | grep -c /Filter
Otra propiedad relacionada con el tamaño de los archivos PDF es si se han optimizado para un acceso rápido, con archivos PDF "optimizados" de mayor tamaño, para citar de Wikipedia :
Hay dos diseños para los archivos PDF: no lineal (no "optimizado") y lineal ("optimizado"). Los archivos PDF no lineales consumen menos espacio en disco que sus contrapartes lineales, aunque su acceso es más lento porque partes de los datos requeridos para ensamblar páginas del documento están dispersos por todo el archivo PDF. Los archivos PDF lineales (también llamados archivos PDF "optimizados" o "optimizados para la web") se construyen de manera que se puedan leer en un complemento del navegador web sin esperar a que se descargue todo el archivo, ya que se escriben en el disco en un moda lineal (como en el orden de las páginas). Los archivos PDF pueden optimizarse con el software Adobe Acrobat o QPDF.
Puede verificar si el PDF está optimizado usando pdfinfo your.pdf
.
file
. Debe mostrar si el archivo está comprimido o no.