C 处理PDF文件深度处理解决方案
具体的需求如下:
客户的图纸是以PDF文件(机械图纸)形式发送过来,并且一个PDf文件中是由多张图纸组成,有的一张图纸只有一个机械加工件,有的有多张图纸。目标:根据每张图纸的图号,自动生成二维码添加到每一张图纸的上,生成新的pdf供打印流转到后面的加工环节。
搜索Adobe Acobat没有找到对应的解决方案,大虾们如果有相关的解决方案请给我评论留言。我的解决方案比较的繁琐:
制作一个Excel(这个文件一般随客户图纸pdf文件一起发过来)文件,文件中有图号以及其他的相关信息,图号的顺序一定要跟客户图纸Pdf文件中的文件图纸的顺序一致。将客户图纸Pdf文件拆分导出成N张图片,以1、2、3....命名,再根据Excel文件的图号及相关信息生成二维码图片,再将导出的图片同二维码图片组合成新的图片,将二维码放置到图片的指定位置,最后将组合后的图片组合成一个新的Pdf文件就完成了整个加工过程。
以下是使用说明:
1、如下图所示:用户名:admin,密码:******,录入后点击登录。
2、如图pic1
所示为本软件核心部分。
⑴、打开pdf文件:此为客户给定的pdf,或者拆分后的pdf文件,需要添加二维码的pdf源文件。
⑵、打开Excel文件:Excel文件的加工方法:系统会采集Excel文件中的A、C、D列。目前二维码的格式为:
A&C@D
(如果有D的情况下)
A列的标准为:如果不存在一张图纸多个件的情况就安装从1开始递增步数为1的顺序添加即可。如果存在一张图纸有多个件,按照下图所示:如第八章图纸有多个零件,那么第八章图纸在A列的编号为8-1开始,而后“-”前面的数字不变,后面的数字递增。此处的编号一定要按照规定来处理,否则将影响最终的结果。
C列的标准:按照目前使用的二维码编码,C列为&之后的数据,也是所有的二维码必须要有的数据,因此此列的标准是不能为空。
D列的标准:按照目前使用的二维码编码,D列为@之后的数据。此数据不是所有的二维码都有的数据,因此对于没有此数据是也要有此列,保证此列数据为空即可。系统将自动检测。
⑶、设置临时目录:系统在运行时会产生临时数据,此处设置为系统临时数据的存放目录。系统默认设置为E:klsttest,可以修改。
⑷、设置最终生成文件目录:最终pdf文件中的每张图纸都会自动加上二维码。此处设置为生成的pdf文件最终的存放位置。默认为D:。
⑸、文件名:为最终生成的pdf文件名,系统会自动生成,也可以修改。默认生成的格式为:客户名称+当前日期+当前时间。
⑹、Excel表格Sheet名(客户名):导入Excel文件的格式中,在sheet一栏必须设定为客户名称,系统会自动找到正确的sheet进行导入。此处以下拉列表框的形式可以选择。
⑺、是否含有标题栏:Excel文件中的首行是否是标题栏。默认为是。
⑻、二维码所占图纸比例:如果二维码过小,那么打印出来的图纸无法被扫描枪扫描识别。因此对于二维码的大小可以动态调节。此处所说的比例以图纸的高度作为对比(也就是占高度的几分之几)。如果为竖版的图纸,那么比例可以设置为1/15,如果是横版图纸,那么比例可以设置为1/20。可以根据经验动态调节。
⑼、二维码间距:如果一张图纸有多个零件,那么就会存在多个二维码。此处设置为两个二维码之间的距离。默认为150,下图示例为50。此处设置只针对多个二维码的情况有效。不会影响只有一个二维码的pdf。
⑽、横向/纵向图纸:系统会根据此处选项将所有图纸(原始的未加工pdf)全部转换成横向或者纵向。比如:一张
图纸有8个零件的情况下就会有8个二维码,如果是纵向那么二维码很有可能放不下,那么就需要设置为横向。
⑾、二维码是否加密:默认为加密。就是在图纸上的二维码是被加过密的,即便图纸拿到外协加工也不能被识别。目前在检测室的软件中可以自动识别,将来在业务平台中可以自动识别。
⑿、PDF是否加工过:如果在加工二维码之前pdf是加过标注或者其他的元素,那么就选择加工过。如果之前的pdf就是客户来的图纸没有任何添加元素,那么可以选择加工过,也可以选择未加工。未加工只会导出成原图纸,但标注或其他的元素将不被导出。
⒀、转换进度:当点击“确定生成导出”按钮的时候,系统开始转换,此为进度,当最终完成所有的工作的时候将
会出现转换完成的提示。
一、
如图所示:在主窗口点击“添加客户”,会出现添加客户的窗口。在客户名称中填写客户后点击添加即可完成添加。如果某一个客户不需要那么双击左面的列表框中对应的客户名称即可完成删除。无论添加还是删除客户,操作完后在主窗体中的客户处点击刷新即可完成客户的刷新。
二、清空临时目录
系统会在临时目录中产生临时文件,并根据临时文件来生成最终文件。正常情况下系统在完成导出最终pdf文件后会自动删除临时目录。但有时出现问题则临时文件中会残留一些不相关文件。可以通过点击清空临时目录来删除临时文件夹中的所有文件,既清空操作。