محتوای جریان اپراتورها

این راهنمای نشان می دهد که چگونه برای دسترسی و دستکاری از اپراتورهای جریان محتوا PDF با استفاده از ContentStreamParser و ContentStreamBuilder در Aspose.PDF FOSS برای جاوا. شما یاد خواهید گرفت که بایت های محتوای صفحه خام را بخوانید و از پارسر برای بررسی نقاشی استفاده کنید. فرماندهی.

محتوای جریان

محتوای صفحه PDF به عنوان یک ردیف از اپراتورها در جریان محتوا رمزگذاری می شود. Page دسترسی به اپراتورهای محتوا از طریق getContents() املاک .

ContentStreamParser

ContentStreamParser بایت های جریان محتوای خام را به اشیاء اپراتور تقسیم می کند., امکان بازرسی برنامه نویسی دستورالعمل های نقاشی صفحه را فراهم می کند. page.getContents().toByteArray() به سازنده پارس:

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 ایجاد جریان های محتوا جدید برای ادغام در یک Page. استفاده از ContentStreamBuilder در هنگام ساختن محتوای صفحه به جای برنامه نویسی، پس از ساختن جریان، آن را به جریان فعلی بازگردانید. صفحه و اسناد را ذخیره کنید.

ارجاع اپراتور

اپراتورهای جریان محتوا PDF در ISO 32000-1:2008 تعریف شده اند، جدول A.1. در این مقاله به بررسی تکنولوژی های مختلف (BT, ET, Tf, Tj)، گرافیک اپراتورهای دولتی (q, Q, cmو در این مسیر از کارگران (m, l, h, f, S).

اپراتورهای جریان محتوا از مشخصات PDF پیروی می کنند (ISO 32000-1:2008, §8). استفاده از ContentStreamParser برای این که در جریان فعلی از اپراتورها استفاده شود.

دسترسی به محتوای صفحه خام

برای خواندن بایت های خام یک جریان محتوا صفحه، تماس بگیرید. page.getContents().toByteArray(). بایت ها می توانند بازرسی، رمزگذاری و یا انتقال به 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");
}

See Also

 فارسی