XSLT: отображать изображение на выходе PDF из ресурсов проекта затмения вместо внешних ресурсов

java xml pdf xslt

454 просмотра

1 ответ

148 Репутация автора

Я приближаюсь к Apache FOP и XSLT.

Я хотел сделать простую вещь: в выходных pdf, которые производят из моего java-проекта в eclipse, поместите на первой странице изображение и заголовок.

На данный момент я могу поставить только заголовок, но изображения на выходе pdf нет.

В моем XSL-файле я поместил этот «код» для получения изображения, только на первой странице.

  <fo:block text-align="center" space-after="4cm">
                          <fo:external-graphic content-height="50%" scaling="uniform" width="50%" content-width="scale-down-to-fit" src="url('file:c:///UPLOAD/logo.png')"/>
                        </fo:block> 

и работает. Так я нашел в Интернете прямой путь к внешним ресурсам. Но в этом смысле это связано с машиной.

Итак, как я могу получить изображение из пути «родственник» проекта, мне нужно, чтобы вывод PDF был связан с проектом, а не с файловой системой (так в файле JAR при развертывании приложения)

Выполняя поиск в Интернете, я нашел много вопросов о конфигурации FOP и так далее ..

Есть простой способ Если я хочу использовать изображение в моей директории проекта eclipse (поэтому, когда приложение развернуто, использовать внутренние ресурсы) в документе XSLT (например, работает с внешним файлом)?

Я пытаюсь так

<fo:external-graphic content-height="50%" scaling="uniform" width="50%" content-width="scale-down-to-fit" src='url("///mtproject/WebContent/resources/default/img/logo.jpg")'/>

но в логах есть эта ошибка:

FOUserAgent - изображение не найдено. URI: ///mtproject/WebContent/resources/default/img/logo.jpg. (Контекстная информация недоступна)

Как я могу использовать ссылку на ресурс проекта?

Спасибо всем заранее.

Автор: Domenico Источник Размещён: 19.07.2016 09:03

Ответы (1)


1 плюс

509 Репутация автора

Решение

Вы должны определить рабочий каталог через конфигурацию FOP .

Пожалуйста, посмотрите на baseэлемент.

Автор: jBravo Размещён: 01.08.2016 04:00
Вопросы из категории :
32x32