首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在线创建包含可变数据的pdf

如何在线创建包含可变数据的pdf
EN

Stack Overflow用户
提问于 2014-04-30 02:08:17
回答 3查看 2.5K关注 0票数 0

我不太确定如何正确地提出这个问题,所以我将尝试描述我正在寻找的解决方案,然后我希望有人能帮助我以正确的方式构建问题/解决方案。

我有一个类似这样的pdf:http://thomasabcd.site44.com/topdf/279928-triangle.pdf,它是基于一个indesign文件。

我想根据数据库中的数据更改文本和二维码,并输出新的pdf进行打印,而不必手动编辑原始的indesign文件。我在indesign中有原始布局(可以在这里找到http://thomasabcd.site44.com/topdf/279928-triangle.indd),我的想法是将它导出到HTML,这样我就可以替换文本和二维码,然后将HTML文件生成为pdf。但这似乎不起作用,因为从indesign输出的HTML似乎不是像素完美的,尺寸看起来也不正确,而且生成的html看起来也很模糊。所以我不知道把indesign-file转换成html然后再转换成pdf是否走错了路,或者我是否应该做一些完全不同的事情。

所以我想我的问题的核心是如何最好地基于我的indesign文件生成一个pdf。

谢谢

托马斯

EN

回答 3

Stack Overflow用户

发布于 2014-04-30 02:47:00

您是此InDesign自定义路径的唯一用户吗?如果是这样的话,InDesign有一些很好的scripting options,它们相对容易使用,并且可以跨平台构建。即使您的用户数量有限,只要他们有InDesign,您也可以共享这些脚本。

如果您想要更强大的功能,InDesign还公开了一个可以在.Net中与之对话的COM对象。文档很大程度上遵循脚本指南。它们还为Mac提供了一个Applescript字典。两者都允许您静默或交互地启动InDesign,并且几乎可以用鼠标和键盘做任何您能做的事情。

您可以通过在服务器上安装InDesign来进一步增强上面的COM路径,并且只要您获得了适当的许可,就可以从服务器端语言(如.Net或PHP )调用它。

Adobe也有一个专门的InDesign server version可用,但上次我研究它时,它的成本太高了。

如果你不想依赖于InDesign,那么下一个最好的选择就是PDF库。这真的取决于你想要的目标语言/平台。iText是一个伟大的Java库,它已经作为iTextSharp移植到了.Net上。还有其他几十个很棒的库,这只是取决于你的环境。沿着这条路走下去,您将在InDesign中创建您的PDF,然后使用该PDF作为模板进行自定义。你不能(很容易地)替换PDF中的文本,所以你只需要计算出X,Y坐标以及字体信息,但这很简单。

如果你只有文本,你可以做一些非常简单的事情,那就是把你的变量文本变成看起来和普通文本完全一样的表单域。然后你就可以用Adobe Acrobat甚至Adobe Reader来填空了。然而,由于字体嵌入许可,这遇到了一点问题。

我已经花了十多年的时间来做所有这些事情,所以如果你愿意,我可以详细说明更多。

票数 1
EN

Stack Overflow用户

发布于 2014-04-30 02:17:34

我不知道indesign,但我猜你不可能让它像那样工作。

对我来说,你有两种可能: 1.你生成pdf服务器端2.你生成你的pdf客户端

你有什么样的服务器/语言/基础设施?你用php工作吗?java?对于100%的客户端,我知道这个库在http://parall.ax/products/jspdf上工作得很好

但我认为这里最好的方法是在你的服务器上动态生成你的pdf,然后让你的客户端下载它。我是一个Java爱好者,所以我会告诉你使用Jasper,但任何pdf生成器都可以

票数 0
EN

Stack Overflow用户

发布于 2014-04-30 20:58:53

问题的解决方法是放置字段(文本为文本,按钮为二维码),并使用iText填充这些字段。这样你就不需要关心放置位置了,因为字段中包含了这些信息。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23372122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档