7

今日からGIMPを使い始めました。GIMPで手動でキャンバスのサイズを変更すると(画像サイズよりも小さくなるように)、画像を移動して表示可能な領域を「変更」できます。これをスクリプトで複製するにはどうすればよいですか? つまり、キャンバスのサイズ変更ステップでスクリプトを一時停止し、画像を正しく配置できるようにする必要があります。

私が質問している理由: 画像の正方形のサムネイルを作成する小さなスクリプトを作成しました。これを行う方法は、高さと幅が同じになるようにキャンバスのサイズを変更することです。高さと幅が異なる場合は、2 つのうち高い方を変更して、低い方と同じになるようにします (たとえば、600x500 は 500x500 になります)。次に、画像を平坦化し、必要に応じて拡大縮小します。

(if (>= width height)
    (begin
        (gimp-image-resize image height height 0 0)
    )
    (begin
        (gimp-image-resize image width width 0 0)
    )
)

キャンバスのサイズを変更するために使用しているコードは上記のとおりです。gimp-image-resize コマンドの最後の 2 つの値がオフセットを参照していることはわかっています。これは、スクリプトがこのステップに達したときに手動で変更したいものです。どんな助けでも大歓迎です。ありがとう!

4

1 に答える 1

5

あなたのコードは機能しますか?もしそうなら、これが同じコードの見栄えの良いバージョンです:

(let ((smaller-edge (min width height)))
  (gimp-image-resize image smaller-edge smaller-edge 0 0))
于 2010-10-07T06:38:34.997 に答える