-1

すべてのファイル パスがわかっている場合、convert.exe にイメージ ファイル パスを渡すにはどうすればよいですか?

ImageMagick はインストールされていませんが、プロジェクト フォルダーにのみインストールされています。cmdプロンプトを介して画像ファイルパスを渡すことになっているとは思いません。

これが私の現在の試みです。エラーは発生しません-しかし、cmdプロンプトがすぐにポップアップしてすぐに消えます-画面が表示されたときに画面を印刷しましたが、userparamsについて何かを言っています...どうやらImageMagickと関係があるようです。

Unity を使用せずにコマンド プロンプトで同じコマンドを直接実行すると (以下のコードを実行するために使用しています)、次のようになります。

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

    F:\Documents and Settings\Administrator>F:\ImageMagickTest\ImageMagick\convert.e
    xe F:\ImageMagickTest\PDFs\Appointment.pdf F:\ImageMagickTest\ConvertedPDFs\Appo
    intment.png
    Unrecoverable error: rangecheck in .setuserparams
    Operand stack:
        --nostringval--  --nostringval--  --nostringval--
    START 0 2588256 1246519 1476808 192904 true 1139 5 <3>
    END PROCS 0 2588256 1257818 1476808 194288 true 1138 5 <3>
    gs_std_e.ps 0 2608352 1263873 1496904 199000 true 1138 5 <6>
    gs_il1_e.ps 0 2608352 1266056 1496904 199000 true 1138 5 <9>
    END FONTDIR/ENCS 0 2608352 1266234 1496904 199000 true 1138 5 <15>
    END DEVS 0 2611856 1273266 1496904 199000 true 1138 5 <15>
    END STATD 0 2611856 1280422 1496904 200624 true 1138 5 <39>
    END GS_FONTS 0 2641800 1309596 1496904 200624 true 1139 5 <45>
    END BASIC COLOR 15 2661896 1319485 1496904 200624 true 1137 5 <48>
    END LEVEL 1 COLOR 15 2661896 1321213 1496904 200624 true 1137 5 <51>
    END IMAGE 15 2661896 1324515 1496904 200624 true 1137 5 <54>
    gs_btokn.ps 15 2661896 1327957 1496904 200624 true 996 4 <57>
    gs_dps1.ps 15 2661896 1329302 1496904 200624 true 996 4 <57>
    gs_dps2.ps 15 2661896 1331309 1496904 200624 true 996 4 <57>
    gs_type1.ps 15 2681992 1336187 1496904 200624 true 996 4 <57>
    While reading gs_lev2.ps:
    %%[ Error: invalidaccess; OffendingCommand: put ]%%
    START 322159 2736608 1402076 1496904 202880 true 1000 7 <92>
    END PROCS 322159 2756704 1416711 1496904 204264 true 998 7 <92>
    gs_std_e.ps 322159 2756704 1419438 1496904 205648 true 998 7 <95>
    gs_il1_e.ps 322159 2756704 1421621 1496904 205648 true 998 7 <98>
    END FONTDIR/ENCS 322159 2756704 1421799 1496904 205648 true 998 7 <104>
    END DEVS 322159 2760208 1428831 1496904 205648 true 998 7 <104>
    END STATD 322159 2780304 1439315 1496904 207272 true 998 7 <128>
    END GS_FONTS 322159 2800400 1466811 1496904 207272 true 998 7 <134>
    END BASIC COLOR 322159 2820496 1476700 1496904 207272 true 996 7 <137>
    END LEVEL 1 COLOR 322159 2820496 1478428 1496904 207272 true 996 7 <140>
    END IMAGE 322159 2820496 1481730 1496904 207272 true 996 7 <143>
    gs_btokn.ps 322159 2820496 1485172 1496904 207272 true 996 7 <146>
    gs_dps1.ps 322159 2820496 1486517 1496904 207272 true 996 7 <146>
    gs_dps2.ps 322159 2820496 1488524 1496904 207272 true 996 7 <146>
    gs_type1.ps 322159 2820496 1490098 1496904 207272 true 996 7 <146>
    While reading gs_lev2.ps:
    %%[ Error: invalidaccess; OffendingCommand: put ]%%

    F:\Documents and Settings\Administrator>

とにかく、述べたように、私は何が間違っているのか分かりません。同じ問題を引き起こしているソフトウェアのコードは次のとおりです。

    string currDir = System.Environment.CurrentDirectory;
    string convertPath = currDir + @"\ImageMagick\convert.exe";
    string convertedDir = currDir + @"\ConvertedPDFs\";
    string pdfFolder = currDir + @"\PDFs\";
    string fileName = "Appointment";
    //System.IO.Directory.CreateDirectory(currDir + @"\" + convertedDirName);
    string argumentForImageMagick;


    argumentForImageMagick = pdfFolder + fileName + ".pdf" + " " + convertedDir + fileName + ".png";
    ProcessStartInfo info = new ProcessStartInfo {Arguments = argumentForImageMagick , FileName = convertPath};
    System.Diagnostics.Process.Start(info).WaitForExit();

ProcessStartInfo インスタンスの引数とファイルパスを出力すると、

F:\ImageMagickTest\PDFs\Appointment.pdf
F:\ImageMagickTest\ConvertedPDFs\Appointment.png

引数のために、そして

F:\ImageMagickTest\ImageMagick\convert.exe

ファイルパス用。

何がうまくいかないのですか?

4

1 に答える 1

0

わかりました、問題の一部がわかりました -- Ghostscript をインストールする必要がありました。ホストコンピューターにソフトウェアをインストールできないため、これは機能しません...しかし、何が問題だったのかがわかりました。ありがとう。

私の次の質問は、基本的に、ホスト コンピューターにインストールせずに Ghostscript を実行できるかどうかです...

于 2012-11-09T04:32:08.563 に答える