Tartalomáram üzemeltetői

Tartalomáram üzemeltetői

Ez a kézikönyv bemutatja, hogyan lehet elérni és manipulálni PDF tartalom áramlás operátorok segítségével ContentStreamParser és a következők: ContentStreamBuilder Az Aspose.PDF FOSS Java-ban. Megtanulják, hogy olvassa el a nyers oldal tartalmát bytes és használja az elemzőt ellenőrizni rajz parancsokat.

Tartalomáramok

A PDF-oldalt a tartalomáramlat operátorok sorozataként kódolják. Page hozzáférést biztosít a tartalomüzemeltetőinek az interneten keresztül. getContents() tulajdon.

ContentStreamParser

ContentStreamParser a nyers tartalom áramlásának bájtjait operátorobjektumokra bontsa, A programmal a weblapok rajzolásának parancsát is át lehet adni. page.getContents().toByteArray() a parser konstruktorhoz:

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
}

ContentStreamBuilder

ContentStreamBuilder új tartalomáramokat hoz létre a beágyazáshoz egy Page. Használat ContentStreamBuilder programmatically, nem pedig a weboldal tartalmának megtervezése során. A folyamatok egybeesése a meglévő áramlás módosításával szemben. oldalas és mentse a dokumentumot.

Operátor hivatkozása

A PDF tartalomáramláló operátorok az ISO 32000-1:2008 táblázatban vannak meghatározva. Az operátorok közé tartoznak a szöveges operátorok (BT, ET, Tf, Tj), grafikus állapotos operátorok (q, Q, cm), és az útvonal üzemeltetői (m, l, h, f, S).

A tartalomáram üzemeltetői a PDF-specifikációt követik (ISO 32000-1:2008, §8). Használat ContentStreamParser az operátorok felett egy meglévő áramlásban.

Nyers oldal tartalom elérése

Ha egy oldal tartalomcsatornának nyers bájtjait szeretné elolvasni, hívja a page.getContents().toByteArray(). A bytesek akkor lehet ellenőrizni, dekódolni, vagy átadva a ContentStreamParser:

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");
}

Lásd még:

 Magyar