Plone的PDFreactor集成
项目描述
此附加包通过pdfreactor-api包提供的RealObjects PDFreactor客户端API,将PDFreactor集成到Plone中。
要有效使用它,您需要
运行中的PDFreactor服务器
访问它所需的密钥;根据服务器配置
许可证密钥(来自RealObjects;见https://www.pdfreactor.com/buy/)(除非安装在服务器上)
和
如果服务器需要,则API密钥。
功能
内容对象的一个简单@@as.pdf浏览器视图(提供带有标准选项的同步PDF导出)
一个自定义表单@@pdfreactor-connection-settings,用于编辑连接设置(这些设置存储在Plone注册表中)
一个简单的 @@pdfreactor-config 视图,提供基本的 转换 设置(即创建来自受限内容的PDF导出的Zope cookies)
有关在注册表中提供可自定义转换设置的包,请参阅下文。
一个简单的CSS样式表,默认配置使用它来抑制不感兴趣的页面部分
安装
Plone环境通常使用 zc.buildout 构建;因此,将以下内容添加到您的 buildout.cfg 脚本中
[buildout] ... eggs = pdfreactor.plone
然后运行 bin/buildout。
这将为您获得 pdfreactor-api 包。
重启您的Zope实例后,您将在快速安装器或Plone插件视图中找到该包。
在此安装(或激活)包后,访问 @@pdfreactor-connection-settings 您的Plone实例视图 以自定义您的PDFreactor连接设置(URL、许可证和/或API密钥)。
有关PDFreactor服务本身的安装说明,请参阅 PDFreactor支持。
定制
Zope / Plone
您有几种选择
您可以继承我们的 .base.Exporter BrowserView 类(它提供 @@as.pdf 视图)并重写其中的一些方法,例如
converted_url
conversionSettings
您可以将我们的 BrowserView 类或其子类连接到比 IContentish 更具体的接口。 (您可能需要一个层接口以避免配置冲突)。
您可以重写 @@pdfreactor-config 视图以修改转换选项(通常是通用的,或通过接口)。
一个提供全局“TTW”可定制配置的附加包是 pdfreactor.parsecfg。
有关如何执行此操作的说明,请参阅Zope / Plone文档。
PDFreactor
有关PDFreactor本身的受支持方法和配置选项的详细信息,请参阅 RealObjects GmbH 的文档
支持
如果您在Plone集成方面遇到问题,请告诉我们;请使用上面提到的 问题跟踪器。
有关PDFreactor本身的问题,请参阅 RealObjects GmbH
贡献
(到此Plone集成包:)
许可证
该项目采用MIT许可证。
更改日志
1.0.4 (2023-12-08)
杂项
将 __noduplicate 添加到cookie列表中。
如果您使用 no_duplicate_login PAS插件(Products.NoDuplicateLogin),则此操作非常重要;否则,创建PDF文档或截图可能会失败。或者PDFreactor可能会让您退出。
[tobiasherp]
1.0.3 (2023-04-05)
新功能
.base.Exporter类现在提供了一个自己的 .convert 方法,它接受 binary、async 和 stream 参数,并在内部调用适当的转换方法。
目前,它将返回
None,如果提供了 stream,
如果提供了 binary(且未提供 stream),则返回二进制数据,
如果提供了 async,则返回 document_id,
否则返回包含所有元信息的 dict。
改进
.base.Exporter类现在提供了一个(并使用了)conversionSource方法,该方法反过来使用现有的 converted_url 方法。
注意:如果提供文本而不是URL作为文档配置键,您可能还需要指定一个baseUrl;否则,反应器在转换过程中可能无法加载样式表或图像。
开发提示
在开发和测试您的PDFreactor转换时,请确保您有多个Zope工作线程准备就绪;否则,当反应器向您的实例发送请求时,您可能会遇到HTTP错误!
我们提供原始API(来自PDFreactor分发)作为.raw_api模块(用于开发和测试;有助于检查某个问题是否与我们的Python化措施有关)。
以防万一。
[tobiasherp]
1.0.2 (2023-01-20)
新功能
关于对MathML的支持
添加了一个@@pdfreactor-mathjax-vars.js视图(用于配置),以及
一个++resource++pdfreactor.plone/mathjax2-run.js脚本,以简化MathJax集成。
这目前尚不可配置,但可能很快就会。
注意:PDFreactor v11.6.3(2023-03-07)包含了一个修复,该修复解决了导致MathML导出为“连续媒体”失败的错误。
@@as.pdf方法支持一个method选项;例如,调用.../my/page/@@as.pdf?method=@@from-screenshot可以从.../my/page/@@from-screenshot创建PDF文件。
[tobiasherp]
1.0.1 (2022-09-20)
杂项
由于Zope cookies被视为config信息,因此connectionSettings方法不再返回任何cookie。
现在,.base.Exporter提供了一个用于在派生视图类中使用并覆盖不使用@@pdfreactor-config的conversionSettings方法的getZopeCookies方法。
[tobiasherp]
1.0.0 (2022-07-12)
首次发布。[tobiasherp]
项目详情
pdfreactor.plone-1.0.4.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d1f2c84949c71ff11e72eacbe8ea3b22c552ea92a2bf966bab17fd90725aa88c |
|
MD5 | bb65f7f435279a4e6ecb6d048bcebd1b |
|
BLAKE2b-256 | a4af36ea9e47cdbd134a8658149ca24a0f974eb3f3c4e380d0aa234a2417b27e |