2013-06-10 3 views
0

У меня есть файл Data.xml и файл pdf, заполненный информацией. Я пытаюсь вставить файл data.xml в поток метаданных XMP PDF, потому что эти данные должны быть скрыты.Вставить XML-файл в PDF с помощью iText

Я использовал iText для создания pdf и добавления обычных метаданных, таких как автор и т. Д. Но я не могу понять, как добавить xml в метаданные в потоке xmp. Есть ли функция в библиотеке iText или xmlworker, которая позволяет мне это делать? Я пробовал, но я не могу заплатить за это.

(У меня нет кода для публикации, потому что весь код, написанный для создания PDF-файла и т. Д., Отлично работает, просто не знаю, как продолжить делать то, что я описал ранее. Есть ли что-то в библиотеке iText, которая его предоставляет, или i следует использовать другие инструменты?)

+0

Может быть, вы можете преобразовать XML в строку и добавить его в качестве элемента XmpArray HTTP:.. // itextpdf .com/examples/iia.php? id = 217 – user1516873

+0

@ user1516873 Вы хотите преобразовать все содержимое xml в большую строку, поместить его в массив и извлечь из него при необходимости восстановление файла xml? Это хорошее решение ? – Igr

+0

Да, я действительно это имею в виду. Может быть, вы можете сохранить эту большую строку непосредственно в качестве одного из ваших пользовательских свойств, не обернув ее массивом. Я думаю, что это не лучшее или даже хорошее решение, но я не вижу других возможных способы сделать это с помощью iText. – user1516873

ответ

1

«в PDF/A-3, данные добавляется в виде вложения на уровне документа. это делает гораздо больше смысла, чем поместить его в поток XMP.

document- не будет видно на любой странице, но люди смогут выбрать его на панели вложений, точно так же, как они смогут увидеть содержимое XMP (легко добавить приложение на уровне документа с iText) Есть, конечно, много других способов для добавления данных в PDF, которые не видны. Например, Adobe Illustrator добавляет проприетарные артефакты в качестве записи/PieceInfo в корневом словаре PDF. Это также возможно с iText. Есть много решений, все лучше, чем злоупотребление поток XMP»

Закрепление на уровне документа решена проблема