Hoe te werken met Content Stream Operators in Java

Hoe te werken met Content Stream Operators in Java

Deze gids laat zien hoe je pagina-contentstreams kunt parseren en bouwen in Aspose.PDF FOSS voor Java. Je leert hoe je ruwe paginabytes kunt lezen, ze kunt parseren met ContentStreamParser, en ContentStreamBuilder kunt gebruiken om nieuwe content te creëren.

Toegang tot de contentstream

Elke Page in een Document bewaart de grafische inhoud in een contentstream. De stream bevat een reeks PDF-operatoren die de tekstpositionering, tekenopdrachten en resource-referenties definiëren. Lees de ruwe bytes van de contentstream van een pagina:

try (Document doc = new Document("input.pdf")) {
    PageCollection pages = doc.getPages();
    Page page = pages.get(1);
    byte[] contentBytes = page.getContents().toByteArray();
    System.out.println("Content stream size: " + contentBytes.length + " bytes");
}

Parseren met ContentStreamParser

ContentStreamParser tokeniseert en parseert een contentstream tot operatorobjecten, waardoor het mogelijk is om elke tekenopdracht in de stream te inspecteren:

try (Document doc = new Document("input.pdf")) {
    PageCollection pages = doc.getPages();
    Page page = pages.get(1);
    byte[] contentBytes = page.getContents().toByteArray();
    ContentStreamParser parser = new ContentStreamParser(contentBytes);
    // Iterate over parsed operators
}

Bouwen met ContentStreamBuilder

ContentStreamBuilder maakt nieuwe content streams aan voor insluiting in een Page. Gebruik ContentStreamBuilder bij het programmatisch construeren van paginacontent in plaats van een bestaande stream te wijzigen. Nadat de stream is opgebouwd, wijs deze terug toe aan de pagina en sla het document op.

Operatorreferentie

PDF-contentstream-operatoren zijn gedefinieerd in ISO 32000-1:2008, Tabel A.1. Veelvoorkomende operatoren omvatten:

  • Tekstoperatoren: BT, ET, Tf, Tj
  • Grafische statusoperatoren: q, Q, cm
  • Padoperatoren: m, l, h, f, S

Zie ook

 Nederlands