Linealización: LuraPDF utiliza pdf-lib para escribir un nuevo flujo de bytes PDF con los objetos de la primera página al principio del archivo, seguido de un diccionario de linealización que proporciona a los lectores de descarga progresiva un mapa del resto del contenido. Esto no cambia el contenido del PDF, sino el orden en que se organizan los bytes en el disco, lo que permite la renderización parcial antes de que se complete la descarga completa. Deduplicación: El motor calcula un hash de contenido de cada XObject de imagen incrustada. Los objetos con hashes coincidentes se consolidan: se conserva la primera instancia y cada referencia posterior en el flujo de contenido de la página se reescribe para que apunte al mismo objeto compartido. El ahorro es proporcional a la cantidad de veces que una imagen determinada se incrustó por separado.
Subconjunto de fuentes: Para cada fuente incrustada, LuraPDF analiza qué puntos de código Unicode se referencian realmente en los flujos de texto del documento. Luego reconstruye la tabla de glifos de la fuente para que contenga solo esos puntos de código, descartando el resto del conjunto de caracteres. Para las fuentes CJK (chino, japonés, coreano) que incrustan miles de glifos para documentos que usan solo unos pocos cientos, la reducción de tamaño es drástica. Eliminación de objetos no utilizados: Después de la deduplicación y el subconjunto, el motor recorre la tabla de referencias cruzadas del PDF y marca cada objeto accesible desde el catálogo del documento. Los objetos inaccesibles (páginas eliminadas, campos de formulario eliminados, instantáneas de revisiones antiguas) se excluyen de la referencia cruzada del nuevo archivo, eliminándolos efectivamente del resultado.