iText - трансформирайте html в pdf и добавете и свържете към прикачен файл

Успешно анализирах XML файл в XHTML файл и след това в PDF с помощта на iText.

Сега следващото постижение би било да прикачите и свържете вградените Base64 документи от XML файла в PDF документа. Прикачването на тези файлове (така че да се показват в „панела с прикачени файлове“ в PDF визуализатора) работи.

Сега проблемът ми е, че тези прикачени файлове (.doc, .ppt и т.н.) трябва да бъдат отворени чрез щракване върху текстова връзка или изображение (икона). Изображенията (и имената на документи, напр. „test.doc“) вече са в PDF, но как мога да свържа правилния файл с правилното изображение или текстова връзка? Може ли някои от вас да ми даде намек откъде да започна?


person Pali    schedule 22.06.2015    source източник
comment
Бихте ли предоставили пример за връзка?   -  person user    schedule 22.06.2015
comment
@ConstantineNovykov под връзка имам предвид нещо като хипервръзка или обикновена html href връзка. Не знам как изглеждат такива връзки в PDF? или нещо друго имаш предвид?   -  person Pali    schedule 22.06.2015
comment
Публикува отговор. Моля, погледнете по-долу.   -  person user    schedule 22.06.2015
comment
@ConstantineNovykov добре, това изглежда логично, но имаш ли и пример за мен? защото нямам представа как мога да направя тези карти с крайни точки и хипервръзки. Може ли всичко това да се направи с iText API?   -  person Pali    schedule 22.06.2015
comment
Редактирано. Моля, кажете, ако имате още въпроси.   -  person user    schedule 22.06.2015


Отговори (1)


Това, което можете да направите, е да създадете "картографиране" на тези файлове към имената, така че те да имат уникален идентификатор. След това просто създавате крайна точка, която ще върне необходимия файл с необходимия тип mime (проверете и Octet stream). В PDF файла просто добавяте хипервръзките, които ще отидат до вашата крайна точка и ще изтеглят необходимия документ по име.

РЕДАКТИРАНЕ: Всъщност можете да имате повече от една крайна точка: може да имате нужда от една за всеки тип mime, който използвате за повече удобство.

За да създадете връзка в PDF, използвайте Anchor от iText lib.

За да създадете крайна точка - наистина зависи от вас. Можете да използвате всеки начин за създаване на уеб приложение, което интерактивно да връща файл от мрежата.

person user    schedule 22.06.2015
comment
Това изглежда точно това, което търсех, но един въпрос: този пример създава pdf от нулата, но вече имам pdf (и xhtml файла), така че как мога да създам Anchor() на вече съществуващия текст test.doc, който трябва да отвори прикачения файл test.doc? - person Pali; 22.06.2015
comment
Можете да получите документа, да намерите мястото, като го анализирате и вмъкнете Anchors ръчно. т.е. не създавате нов параграф, намирате такъв, който вече имате. - person user; 22.06.2015
comment
така че как мога да намеря такъв? няма метод като getParagraph()? - person Pali; 22.06.2015
comment
stackoverflow.com/questions/19066141 / - person user; 23.06.2015