Com treballar amb operadors de flux de contingut en Java
Aquesta guia mostra com analitzar i construir flux de contingut de pàgines en Aspose.PDF FOSS Aprendreu a llegir bits de pàgines brut, analitzar-los amb ContentStreamParser, i ús ContentStreamBuilder per crear nou contingut.
Accedir al flux de contingut
Each Page en un Document té el seu contingut gràfic en un flux de continguts. El flux conté una seqüència d’operadors PDF que defineixen el posicionament de text, comandaments de dibuix i Llegir els bytes de flux d’un contingut en bruto:
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");
}Parsejar amb ContentStreamParser
ContentStreamParser tokeniza i analisa un flux de contingut en objectes d’operadors, permetent inspeccionar cada ordre de dibuix en el flux:
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
}Construir amb ContentStreamBuilder
ContentStreamBuilder crea nous flux de contingut per a la incorporació en un Page. Utilització: ContentStreamBuilder Quan es construeix el contingut de la pàgina programàticament més aviat Després de construir el flux, assignar-lo a la nova pàgina i guardar el document.
Referència de l’operador
Els operadors de flux de contingut PDF es defineixen en la ISO 32000-1:2008, taula A.1. Entre els operators comuns hi ha:
- Operadors de text:
BT,ET,Tf,Tj - Operadors d’estat gràfic:
q,Q,cm - Operadors de ruta:
m,l,h,f,S