asciidoc-pdf:如何使用自定义样式

5

我该如何在asciidoctor-pdf中使用自定义样式(字号、字体颜色等)?我已经阅读了主题指南,并尝试在xxx-theme.yml中添加设置,但都没有成功。此外,在我的pdf示例中,标记样式(用#标记)也无法正常工作。


主题仍处于非常初期的阶段。请在邮件列表中发布并/或在 Github 上创建问题。 - LightGuard
3个回答

3

您需要创建自己的YAML主题,然后使用pdf-style选项,如下所示:

$ asciidoctor-pdf src/main.adoc -a pdf-style=themes/my-theme.yml

这里有文档。


1

如果您想要获得类似于导出到html或epub3时的结果,那么使用自定义样式是必需的,因为默认主题不会映射asciidoc中的默认(css/html)样式。

  • 创建一个带有“-theme.yml”后缀的文件,例如“my-theme.yml”

  • 然后插入:

extends: default
  role:
    red: 
      font-color: #c5000c
    maroon:
      font-color: #4f2400
    green:
      font-color: #366251
    navy:
      font-color: #4974a5

在这个yaml文件中引用所有颜色名称及其相应的编码(此示例中的编码不是精确的),并像这样在您的*.adoc文件中使用[.green]#SomeTextThatSouldLookGreen#

(在此示例主题中,我使用role以简化操作,但其他方法也可能适合您的需求,请参见theming-guide,该指南从自定义字体的说明开始)

  • 然后可以通过命令行选项调用它:

    asciidoctor-pdf src/main.adoc -a pdf-style=themes/my-theme.yml asciidoctor-pdf src/main.adoc -a pdf-stylesdir=./themes -a pdf-style=my

或者通过在源*.adoc文件中插入以下特定标记来调用它:

:pdf-theme: themes/pdf-theme.yml

0
如果您想查看如何在Maven构建中使用xxx-theme.yml,可以参考asciidoctor-pdf-with-theme-example项目。它会生成两个PDF文件(一个使用yml文件进行样式设置,另一个使用默认的PDF样式)。

提供的示例在主题方面运行良好。但是像 `== 介绍这个项目做了一些事情。 [mySuperStyle]#我们# 还没有决定那是什么。这样的asciidoc自定义样式无法工作。 在HTML中添加一个css:.mySuperStyle { font-size: 32px; }可以解决问题,但是在custom-theme.yml中添加mySuperStyle: font_color: #FF8000 font_size: 32 font_style: italic` 没有效果。我已经尝试修复此问题,并且我认为我有一个解决方案 - 正如@LightGuard建议的那样,我将创建一个问题并添加我的代码建议。 - Rene

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接