Как да работим с 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 документ.