问题表现:Word转换成pdf调用office本身的另存为,js报错,无明显错误提示,仅某些文件出现该问题。
原因分析:与文件有关系,查看用户时doc文档,先调用了保存为兼容格式的方法然后调用保存为pdf的方法,客户端为WPS,如果是在wps的客户端新建的doc文件走这样的代码流程没有问题,有问题的文档只调用保存为PDF文件的方法没有问题。
解决办法:严格判断文件内部数据是否为doc格式,如果是调用保存文档的方法,如果不是再调用保存为兼容格式的方法。获取文件数据实际格式方法如下:
function getsavefarmat(){
var dtype = TANGER_OCX_OBJ.doctype;
var sformat;
var docformat;
if(dtype == 1||dtype==6){
sformat = TANGER_OCX_OBJ.ActiveDocument.SaveFormat;
if(sformat=="12"){
docformat = "docx";
}else if(sformat=="0"){
docformat = "doc";
}
}else if(dtype == 2){
TANGER_OCX_OBJ.Activate(true);
sformat = TANGER_OCX_OBJ.ActiveDocument.Application.ActiveWorkbook.FileFormat;
if(sformat=="51"){
docformat = "xlsx";
}else if(sformat=="56"){
docformat = "xls";
}
}
alert("saveformat"+sformat);
return docformat;
}
|