Linearisierung: LuraPDF verwendet pdf-lib, um einen neuen PDF-Bytestream zu erstellen. Die Objekte der ersten Seite befinden sich am Anfang der Datei, gefolgt von einem Linearisierungswörterbuch. Dieses stellt für progressive Download-Reader eine Zuordnung zum restlichen Inhalt bereit. Der Inhalt des PDFs selbst bleibt unverändert; lediglich die Reihenfolge der Bytes auf der Festplatte wird angepasst, wodurch eine partielle Darstellung vor Abschluss des vollständigen Downloads ermöglicht wird. Deduplizierung: Die Engine berechnet einen Inhalts-Hash für jedes eingebettete Bild-XObject. Objekte mit übereinstimmenden Hashes werden zusammengeführt: Die erste Instanz bleibt erhalten, und alle nachfolgenden Verweise im Seiteninhaltsstream werden so umgeschrieben, dass sie auf dasselbe gemeinsam genutzte Objekt verweisen. Die Einsparung ist proportional zur Häufigkeit der separaten Einbettung eines Bildes.
Schrift-Subsetting: LuraPDF analysiert für jede eingebettete Schriftart, welche Unicode-Codepunkte im Textstrom des Dokuments tatsächlich referenziert werden. Anschließend wird die Glyphentabelle der Schriftart so neu erstellt, dass sie nur diese Codepunkte enthält; der Rest des Zeichensatzes wird verworfen. Bei CJK-Schriftarten (Chinesisch, Japanisch, Koreanisch), die Tausende von Glyphen enthalten, obwohl Dokumente nur wenige Hundert verwenden, ist die Größenreduzierung enorm. Entfernen ungenutzter Objekte: Nach der Deduplizierung und dem Subsetting durchläuft die Engine die Querverweistabelle des PDFs und markiert jedes Objekt, das über den Dokumentenkatalog erreichbar ist. Nicht erreichbare Objekte – gelöschte Seiten, entfernte Formularfelder, alte Revisions-Snapshots – werden aus dem Querverweis der neuen Datei ausgeschlossen und somit effektiv aus der Ausgabe entfernt.