Нет изображений в сгенерированном PDF-документе (из Asciidoc в PDF)

Я создаю PDF-документ из asciidoc с помощью asciidoctor-web-pdf. Пока большинство задач работает нормально.

asciidoctor-web-pdf -a stylesheet="asciidoctor-pdf/css/asciidoctor.css,asciidoctor-pdf/css/document.css,assets/pdf-export/custom.css" \
                    -a stem \
                    --require asciidoctor-kroki \
                    docs/modules/ROOT/pdf.adoc

Но мой документ не содержит изображений или сгенерированных диаграмм (plantuml).

Структура папок соответствует структуре Антора, потому что я в основном использую Антору. PDF — это просто необходимый побочный продукт.

Моя структура папок выглядит так (как сказал antora-layout):

project-folder
+ docs
| + modules
| | + ROOT
| | | + assets
| | | | + images
| | | | | - logo.png
| | | + pages
| | | | - index.adoc
| | | | - 01-intro.adoc
| | | | - some-other.adoc
| | | - nav.adoc
| | | - pdf.adoc

pdf.adoc — это просто список включений, чтобы убедиться, что каждый необходимый файл adoc является частью PDF.

Согласно структуре папок правильный путь к моему logo.png — docs/modules/ROOT/assets/images/logo.png (или абсолютный /home/sebastian/work/workspace/workspace-p/jira-ops-manual/docs/modules/ROOT/assets/images/logo.png).

Когда я создаю PDf с помощью приведенной выше команды, я получаю следующие ошибки:

  1. нормальное изображение
Failed to load resource: net::ERR_FILE_NOT_FOUND at file:///home/sebastian/work/workspace/workspace-provinzial/jira-ops-manual/docs/modules/ROOT/logo-provinzial.png:1
  1. диаграмма растений
asciidoctor: ERROR: pages/04-system-setup/index.adoc: line 8: include file not found: /home/sebastian/work/workspace/workspace-provinzial/jira-ops-manual/docs/modules/ROOT/pages/04-system-setup/image$04-system-setup/system-overview.puml

Я предполагаю, что проблема в том, что asciidoctor-web-pdf не заменяет часть пути image$..., поэтому ссылка неверна (или вообще не может разрешить эти ссылки). Изображения и диаграммы встраиваются следующим образом:

image::logo.png[Logo, align="center"]

[plantuml, system-overview-plantuml-image, svg]
----
include::image$04-system-setup/system-overview.puml[]
----

Кто-нибудь подскажет, как решить мою проблему? Я открыт и для других решений. Может быть, есть более простой способ с antora, поэтому мне вообще не нужен asciidoctor-web-pdf?


EDIT: я решил проблему с обычными изображениями, установив путь к изображениям в верхней части pdf-adoc.

= Operations Manual
:imagesdir: ./assets/images

include::pages/index.adoc[]

include::page1.adoc[]

include::page2.adoc[]

...

But the problem with the plantuml images still exists.

:imagesdir: ./активы/изображения


person Sebastian Sommerfeld    schedule 21.10.2020    source источник


Ответы (1)


Во-первых, я бы написал комментарий, но у меня нет 50 репутаций - Поэтому я отвечаю… вроде:

Вы должны знать, что asciidoc-web-pdf все еще находится в активной разработке, и я не могу себе представить, что он недостаточно протестирован рядом с Antora. В этом обсуждении вы получите некоторые идеи: https://discuss.asciidoctor.org/Single-PDF-and-multiple-HTML-from-same-sources-td7640.html

При этом я бы уменьшил сложность (создал бы свои вещи, если бы Антора) и начал строить маленькими шагами. Затем перейдите к следующему шагу.

person Frank Blome    schedule 23.10.2020