plone的odt/ods模板转换

redomino.appytransforms的Python项目详细描述


redomino.appytransforms

它注册了一个新的门户转换,允许您为给定的模板动态生成odt或ods文件。

本产品基于http://appyframework.org/pod.html

因为它的目标是生成本地libre office/openoffice格式,所以不需要在服务器模式下运行libreoffice。

这个插件是为开发人员准备的,它可以用于生成动态odt/ods文件、编写自定义ploneformgen适配器等。

使用量

示例:

>>> from zope.component import getUtility
>>> from Products.PortalTransforms.interfaces import IPortalTransformsTool
>>> file_contents = open('your odt file with variables').read()     # see redomino/appytransforms/tests/input.odt
>>> portal_transforms = getUtility(IPortalTransformsTool)
>>> converter = portal_transforms.convertTo(target_mimetype='application/vnd.oasis.opendocument.text.transformed',
>>>                                        orig=file_contents,
>>>                                        mimetype='application/vnd.oasis.opendocument.text',
>>>                                        mapper=dict(plone_version='4.3.2-sunny-day-beta'),
>>>                                       )
>>> transformed_odt_contents = converter.getData()

应用程序pod的提示和限制

提示和应用程序。pod的限制。

ODT文件:

  • 使用“编辑”->;“更改”->;“记录”显示变量
  • 条件文本字段似乎不受支持(据我所见),请改为将注释与do text if expr一起使用
  • libreoffice不支持对单个单词的注释(请参见http://ask.libreoffice.org/en/question/5256/comments-in-writer/),因此似乎您将不得不使用唯一的方法来
  • 重复列表项,它不能按预期工作

ODS文件:

  • 不要在ODS文件上使用“编辑”->;“更改”->;“记录”!
  • 重复行,在第一个单元格上添加注释“为person中的person添加行”,并将动态内容放入单元格value=“person['age']”
  • 如果要传递单个变量并将其显示到单个单元格中,请在单元格value=“variable_name”(不作为注释)中使用以下语法

appy的文档很糟糕:如果您在尝试使用odt/ods模板时遇到困难,请查看tests文档https://github.com/redomino/redomino.appytransforms/tree/master/redomino/appytransforms/tests

测试

测试状态:

https://secure.travis-ci.org/redomino/redomino.appytransforms.png

如何启动测试:

$ ./bin/test -m redomino.appytransforms

作者

更改日志

0.1(2014-02-24)

  • 首次发布 [大卫莫罗]

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么javaassist仅在项目中使用lambda时加载Entitymanager时抛出无效的常量类型:18   java如何识别用户是否在Alexa中首次启动技能?   java maven:如何防止插件更新   java StringBuilder将null追加为“null”   在java中,我可以在画布上绘制画布吗?   java如何在JRadioButton上垂直对齐文本和图像?   java“类是对象的集合”。这个定义是对的还是错的?   java如何用其他字符替换字符串中的1个或多个字符?   Java的HashSet<Double>及其子集的hashcode的唯一性   对象ArrayList的java并发修改错误   多线程Java线程:让EDT函数等待长时间运行的函数离开EDT   java如何重写方法,将一个实例变量和一个局部变量相加,从而生成一个数据类型为Double的新变量?