我让ChatGPT帮我搓一个脚本,就是用不了。使用 ffmpeg.exe 水平合并选中的两张图片。它写得有板有眼的,就是用不了。看看它写得有什么问题。
function OnClick(clickData) {
var cmd = clickData.func.command;
cmd.deselect = false; // Prevent automatic deselection
// 获取选中的文件
var selectedFiles = clickData.func.sourcetab.selected_files;
if (selectedFiles.count < 2) {
DOpus.Output("请选中至少两张图片进行合并!");
return;
}
// 构建 ffmpeg 命令
var ffmpegPath = 'C:\\Path\\To\\ffmpeg.exe'; // 请修改为 ffmpeg.exe 的实际路径
var inputFiles = '';
for (var i = 0; i < selectedFiles.count; i++) {
inputFiles += '-i "' + selectedFiles(i).realpath + '" ';
}
// 构建滤镜命令
var filter = 'hstack=inputs=' + selectedFiles.count;
// 生成合并命令
var outputFile = selectedFiles(0).path + '\\output.jpg';
var cmdLine = ffmpegPath + ' ' + inputFiles + '-filter_complex "' + filter + '" "' + outputFile + '"';
// 运行命令
var shell = new ActiveXObject("WScript.Shell");
shell.Run(cmdLine, 0, true);
DOpus.Output("合并完成!输出文件: " + outputFile);
}