皆さん!
そのため、タイトルが示すように、PDF を .png に変換しようとしています。ソフトウェア パッケージ ImageMagick を使用しています。このパッケージを使用して、Unity 3d プロジェクトからオンザフライで pdf を png に変換したいと考えています。これにより、アプリケーションは必要に応じてゲーム内で PDF を .png テクスチャとして表示できますが、小さいサイズの場合は PDF として保持します。ファイルサイズ。ここで何が間違っていたのかよくわかりませんが、Unityで実行すると、コマンドが含まれていない開いているcmdプロンプトしか表示されません。ここで私が見逃していることは明らかですか?コードは次のとおりです。
using UnityEngine;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Security.Policy;
public class CommandLineTest : MonoBehaviour {
// Use this for initialization
void Start () {
string convertedDirName = "ConvertedPDFs";
string currDir = System.Environment.CurrentDirectory;
System.IO.Directory.CreateDirectory(currDir + @"\" + convertedDirName);
string strCmdText;
strCmdText= @"/c " + currDir + @"\ImageMagick\convert.exe " + currDir + @"\PDFs\Appointment.pdf " + currDir + @"\" + convertedDirName + @"\" + "Appointment.png";
System.Diagnostics.Process.Start("CMD.exe",strCmdText);
//ImageMagick
print(strCmdText);
}
}
最後に print ステートメントを実行すると、次の文字列が出力されます: c/ convert /c F:\Documents and Settings\Administrator\Desktop\ImageMagickTest\ImageMagick\convert.exe F:\Documents and Settings\Administrator\Desktop\ImageMagickTest \PDFs\Appointment.pdf F:\Documents and Settings\Administrator\Desktop\ImageMagickTest\ConvertedPDFs\Appointment.png
あなたにとって、何か明らかに間違っているように見えますか?ImageMagick の変換アプリケーションは、実際にはシステムに「インストール」されていないことに注意してください。「ポータブル」バージョンを使用しているだけで、それをプロジェクト フォルダに放り込みました。そのため、「変換」コマンドラインがまだ機能することを望んでいました。これは、DOS プロンプトでアクセスできないということですか? できない場合、プロジェクトのフォルダーにあることがわかっている場合、imagemagickを使用して「変換」プログラムに画像を渡すにはどうすればよいですか?
編集: 一部の人々は、cmd.exe の代わりに convert.exe にアクセスし、その方法で画像パスをフィードすることを試みることを提案しています。だからここに私が試している2番目の方法があります:
strCmdText= currDir + @"\PDFs\Appointment.pdf" + " " + currDir + @"\" + convertedDirName + @"\" + "Appointment.png";
System.Diagnostics.Process.Start(currDir + @"\ImageMagick\convert.exe",strCmdText);