Используйте XSL:FO для добавления вложений в PDF

После разрешения встроенных изображений с помощью SO мне нужно разобраться встроенные вложения. PDF может содержать вложения, и я обнаружил: fo:declarations - pdf:embedded- file, но снова указывает на внешний файл. Как я могу прикрепить файл, являющийся частью сообщения MIME (скорее всего, BASe64)?


person stwissel    schedule 02.05.2012    source источник


Ответы (1)


В последних сборках FOP вы можете использовать тот же синтаксис для pdf:embedded-file, что и для fo:external-graphic, и напрямую добавлять данные base64:

<fo:declarations>
  <pdf:embedded-file filename="myfile.pdf" src="data:application/pdf;base64,<DATA>"/>
</fo:declarations>
...
<fo:basic-link external-destination="url(embedded-file:myfile.pdf)">Embedded PDF</fo:basic-link>
person Martin    schedule 02.05.2012
comment
прохладно. Означает ли «последняя сборка», что я должен скомпилировать из исходного кода или это CA. Загрузка двоичного файла недельной давности ОК? - person stwissel; 03.05.2012
comment
Я не знаю точно, когда эта функция была добавлена. Это не реализовано в релизе 1.0, но присутствует в багажнике уже несколько месяцев. Итак, недавняя ночная сборка должна быть в порядке. - person Martin; 03.05.2012
comment
Попытка передать данные base64 как часть xml и, похоже, не работает, я объявил переменную и указал ее на тег xml с данными и, похоже, никак не используется, есть идеи? - person KgaboL; 03.05.2018