不说费话啦.说主要的~~
任意类型文件转换PDF,我能想到的办法就只有利用ADOBE PDF PRINTER一个了
研究了下瘟到死的PRINT命令,发现此命令调用不了PDF PRINTER.
除非自己写ROBOT,把PDF PRINTER设为默认,这可行~~但是肯定干扰用户其他操作了.
换个思路.
先把文件打成POSTSCRIPT格式,再用ADOBE DISTILLER转成PDF.
其实有了PS文件,JAVA自己就能调用PDF PRINTER转换成PDF了.
可是没找到转换PS的东西.
只能加虚拟打印机了.
问题又绕回来了.
如果是个AUTOCAD文件,java好像不能调用打印机把它打成PS文件.
又绕到ROBOT上了.
只能加台独立PC,跑ROBOT打印么?
======
今天发现一个可行的办法~~~
经一老外的VBS的启发,发现可以自己调用acrobat.exe打印PDF.
步骤:
1.查注册表
HKCR/.PDF/默认=命令行注册表值所在[键值],一般是:AcroExch.Document
HKCR/[键值]/shell/print/command=这里就是命令行参数
一般是:[路径]/acrobat.exe /p /h [文件名]
输出路径:
HKCU/SOFTWARE/ADOBE/ACROBAT DISTILLER/[版本]/ADOBEPDFOUTPUTFOLDER/默认=[一个数字]
HKCU/SOFTWARE/ADOBE/ACROBAT DISTILLER/[版本]/ADOBEPDFOUTPUTFOLDER/[一个数字]=[输出路径]
当二个数字一致,才会输出到指定目录,否则是默认位置MY DOCUMENTS/*.PDF
输出文件名格式:ADP[三位数字,也可能四位或更多].