客户发了一个文本规范过来,是doc文档,我们要转成swf,然后用flexpaper展示在网页上。由于在转换的过程中,文件目录包含%等特殊符号,导致pdf转swf文件失败。因此想出一个解决方案,就是把路径包含%的文件,移到一个临时目录再转swf,最后把swf放回源目录。小工具采用python实现:
import os,shutil def Search(rootDir): for lists in os.listdir(rootDir): path = os.path.join(rootDir, lists) if ".pdf" in path: filename = lists.replace(".pdf", ".swf") swfpath = os.path.join(rootDir, filename) if not os.path.exists(swfpath):#过滤出来没转成功的pdf文件 print(path+"\n") tempPdf = "G:\\temp\\"+lists tempSwf = "G:\\temp\\"+filename shutil.copyfile(path,tempPdf) convert(tempPdf,tempSwf) shutil.copyfile(tempSwf,swfpath) if os.path.isdir(path): Search(path) def convert(pdfpath,swfpath): cmd = "D:/raymon/raymoncms/pdf2swf.exe -o " + swfpath + " -s flashversion=9 " + pdfpath + "" return_code = os.system(cmd) print(return_code) Search(r'G:\wordpdf\市局涉税表单填写范本(2017年4月)') #convert("G:/temp/A03051《企业所得税优惠事项备案表》.pdf","G:/temp/A03051《企业所得税优惠事项备案表》.swf")