0

皆さん!

そのため、タイトルが示すように、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);
4

1 に答える 1

1

他のコマンド ( などdir) を使用して、ファイル システムのどこにいるのか、何が問題なのかを調べてみてください。

また、ポータブル バージョンを使用していて、それがパスにない場合は、同じディレクトリから実行する必要があることに注意してください。

于 2012-11-08T13:31:43.670 に答える