在asciidoc中有一个我想仅包含PDF输出的图像。是否有一种属性我可以传递给image ::以便处理图像以生成PDF,并在生成epub等时被忽略?或者更可能是使用ifdef,但究竟是怎么回事?
答案 0 :(得分:1)
您可以像这样使用ifdef directive:
Some text for all outputs.
ifdef::backend-pdf[]
This is only displayed in the PDF document, you can use image:
image::mypict.png[]
endif::[]
答案 1 :(得分:1)
如果你需要一个简单而小巧的解决方案,我宁愿选择Jminis。
对于需要更多区分的情况,您可以为不同类型的输出定义自己的过滤器参数,可以在命令行调用中将其定义为参数。您可以按以下方式过滤内容,例如:如果你想在不同的观众之间有所不同。
Some text for all outputs.
ifeval::["{myfilter1}"=="pdf"]
This content is pdf-only!
ifeval::["{myfilter2}"=="adminpdf"]
This content is admin-pdf-only!
endif::[]
endif::[]
您可以在命令行调用中添加参数,如下所示:
--attribute myfilter1='pdf'
命令的确切表达式取决于您的系统。以下语法可以工作(在没有asciidoc-setup的情况下,我暂时无法测试它。)
OS X asciidoc - > DocBook的:
SCRIPT=${...path to asciidoc installation...}/asciidoc.py
INPUT=myAsciidocInput.ad
OUTPUT=MyDocBookOutput.xml
MYFILTER="--attribute myfilter1='pdf' --attribute myfilter2='adminpdf'"
python "$SCRIPT" -o "$OUTPUT" "$MYFILTER "$INPUT"
WIN asciidoc - > DocBook的:
set SCRIPT=%{...path to asciidoc installation...}%\asciidoc.py
set INPUT=myAsciidocInput.ad
set OUTPUT=MyDocBookOutput.xml
set MYFILTER=--attribute myfilter1='pdf' --attribute myfilter2='adminpdf'
python "%SCRIPT%" -o "%OUTPUT%"