Pregunta

Tengo un archivo PDF de entrada (generalmente, pero no siempre generado por pdfTeX), que quiero convertir a un PDF de salida, que es visualmente equivalente (sin importar la resolución), tiene los mismos metadatos (información de texto Unicode , hipervínculos, contornos, etc.), pero el tamaño del archivo es lo más pequeño posible.

Sé sobre los siguientes métodos:

  • java -cp Multivalent.jar tool.pdf.Compress input.pdf (de http: //multivalent.sourceforge.net/ ). Esto vuelve a comprimir todas las secuencias, elimina objetos no utilizados, unifica objetos equivalentes, comprime espacios en blanco, elimina valores predeterminados, comprime la tabla de referencias cruzadas.
  • Recompresión de imágenes adecuadas con jbig2 y PNGOUT.
  • Volver a codificar las fuentes Type1 como fuentes CFF.
  • Unificar imágenes equivalentes.
  • Unificar subconjuntos de la misma fuente a un subconjunto más grande.
  • Eliminar formularios rellenables.
  • Al destilar o convertir de otro modo (por ejemplo, gs -sDEVICE = pdfwrite ), asegúrese de que no degrade la calidad de la imagen y no aumente (!) el tamaño de la imagen.

Sé de las siguientes técnicas, pero no se aplican en mi caso, ya que ya tengo un PDF:

  • Use fuentes más pequeñas y / o menos.
  • Utilice imágenes vectoriales en lugar de imágenes de mapa de bits.

¿Tiene alguna otra idea de cómo optimizar PDF?

¿Fue útil?

Solución

Optimizar archivos PDF

Evita los gráficos refritos

Para gráficos que se deben insertar como mapas de bits, prepárelos para obtener la máxima compresibilidad y las dimensiones mínimas. Utilice las imágenes de mejor calidad que pueda con la resolución de salida del PDF. Insertar archivos JPEG comprimidos en archivos PDF y Destilarlos puede recomprimirlos, lo que puede crear artefactos notables. Use imágenes y texto en blanco y negro en lugar de imágenes en color para permitir el uso del nuevo estándar JBIG2 que sobresale en la compresión monocromática. Asegúrese de desactivar las miniaturas cuando guarde archivos PDF para la Web. Usar gráficos vectoriales

Utilice gráficos basados ??en vectores siempre que sea posible para imágenes que normalmente se convertirían en GIF. Las imágenes vectoriales se escalan a la perfección, se ven maravillosas y sus fórmulas matemáticas usualmente ocupan menos espacio que los gráficos de mapa de bits que describen cada píxel (aunque en algunos casos los gráficos de mapa de bits son en realidad más pequeños que los gráficos vectoriales). También puede comprimir datos de imágenes vectoriales mediante la compresión ZIP, que está integrada en el formato PDF. Acrobat Reader versión 5 y 6 también son compatibles con el estándar SVG. Minimizar fuentes

El uso de fuentes, especialmente en archivos PDF más pequeños, puede tener un impacto significativo en el tamaño del archivo. Minimice la cantidad de fuentes que utiliza en sus documentos para minimizar su impacto en el tamaño del archivo. Cada fuente adicional totalmente integrada puede tomar fácilmente 40K en tamaño de archivo, por lo que la mayoría de los autores crean " subsetted " Fuentes que solo incluyen los glifos realmente utilizados. Aplanar las formas de grasa

Los formularios de Acrobat pueden ocupar mucho espacio en sus archivos PDF. Como novedad en Acrobat 8 ??Pro, puede aplanar campos de formulario en Avanzado - > Optimizador de PDF - > Cuadro de diálogo Descartar objetos. El aplanamiento de formularios hace que los campos de formulario sean inutilizables y los datos del formulario se combinan con la página. También puede usar PDF Enhancer de Apago para reducir los formularios en un 50% eliminando la información presente en el archivo pero que nunca se usó realmente. También puede combinar un PDF refritado con las páginas del formulario antiguo para crear un PDF híbrido en Acrobat (consulte la sección " PDF Refried " a continuación).

vea el artículo

Otros consejos

A partir de la versión 1.5 de la especificación de PDF, existen dos nuevos métodos de compresión, secuencias de objetos y secuencias de referencia cruzada.

Usted menciona que la herramienta de compresión Multivalent.jar comprime la tabla de referencia cruzada. Esto generalmente significa que la tabla de referencia cruzada se convierte en una secuencia y luego se comprime.

El formato de este flujo de referencia cruzada no es fijo. Puede cambiar el tamaño de bit de las tres " columnas " de datos. También es posible preprocesar los datos de flujo usando una función de predictor que mejorará el nivel de compresión de los datos. Si mira dentro del PDF con un editor de texto, puede encontrar la entrada / Predictor en el diccionario de flujo de referencia cruzada para verificar si la herramienta que está utilizando está aprovechando esta función.

El uso de un predictor en la compresión también puede ser útil para las imágenes.

El segundo tipo de compresión ofrecido es el uso de secuencias de objetos.

A menudo, en un PDF tienes muchos objetos similares. Ahora se pueden combinar en un solo objeto y luego comprimirse. La documentación de la herramienta Compresión multivalente menciona que se utilizan secuencias de objetos, pero no tiene muchos detalles sobre la elección real de qué objetos agrupar. La compresión será mejor si agrupa objetos similares en una secuencia de objetos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top