Hur man arbetar med Content Stream Operators i Java
Denna guide visar hur man parser och bygger sidor innehåll strömmar i Aspose.PDF FOSS för Java. du lär dig att läsa råsidebytter, dela dem med ContentStreamParser, och använda ContentStreamBuilder Att skapa nytt innehåll.
Tillgång till innehållsströmmen
Each Page I A Document håller sitt grafiska innehåll i en innehållsström. innehåller en uppsättning PDF-operatörer som definierar textpositionering, ritning kommandon och Läs den råinnehåll ström byter från en sida:
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");
}Parse med ContentStreamParser
ContentStreamParser tokeniserar och parser en innehållsström till operatörobjekt, gör det möjligt att inspektera varje ritningskommandot i strömmen:
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
}Bygg med ContentStreamBuilder
ContentStreamBuilder skapar nya innehållströmmar för att integrera i en Page. Användning ContentStreamBuilder När du bygger innehåll på sidan programmerar du mer ändra en befintlig ström. Efter att ha byggt strömen, tilldela den tillbaka till sidan och spara dokumentet.
Operatör Referens
PDF-innehållsströmoperatörer definieras i ISO 32000-1:2008, tabell A.1.:
- Textoperatörer :
BT,ET,Tf,Tj - Grafiska statliga operatörer:
q,Q,cm - Vägoperatörer :
m,l,h,f,S