基于weasyprint库的Plone内容PDF导出。
项目描述
plone.pdfexport
为Plone内容提供PDF导出功能。
功能
导出文档、事件、新闻条目和其他自定义内容。
可以通过CSS在PDF导出控制面板中进行自定义。
长表格将在多页上渲染,表头将在每一页重复。
可以使用Plone body标签CSS类来定义特定Plone内容的CSS规则。
此插件基于优秀的WeasyPrint库。
翻译
此产品已翻译成
英语
德语
安装
通过将其添加到您的buildout中安装plone.pdfexport
[buildout] ... eggs = plone.pdfexport
然后运行 bin/buildout
注意:对于Python 2(Plone 5.1),您必须固定一些包
weasyprint = 0.42.3 cairocffi = 0.9.0 tinycss2 = 0.6.1 soupsieve = 1.9.6 cssselect2 = 0.2.2
使用方法
安装插件后,您可以在任何Plone内容上调用“aspdf”视图。
http://localhost:8080/Plone/news/aspdf
为了测试,您可以在GET参数中添加“html=1”,以便在将其渲染为PDF之前查看HTML版本。
http://localhost:8080/Plone/news/aspdf?html=1
我们提供竖排和横排模式,并为每种模式设置单独的页面设置。
@page {
margin: 2.75cm 1.4cm 1.4cm 1.4cm;
size: landscape;
@top-center {
font-size:12px;
color:#666666;
content: "Beautiful Plone content, deserves a beautiful PDF export!";
}
@bottom-left {
font-size:12px;
color:#666666;
content: "provided by derico.de";
}
@bottom-right {
font-size:12px;
color:#666666;
content: "Page " counter(page);
}
}
您可以设置默认模式。要使用不同的模式,您可以添加请求参数。
http://localhost:8080/Plone/front-page/aspdf?mode=landscape
http://localhost:8080/Plone/front-page/aspdf?mode=portait
贡献
支持
如果您遇到问题,请告诉我们。
许可协议
该项目采用GPLv2许可。
贡献者
Maik Derstappen, md@derico.de
变更日志
2.2 (2024-07-21)
添加横幅图像字段,在页面标题中渲染横幅 [MrTango]
2.1 (2022-11-04)
修复python_requires定义 [MrTango]
要求Py >=3.7并删除restapi down pinning [MrTango]
2.0 (2021-10-26)
提供两种页面模式(横排和竖排)的默认设置,并通过请求模式参数进行切换 [MrTango]
1.1 (2021-10-08)
- 改进图像处理,现在也支持原始图像(没有@@images/scales)。
[MrTango]
1.0 (2021-10-06)
改进德语翻译 [MrTango]
改进错误处理并添加更多测试 [MrTango]
1.0b1 (2021-07-15)
在自定义WeasyPrint url_fetcher中内部解析图像,这消除了对WeasyPrint解析URL的需求,这在权限或https证书问题上是问题 [MrTango]
1.0a4 (2021-07-14)
目前不要在weasyprint中使用optimize_images=True,它仅在Py3版本中工作 [MrTango]
1.0a3 (2021-07-14)
将print_image_scale添加到控制面板,并使用自定义图像缩放进行PDF导出 [MrTango]
1.0a2 (2021-07-14)
修复PDF导出中缺少封面图像视图组件 [MrTango]
将内容CSS类与body标签类合并,而不是覆盖它们 [MrTango]
1.0a1 (2021-07-13)
初始发布。 [MrTango]