如何解决使用ExifTool以编程方式从.indd文件中提取缩略图
我可以从命令行执行以下命令,效果很好
exiftool -r -b -PageImage sample.indd > sample.jpg
我的示例代码
string c_arguments = string.Format("-r -b -PageImage {0} > {1}",_DirectoryPath + "\\" + fileName,_DirectoryPath + "\\output.jpg");
var psi = new processstartinfo("exiftool.exe",c_arguments);
psi.UseShellExecute = false;
psi.CreateNowindow = true;
psi.RedirectStandardInput = true;
psi.RedirectStandardOutput = true;
try
{
using (Process exeProcess = Process.Start(psi))
{
exeProcess.Start();
Console.WriteLine("Executed successfully");
}
}
catch (Exception ex)
{
Console.WriteLine("Error occured,ErrorMsg: " + ex.Message);
}
在exeProcess.Start()执行之后,程序将永远等待,直到没有任何输出。
我在这里想念什么。
解决方法
示例命令行的> sample.jpg
部分是shell重定向,并且是您所使用的shell / terminal / CMD的功能。从程序中启动exiftool时,此功能不可用(请参见this related StackOverflow answer)。
您可能会研究-w
(-textout
) option。请参阅this example command,它比您所需的要复杂,但是应该在创建所需命令方面提供帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。