您是否尝试过遇到的批处理脚本?阅读 ImageJ 提供的批处理示例让我相信它适用于您的示例。如果你还没有测试过,你应该这样做(你可以在你的实际宏的位置输入一个类似“print(list [i])”的命令,同时测试你的文件查找部分是否正常工作。
要合并两个不同的脚本,最简单的选择是使它们成为单独的函数。IE:
// function to scan folders/subfolders/files to find files with correct suffix
function processFolder(input) {
list = getFileList(input);
list = Array.sort(list);
for (i = 0; i < list.length; i++) {
if(File.isDirectory(input + File.separator + list[i]))
processFolder(input + File.separator + list[i]);
if(endsWith(list[i], suffix))
processFile(input, output, list[i]);
processOtherWay(input, output, list[i]);
}
}
function processFile(input, output, file) {
// Do the processing here by adding your own code.
// Leave the print statements until things work, then remove them.
print("Processing: " + input + File.separator + file);
print("Saving to: " + output);
}
function processOtherWay(input, output, file) {
// Do the processing here by adding your own code.
// Leave the print statements until things work, then remove them.
print("Processing: " + input + File.separator + file);
print("Saving to: " + output);
}
如果目标不是在完全相同的图像上运行它们,那么再次使它们成为独立的函数,并将脚本的文件夹排序部分分为两部分,一个用于功能 1,一个用于功能 2。