¿Qué configuraciones usar al hacer archivos 7zip para obtener la máxima compresión al comprimir archivos PDF?

15

¿Qué configuraciones usar al hacer archivos 7zip para obtener la máxima compresión? Estoy comprimiendo documentos PDF que contienen imágenes escaneadas. Estoy pensando en usar LZMA2, pero no sé qué configurar en tamaño de diccionario, tamaño de palabra, etc. Además, ¿serían mejores opciones LZMA o PPMd?

Necesito transferir algunos archivos (~ 200MiB) a través de la red y las velocidades de carga aquí son muy lentas, por lo que me gustaría comprimir los datos tanto como sea posible. El tiempo de CPU consumido no es muy importante.

EDITAR

Esto es lo que obtuve después de probar varios métodos de compresión:

El tamaño sin comprimir fue: 25,462,686B

Mi procesador es Intel Core 2 Due T8100 y tengo 4GiB de ram.

La mejor compresión fue con PeaZip usando el algoritmo PAQ8O. El tamaño del archivo resultante fue de 19,994,325B. Las configuraciones utilizadas fueron el nivel de compresión: máximo. Desafortunadamente, la velocidad de compresión fue de alrededor de 5 KB / s, por lo que tomó más de una hora comprimir los datos.

El siguiente fue el compresor experimental PAQ9O. Al usarlo, obtuve 20,132,660B en aproximadamente 3 minutos de compresión. Desafortunadamente, el programa es solo de línea de comando, y no muchos otros programas usan ese algoritmo de compresión. También usa alrededor de 1.5GiB de RAM con la configuración que usé (a -9 -c)

Después de eso fue 7-Zip 9.15 beta (2010-06-20) usando LZMA2. Al usarlo, obtuve 20,518,802B en aproximadamente 3 minutos. Las configuraciones utilizadas fueron tamaño de palabra 273, tamaño de diccionario 64 MB y utilicé 2 hilos para la compresión.

Ahora volviendo a mi pregunta original: en mi caso, el tamaño de bloque sólido no produjo ningún resultado notable. El aumento del tamaño de la palabra produjo algunos resultados. La diferencia entre el tamaño de palabra más alto y el más pequeño fue 115,260B. Creo que estos ahorros justifican los esfuerzos necesarios para hacer dos clics necesarios y cambiar el tamaño de las palabras.

Intenté usar otros algoritmos de compresión compatibles con 7zip y PeaZip y producen archivos en tamaños de 19.8MiB a 21.5MiB.

Al final, mi conclusión es que al comprimir documentos PDF que contienen principalmente imágenes, el esfuerzo necesario para usar algoritmos de compresión exóticos no está justificado. La compresión usando LZMA2 en 7zip produjo resultados bastante aceptables en la menor cantidad de tiempo.

AndrejaKo
fuente
¿Qué tiene de diferente usar PeaZip? Es solo un contenedor GUI alrededor de 7zip y muchas otras herramientas
Cole Johnson
@Cole "Cole9" Johnson Bueno, la diferencia es que en mi caso usé algunas "otras" herramientas de PeaZip que no tenían una GUI en ese momento. Si recuerdo correctamente, entonces solo PeaZip ofreció el algoritmo PAQ8O con una GUI.
AndrejaKo

Respuestas:

7

El contenido de los archivos PDF (texto e imágenes) probablemente ya esté comprimido, por lo que no habrá mucho que ganar intentando comprimirlos nuevamente.

afrazier
fuente
3
Bueno no. Hice un poco de prueba y tomé 24MiB de archivos PDF y los comprimí usando la configuración predeterminada. El resultado fue un archivo de 19 MiB. En mi caso, esos 5 MiB son importantes en mi caso.
AndrejaKo
1
Parece que tienes razón. No pude producir resultados significativamente mejores que los valores predeterminados de 7zip sin importar lo que hice. Todavía estoy convencido de que algo de compresión es mejor que nada.
AndrejaKo
3
Si pudieras ahorrar tanto espacio, entonces probablemente hay trabajo que podría hacerse con los propios PDF para ahorrar casi todo ese espacio sin 7-Zip. Un viaje a través del Optimizador de PDF de Acrobat puede hacer maravillas.
Afrazier
Vea la respuesta del usuario: la compresión utilizada en PDF (zlib) se puede revertir para comprimirlos aún más (y aplicar nuevamente en la reconstrucción). Esto a menudo resulta en la reducción del tamaño de ~ 50%
schnaader
@schnaader: Eso es realmente interesante. He visto y utilizado herramientas como el Optimizador de PDF de Acrobat y MuPDF para modificar los archivos PDF mientras los mantiene visibles, pero poder transformarlos sin pérdidas de esa manera también es muy valioso y se puede utilizar con gran ventaja.
Afrazier
8

Pruebe precomp : primero descomprime los datos ya comprimidos dentro de sus archivos PDF. Entonces 7z puede hacer su magia en datos sin comprimir.

También pruebe nanozip, que he verificado que es muy efectivo, pero muy eficiente (400kb / s en relaciones de compresión de algoritmos PAQ).

usr
fuente
2

7za a -t7z -mx-9 -mfb = 258 -mpass = 15 nombre de archivo.7z subdir

Ajuste la primera palabra según sea necesario para el nombre del ejecutable de la línea de comandos, y ajuste las partes después de "-mpass = 15" para personalizar su nombre de archivo y lo que debe incluir.

Esta respuesta no es específica para documentos PDF.
Esto usa LZMA, no PPM. Me he mantenido alejado de PPM porque hay demasiadas variaciones que no son compatibles con otras variaciones. LZMA parece ser más estable, con compatibilidad más ampliamente compatible. Así que me he mantenido alejado de PPM precisamente porque mi opinión era, como usted ha dicho, "el esfuerzo necesario para usar algoritmos de compresión exóticos no está justificado".

TOOGAM
fuente
2
LZMA2 es significativamente mejor que LZMA pero es para uso (efectivo) solo en sistemas de 64 bits.
OMY
-3

La compresión lzma es la mejor porque puede crear un archivo sfx o un paquete msi con una alta relación de compresión. en su caso, no está comprimiendo un archivo grande, por lo que la diferencia es bastante pequeña, especialmente si el archivo se ha comprimido como: mp3 o png

prueba win arc es gratis y da una relación de compresión gret

nader
fuente