我目前正在为OSX开发一个执行多个操作的应用程序,并且应该提供将某些数据导出为PDF的选项。
生成的PDF应该具有复杂的样式:一些带边框和背景的矢量元素,一个可选图像,自定义字体类型,以及一些段落格式。
我有从App控制Adobe InDesign以将数据注入模板并导出PDF文件的经验,但在这种情况下我需要在我的应用程序中嵌入所有功能,因此我的客户端不需要任何其他功能
我需要一种方法来获得某种模板,我可以从App中注入数据,并可能重复模板的设计元素。想象一下Invoice,它有一些需要填充一次的字段,比如客户名称和地址;但是发票中列出的每种产品都需要重复其他要素。
我一直在研究这个主题,我发现了一些关于Cocoa Drawing和Quartz的信息,但这需要在我的应用程序中编写模板代码,并且将它们分开,可以导入App的数据。 (那是因为我也是一名设计师,我想为我的应用程序的用户提供自定义模板设计。)
也许有一种方法可以使用HTML / CSS渲染(在应用程序中或远程)并将其转换为PDF?我可以在应用程序内部或使用PHP进行转换...这两个选项会保持元素矢量吗?这并不重要,只是文件大小的问题。
有什么方法/ Cocoa库可以让我的工作方式与我的想法类似吗?我不是Cocoa中经验丰富的程序员,事实上我对它很陌生,但我已经用很多其他OOP语言做了很多事情。
对于这个冗长的问题感到抱歉,我只想清楚我的项目。
谢谢!
答案 0 :(得分:0)
您可以使用PDFPageBuilder框架在Cocoa应用程序中生成相当复杂的模板驱动的PDF。有一个体面的演示应用程序,表明支持的功能范围。
文本可以准确定位,样式选项包括字体名称,大小,颜色和段落对齐。也可以插入图像。
还支持枚举对象和简单的布尔条件表达式。