PDF 编辑技术很难吗?
市面上 90%的 PDF 软件都是免费查看,付费编辑。要实现 PDF 的编辑功能会很难吗?
PDF 是一个封装格式,主要用于渲染的
所以 PDF 的编辑是把 PDF 的内容读出来,生成一个类似 office word 让你编辑,保存的时候重新导出 PDF
从软件开发者角度看,导出功能有很多标准的库可以用,这个编辑功能是他们自己费很多功夫研发的,自然都用来收费了。
我正在写一个非常简单的 nodejs addon with c++ pdf library
我设置为 private
所以,将来肯定是要收费的
当然很难,技术规范将近两千页,涉及文本渲染、图形渲染,字体处理等
而且 adobe 有很多私有实现没写到 pdf 的 iso 标准中的
icloud 上传下载也不难,但是很多 ios app 就把 icloud 同步做成付费功能
pdf 是偏向固化的格式,二次编辑就是很麻烦
pdf 编辑很恶心的,就像做个工具让你去修改一个编译好的程序
图形不说,文本渲染就是个巨坑,unicode 多种文字,字体 subset
是的 我试用了一堆应用。后来开了 wps 会员
博大精深
如果你说的页面之间的编辑,比如旋转合并拆分,那么挺简单的。
如果是指你要直接在上面编辑文本,那么从技术上是很蛋疼的存在。因为 PDF 本来就是用来显示而不是用来编辑的,出版界最终输出 pdf 文件给出版社印刷。比较类似 JPG 文件,它不支持图层(本意就只是用来显示的),所以你直接编辑 JPG 是很蛋疼的。
一般来说 PDF 编辑只限于修改一点点小错误,如果你真的想排版,请使用专门的排版软件。简单的话,可以用 power point 。更专业一点用微软 publisher ,终极的就是 adobe indesign.
没有正版情节可以用 foxit pdf editor, 挺好用的。
很难,所以我都是转换成图片,等于编辑图片,就很简单但是费时间。
处理这种东西需要大量脏活累活。原来稍微研究过 OOXML ,规范文档就有五千页,还有一些微软自己的私有实现和标准不兼容的,但是因为他的垄断地位你又不得不以他为准。PDF 的情况估计类似
PDF 就是个桶,里面装的东西乱七八糟。虽然有标准,但你照着标准做产品,做完了大概率你的客户会给你报各种东西编辑不了。
等你挨个反馈处理完又是一大笔精力和投资。很难做到免费去搞这些细节。
#7 有没有可能反编译,修改源码后再编译
就这么说吧,OP 你这句话,PDF 完全可以做到让它被记录的字符顺序是这样:
要件辑 9F 免付很现吗会实编的 P 看市软面。都,?编 0D 查 % 上功 F 是费难 PD 辑能的费
但是显示出来还是你所说的那样一行。
(更有甚者,被存储下来的都是一些不存在的字,真复制出来全是框框,但是显示出来依旧正常。)
程序员职业都不支持正版 说不过去吧.
WPS 好用,编辑文字也很流畅, 试用的 smallpdf 那些,编辑完字都对不齐,排版都乱了
技术不难,难在规范一大堆,而且各家各的标准,你想要编辑任意的 pdf 文件还要去研究其他人的标准
举个例子:
Word 里面一段文字,设置了开头缩进,然后文字很长自动换行了。
实际在 PDF 里面,是先定位到缩进后的位置,输出这一行文字。然后再定位到下一行的位置,输出下一行文字。
等于是变成了 PPT ,一行文字一个文本框这样。要编辑的话,就只能编辑这一个文本框内的文字。
而且上述还只是比较标准的 PDF ,实际上完全可以输出一个文字定位一次,等于每个文字都是一个独立的文本框。甚至还有输出图片,然后附加上隐藏的可选中文字这种操作。
话又说回来,为什么要去编辑 PDF 。PDF 的本意不就是不可编辑吗?
可以试试 ABBYY 的 PDF 编辑,一直在使用。
目前主力机 15Pro ,备机是几年前的魅族 16s ,高通 855 起因是最近换了家里的 AP ,从 WiFi5 升级到了 WiFi6 ,但是发现魅族这手机无法连接 802.…
【感谢 Neo 投递本文 – 微博帐号:_锟_ 】 前言:还是一篇入门文章。Javascript中有几个非常重要的语言特性——对象、原型继承、闭包。其中闭包对于那些…
看到这个标题大家一定会想到这篇神文《How Browsers Work》,这篇文章把浏览器的很多细节讲得很细,而且也被翻译成了中文。为什么我还想写一篇呢?因为两个原因, 1)这…