0

画像のタイル配列を作成する ImageMagick の拡張である Montage を使用する PHP スクリプトを作成しています。モンタージュの構文は単純です。

montage image1.png image2.png image3.png -tile x1 -geometry 50x50 out.png

ただし、私はこれらのイメージをオンザフライで生成しており、このコマンドを実行するためだけにイメージをディスクに書き込む必要はありません。リソースをファイルに書き込まずに渡す方法はありますか?

(これは実際にはモンタージュの質問ではなく、さまざまな状況に適用できる一般的な質問です。)

どんな助けでも素晴らしいでしょう!

4

2 に答える 2

1

私がコメントしたように、あなたはそのようないくつかのtmpfsファイルシステム(例えばdf | grep tmpfs)を見つけて/runあなたのファイルを中に入れることができました。その後、仮想メモリ内に存在します(通常、ディスクI / Oは必要ありません)。もちろん、彼らが取るスペースは仮想メモリリソースを消費しています(したがって制限されています)。

ところで、多くのLinuxシステムでは、小さなファイルを書き込むと、ファイルシステムのキャッシュにあるため、ディスクI/Oをあまり使用しません。

もちろん、どのtmpfsファイルシステムも再起動するたびにすべてのコンテンツが失われるため、回復不能な重要なデータを内部に保持する必要はありません。

于 2012-10-06T11:48:07.240 に答える
0

ImageMagick には、C と PHP の両方の API があります。PHP IMagick にはモンタージュ フックがあるようです。

http://us3.php.net/manual/en/imagick.montageimage.php

PHP IMagick の使用に関する一般情報: http://us3.php.net/manual/en/imagick.examples-1.php

于 2012-10-06T06:45:20.833 に答える