Как работать с объектной моделью COS в Java?

Как работать с объектной моделью COS в Java?

Доступ к каталогу документов

Каталог PDF является корнем дерева объекта документа и представлен как файл-файл. COSDictionary.Доступ через: Document.getCatalog() для проверки или изменения на уровне документов; свойства:

try (Document doc = new Document("input.pdf")) {
    COSDictionary catalog = doc.getCatalog();
    // Inspect catalog entries
}

Работа с COSDictionary

COSDictionary является базовым контейнером ключевых значений в модели PDF COS. Используйте COSName.of() для создания ключей имени и хранения значений любого типа COS:

COSDictionary dict = new COSDictionary();
dict.set(COSName.of("Title"), new COSString("My Document"));
COSString title = (COSString) dict.get(COSName.of("Title"));
System.out.println(title.getString());

Работа с COSArray

COSArray является типом упорядоченной последовательности в модели COS. Элементы нулевой индексации и может содержать любую смесь типов объектов COS. Восстановление значений и отбросить в соответствующие Тип COS:

COSArray array = new COSArray();
array.add(COSInteger.valueOf(100));
array.add(COSInteger.valueOf(200));
array.add(COSInteger.valueOf(300));
System.out.println("Array length: " + array.size());
int first = ((COSInteger) array.get(0)).intValue(); // 100

Доступ к словарю трейлеров

Словарь прицепов PDF содержит местоположение таблицы с перекрестными ссылками и ссылок. в каталог документов (/Root) и справочник с информацией о документах (/Info):

try (Document doc = new Document("input.pdf")) {
    COSDictionary trailer = doc.getTrailer();
    // Trailer contains /Root, /Info, /Encrypt entries
}

Дерево с названиями

Слой COS раскрывает структуру дерева имен PDF, используемую для деревьев чисел, таких как: родительское дерево для элементов конструкции. COSDictionary и в том числе: COSArray используются: пересечь Nums Это самый низкий уровень API для работы с логической структурой тегченного PDF-документа.

See Also

 Русский