Як працювати з операторами потоку контенту в Java

Як працювати з операторами потоку контенту в Java

Цей керівництво показує, як аналізувати та створювати потоки змісту сторінки в Aspose.PDF FOSS Ви навчитеся читати нерозроблені байти сторінки, аналізувати їх з допомогою ContentStreamParser, і використання ContentStreamBuilder для створення нового контенту.

Доступ до потоку контенту

Each Page в а Document зберігає свій графічний зміст у потоці контенту. Поток містить послідовність операторів PDF, які визначають позиціонування тексту, команди для малюнку та Відвідувачі ресурсу. Читати байти потоку сирого контенту з сторінки:

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

Розглядати з ContentStreamParser

ContentStreamParser токенуває та аналізує потік контенту в об’єктах операторів;, що дозволяє перевірити кожну команду на черговий потік:

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

See Also

 Українська