代码之家  ›  专栏  ›  技术社区  ›  mherzl

如何将asciidoc转换为pdf?

  •  2
  • mherzl  · 技术社区  · 7 年前

    我试图改变我的 mybook.adoc mybook.pdf 使用 pandoc ,并得到以下错误。

    $ pandoc -s mybook.adoc -t asciidoc -o mybook.pdf
    pandoc: cannot produce pdf output with asciidoc writer
    

    我是否应该使用其他工具来代替或配合使用? 潘多克 ? 如何将asciidoc转换为pdf?

    6 回复  |  直到 7 年前
        1
  •  5
  •   Remis    6 年前

    先决条件 :所有需要的是Ruby(1.9.3或更高版本)

    安装 用于asciidoc的本机PDF转换器- Asciidoctor PDF :

    gem install asciidoctor-pdf --pre
    

    :

    asciidoctor-pdf mybook.adoc
    

    您应该在同一目录中获得mybook.pdf文件。

        2
  •  2
  •   Brian D    7 年前

    asciidoc有两个工具链,将从asciidoc源呈现pdf。您可以使用基于Ruby的asciidoc->对虾->pdf toolchain 由asciidock开发,或者您可以使用旧的asciidoc->docbook->fop toolchain . 这些都是呈现/发布过程,而PanDoc主要提供转换,并且最适合从一种类型转换为另一种类型的源格式。

        3
  •  2
  •   Shailendra    7 年前

    将asciidoc文档转换为pdf的最简单方法如下-

    • 正常开放 AsciiDocLive
    • 在编辑器中粘贴文档并查看预览
    • 保存为HTML
    • 打开任何联机HTML到PDF转换器
    • 上载新生成的HTML文件
    • 转换为PDF并下载。

    完成。

        4
  •  1
  •   markbez    6 年前

    我经常使用的另一个工作流是使用asciidoctor处理器从asciidoc文件创建HTML,将自定义CSS样式表与打印样式规则链接:

    asciidoctor -a stylesheet=path-to-stylesheet.css file.adoc
    

    然后,您可以在浏览器中打开HTML文件并打印为PDF格式。

    对于更高级的样式,如页码、页眉、页脚、分页符和列,可以使用PrinceXML(或其他类似产品)。这是一个命令行处理器,它将使用HTML文件使用的CSS中的样式规则将HTML文件转换为PDF。PrinceXML应用CSS3标准中的样式规则,但浏览器还不支持这些规则,允许您创建样式良好的布局。

        5
  •  0
  •   mherzl    6 年前

    按照@remi的答案,我使用了asciidoctor的pdf后端。

    我不知道如何安装 asciidoctor-pdf 在尼克松,但设法 find 以下备选方案有效:

    asciidoctor -r asciidoctor-pdf -b pdf or asciidoctor-pdf
    
        6
  •  0
  •   mherzl    6 年前

    我现在意识到从asciidoc到pdf的理想途径是首先将asciidoc转换为docbook。这就使用了asciidoc的预期领域和docbook->pdf转换器,每个转换器都在各自的关注领域中使用。

    而且,不是 pandoc 我发现,当包含数学公式时,使用起来更容易 dblatex 对于DocBook->PDF转换。因此,我的转换管道如下:

    ASCIIDOC公司 gt; 医生 gt; 教科书 gt; 双乳胶 gt; PDF

    示例生成文件:

    make: my.adoc
      asciidoc -b docbook my.adoc
      dblatex my.xml
    

    This discussion page建议asciidoc主要设计为编译为docbook。