コマンド ラインから GNUWin32 tiffcp.exe を使用して、いくつかの tiff イメージ ファイルを取得し、それらを 1 つの tiff イメージ ファイルにマージする Web アプリを構築しています。
私が行っていた方法は、ファイル リストをループしてファイル名の文字列を作成し、1 つの変数にマージすることでした。
strfileList = "c:folder\folder\folder\aased98-def-wsdeff-434fsdsd-dvv.tif c:folder\folder\folder\aased98-def-wsdeff-434fsdsd-axs.tif c:folder\folder\folder\aased98 -def-wsdeff-434fsdsd-dxzs.tif"
次に、コマンドラインに次のように書き込みます。
tiffcp.exe strFileList results.tif
ファイル名は guid であるため、パスはかなり長く、短縮することはできません。したがって、これらのドキュメントが大量にある場合 (20 ファイル以上)、文字列変数の長さが Windows コマンド ラインの制限を超え、マージが失敗します。
このプロセスはファイルをマージするだけなので、次に考えたのは、ファイル名を文字列に書き込む代わりに、一度に 1 つのファイルをマージすることでした。したがって、ループが最初に実行されるのは、次のタイプのコードです。
tiffcp.exe file1.tif results.tif
その結果、完璧な 476k の tif ファイルが作成されます。ただし、ループの次の繰り返しでは、2 番目のファイルと最初の「結果」tif ファイルの内容をマージする必要があります。だから私はこれを行います:
tiffcp.exe results.tif file2.tiff results.tif
結果は毎回空白の 1K tiff ファイルですか?
私が見つけることができるtiffcp.exeのすべての例はfile1.tif file2.tif results.tifと言いますが、結果ファイルを使用してそれ自体に書き戻すものはありませんか?
これを行う方法に関する提案はありますか?