用户扫描文档后-我想允许他们选择保存文件的位置,保存文件,最后将路径返回到他们刚刚保存的文件。
我正在尝试使用“ OnGetFilePath”事件,但是它不起作用。
JS代码在这里:
var DWObject;
Dynamsoft.WebTwainEnv.AutoLoad = false;
Dynamsoft.WebTwainEnv.RegisterEvent('OnWebTwainReady', Dynamsoft_OnReady);
function LoadEnv() {
Dynamsoft.WebTwainEnv.Load();
}
function Dynamsoft_OnReady() {
DWObject = Dynamsoft.WebTwainEnv.GetWebTwain('dwtcontrolContainer');
if (DWObject) {
DWObject.IfShowFileDialog = true;
DWObject.RegisterEvent('OnGetFilePath', OnGetFilePath);
DWObject.SelectSource(function () {
DWObject.OpenSource();
DWObject.IfDisableSourceAfterAcquire = true;
DWObject.AcquireImage(OnAcquireImageSuccess, OnAcquireImageFailure);
}, function () {
console.log('SelectSource failed!');
});
}
}
function OnAcquireImageSuccess() {
console.log('Successfully aquired image');
SavePDF();
DWObject.CloseSource();
}
//File saved to disk successfully
function SavePDF() {
DWObject.SaveAsPDF('file.pdf');
}
//Not Fired
function OnGetFilePath(bSave, filesCount, index, path, filename) {
console.log("File Path!");
}
答案 0 :(得分:2)
这就是我所做的,我认为它将为您提供帮助。
我在online_demo_scan.html的“扫描”按钮旁边添加了一个按钮
我在online_demo_operation.js中向Dynamsoft_OnGetFilePath添加了警报
函数Dynamsoft_OnGetFilePath(b保存,计数,索引,路径,名称){ alert('OnGetFilePath事件被触发!'); }
当我单击按钮时,事件就会触发。
根据文档
当1. ShowFileDialog方法具有 完成2.方法LoadImageEx已经以IfShowFileDialog完成 设置为true。
编辑:一些其他代码,用于显示事件触发后如何保存文件。
function Dynamsoft_OnGetFilePath(bSave, count, index, path, name) {
var file_path = path + "\\" + name + ".pdf";
DWObject.IfShowFileDialog = false;
DWObject.SaveAsPDF(file_path);
alert(file_path);
}