Mica Asked: 2010-03-30 10:25:29 +0800 CST2010-03-30 10:25:29 +0800 CST 2010-03-30 10:25:29 +0800 CST foswiki:在主题模板中使用 genPDF 扩展? 772 我有一个 foswiki 安装来保存 ISO 和其他文档。我想从每个页面创建一个 PDF。如何为每个主题模板创建具有不同页眉和页脚的主题模板? 更多信息:当用户创建新主题时,他们可以选择模板。我为功能和编程规范制作了几个模板。功能规范和编程规范需要不同的文档编号。我希望软件工程师能够创建一个新主题,选择模板,然后能够从 wiki 页面生成 PDF,将适当的文档编号以及一些其他文本放入页眉和页脚。我不是很熟悉,也找不到任何这样做的例子。任何帮助,将不胜感激! perl foswiki genpdf 1 个回答 Voted Best Answer George Clark 2010-03-30T18:20:25+08:002010-03-30T18:20:25+08:00 如果没有示例,这可能有点难以解释。但... 在您的 Document TemplateTopic 中,您可以插入用于 PDF 生成的控制信息以及定义 Foswiki 变量以用于其他主题。例如 - 模板 - 和根文档可能包含: <!-- PDFSTART --> <!-- HEADER LEFT "%TITLE%" --> <!-- HEADER CENTER "" --> <!-- HEADER RIGHT "%REVINFO{"1.$rev $date"}%" --> < !-- * 设置 GENPDFADDON_TITLETOPIC = Yourweb.PDFHeaderTopic * 设置 DCN = 1234 * 设置 DTITLE = 文档标题 * 设置 DTYPE = 工程 - -> 然后在您的 PDFHeaderTopic 中,定义您的标准封面。您可以参考本主题中设置的 DCN 和 DTYPE 之类的想法。 <noautolink> <!-- 页眉中心 "%DTITLE%" --> <!-- 页脚左侧 "$PAGE(1)" --> <!-- 页脚中心 "%REVINFO{"r1.$rev $date " web="%WEB%" topic="%BASETOPIC%"}%" --> <!-- 页脚右 "%DCN%" --> <!-- 作者 "%AUTHOR%" --> </没有自动链接> <img ...(文档标题图像) %DTITLE% DCN: %DCN% 等等 如果您想要更详细地控制样板等,您可以根据变量设置进行自定义 %INCLUDEs。%INCLUDE 可以设置电子表格变量,然后可以将其合并到任何页面中。 例如在标题页上: %IF{"定义的 DCLASS 和 $ DCLASS = '3'" then="%INCLUDE{"YourConfidentialHeaders"}% 在那个页面中, %CALC{$SET(DOC_STMT, COMPANY CONFIDENTIAL : 无论样板文件)}% %CALC{$SET(DOC_ST, CONFIDENTIAL)}% 然后在任何其他页面中,您可以使用 %CALC{$GET(DOC_STMT)}% 插入语句,并且可以在 <!-- HEADER CENTER "%CALC{$GET 这样的地方插入 %CALC{$GET(DOC_FOOT)}% (DOC_ST)}%" -->
如果没有示例,这可能有点难以解释。但...
在您的 Document TemplateTopic 中,您可以插入用于 PDF 生成的控制信息以及定义 Foswiki 变量以用于其他主题。例如 - 模板 - 和根文档可能包含:
<!-- PDFSTART -->
<!-- HEADER LEFT "%TITLE%" --> <!-- HEADER CENTER "" --> <!-- HEADER RIGHT "%REVINFO{"1.$rev $date"}%" --> < !-- * 设置 GENPDFADDON_TITLETOPIC = Yourweb.PDFHeaderTopic * 设置 DCN = 1234 * 设置 DTITLE = 文档标题 * 设置 DTYPE = 工程
- ->
然后在您的 PDFHeaderTopic 中,定义您的标准封面。您可以参考本主题中设置的 DCN 和 DTYPE 之类的想法。
<noautolink> <!-- 页眉中心 "%DTITLE%" --> <!-- 页脚左侧 "$PAGE(1)" --> <!-- 页脚中心 "%REVINFO{"r1.$rev $date " web="%WEB%" topic="%BASETOPIC%"}%" --> <!-- 页脚右 "%DCN%" --> <!-- 作者 "%AUTHOR%" --> </没有自动链接>
<img ...(文档标题图像)
%DTITLE%
DCN: %DCN%
等等
如果您想要更详细地控制样板等,您可以根据变量设置进行自定义 %INCLUDEs。%INCLUDE 可以设置电子表格变量,然后可以将其合并到任何页面中。
例如在标题页上:
%IF{"定义的 DCLASS 和 $ DCLASS = '3'" then="%INCLUDE{"YourConfidentialHeaders"}%
在那个页面中,
%CALC{$SET(DOC_STMT, COMPANY CONFIDENTIAL : 无论样板文件)}% %CALC{$SET(DOC_ST, CONFIDENTIAL)}%
然后在任何其他页面中,您可以使用 %CALC{$GET(DOC_STMT)}% 插入语句,并且可以在 <!-- HEADER CENTER "%CALC{$GET 这样的地方插入 %CALC{$GET(DOC_FOOT)}% (DOC_ST)}%" -->