pdf - gsview - ¿Algún consejo para acelerar GhostScript?
ghostscript mac (4)
Tengo un PDF de 100 páginas que tiene aproximadamente 50 MB. Estoy ejecutando el script a continuación y tarda unos 23 segundos por página. El PDF es un escaneo de un documento en papel.
gswin32.exe -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.3
-dPDFSETTINGS=/screen -sOutputFile=out4.pdf 09.pdf
¿Hay algo que pueda hacer para acelerar esto? He determinado que la -dPDFSettings=/screen
es lo que lo está haciendo tan lento, pero no estoy obteniendo una buena compresión sin eso ...
ACTUALIZACIÓN: OK Intenté actualizarlo a lo que tengo a continuación. ¿Estoy usando correctamente la porción -c 30000000 setvmthreshold
?
gswin32.exe -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.3
-dPDFSETTINGS=/screen -dNumRenderingThreads=2 -sOutputFile=out7.pdf
-c 30000000 setvmthreshold -f 09.pdf
Estaba procesando un PDF de ~300
páginas en un Core i7
y descubrí que agregar las siguientes opciones proporcionaba una aceleración significativa:
%-> comments to the right
-dNumRenderingThreads=8 % increasing up to 64 didn''t make much difference
-dBandHeight=100 % didn''t matter much
-dBandBufferSpace=500000000 % (500MB)
-sBandListStorage=memory % may or may not need to be set when gs is compiled
-dBufferSpace=1000000000 % (1GB)
El -c 1000000000 setnvmthreshold -f
cosa no hizo mucha diferencia para mí, FWIW.
No dice qué CPU y con qué cantidad de RAM está equipada su computadora.
Tu situación es esta:
- Un documento escaneado como PDF, con un tamaño de aproximadamente 500 kB por página en avarage. Eso significa que cada página básicamente es una imagen, usando la resolución de escaneo (al menos 200 ppp, tal vez incluso 600 ppp).
- Lo vuelves a destilar con Ghostscript, usando
-dPDFSETTINGS=/screen
. Esta configuración hará bastantes cosas para reducir el tamaño del archivo. Entre los más importantes están:- Vuelva a muestrear todas las imágenes (color o escala de grises) a 72dpi
- Convierta todos los colores a sRGB
Ambas operaciones pueden ser bastante "costosas" en términos de uso de CPU y / o RAM.
Por cierto, su configuración de -dCompatibilityLevel=1.3
no es obligatoria; ya está implícitamente configurado por -dPDFSETTINGS=/screen
ya.
Prueba esto:
gswin32.exe ^
-o output.pdf ^
-sDEVICE=pdfwrite ^
-dPDFSETTINGS=/screen ^
-dNumRenderingThreads=2 ^
-dMaxPatternBitmap=1000000 ^
-c "60000000 setvmthreshold" ^
-f input.pdf
Además, si está en un sistema de 64 bits, intente instalar la versión más reciente de Ghostscript de 32 bits (9.00). Se comporta mejor que la versión de 64 bits.
Déjame decirte que reducir la resolución de una imagen escaneada de 600 ppp a 72 ppp por lo general no toma 23 segundos para mí, pero menos de 1.
Puedo estar completamente fuera de lugar aquí, pero ¿has probado el formato de archivo Djvu? Funciona como un amuleto para documentos escaneados en general (incluso si hay muchas imágenes), y proporciona archivos comprimidos mucho mejores: Obtengo un factor de dos ganancias sin pérdidas en tamaño en general en artículos científicos de B & W.
Si está en un sistema multinúcleo, hágalo usar múltiples núcleos de CPU con:
-dNumRenderingThreads=<number of cpus>
Deje que use hasta 30 mb de RAM:
-c "30000000 setvmthreshold"
Intenta deshabilitar el recolector de basura:
-dNOGC
Para obtener más detalles, consulte la sección Improving Performance
de los documentos de Ghoscript.