我现在已经在线浏览了一段时间,而我似乎无法确定这是否可能,所以希望有人能指出我某个方向..
我特别想知道是否可以以编程方式将数据插入到asciidoc模板中,以便我可以使用它来生成类似发票文档的内容。我看过AsciidoctorJ,这似乎是生成asciidoc文件的pdf的最后一步,这很好。
我已经查看了asciidoc中宏的文档,但似乎无法找到我想要的内容。
我找到了一个使用latex和一个名为Java LaTeX Report的库的示例,它允许您使用以下内容定义.tex文件:
#foreach( $name in $services )
\Fee{$name[0]} {$name[1]} {1}
#end
然后从代码中的数据填充这些变量并通过执行以下处理模板:
ArrayList<ArrayList<String>> services = new ArrayList<ArrayList<String>>();
ArrayList<String> subservice1 = new ArrayList<String>();
ArrayList<String> subservice2 = new ArrayList<String>();
ArrayList<String> subservice3 = new ArrayList<String>();
subservice1.add("Software");
subservice1.add("50");
subservice2.add("Hardware1");
subservice2.add("500");
subservice3.add("Hardware2");
subservice3.add("850");
services.add(subservice1);
services.add(subservice2);
services.add(subservice3);
converter.replace("services", services);
converter.parse(template, invoice1);
在latex中生成文本:
\Fee{Software} {50} {1}
\Fee{Hardware1} {500} {1}
\Fee{Hardware2} {850} {1}
是否有一些库可以让我为asciidoc做类似的事情?任何帮助将不胜感激。
答案 0 :(得分:0)
通过我在网上找到的内容,没有办法在asciidoc中本地使用LaTeX替代品。但是,您可以使用FreeMarker之类的模板语言来实现类似的结果来进行变量绑定。该输出将是asciidoc模板,其中插入了所有数据。您可以定义输出文件的扩展名,以便可以参数化任何文件类型。