スポンサーリンク

| キーワード:

Gimp Script-Fu 画像レイヤー,テキストレイヤー , パスをそれぞれ取得

パス一覧

パス一覧は (gimp-image-get-vectors 画像番号) で取得できる

> (gimp-image-get-vectors 1)
(2 #(10 9))
> (gimp-layer-get-name 10)
("パス(曲線)")
> (gimp-layer-get-name 9)
("パス(写真1)")

レイヤー一覧

gimp-image-get-layersで取得できるのだが、vectorではなくlistでほしいのでラップする。

; レイヤー一覧
(define (get-layer-list image)
  (vector->list 
    (car 
      (cdr 
        (gimp-image-get-layers image)
      )
    )
  )
)
> (get-layer-list 1)
(8 7 2 22)

レイヤー一覧から、テキストレイヤーの一覧を取得する

レイヤーに対して、gimp-drawable-is-text-layerでテキストレイヤーかどうかを判定できる。

; imagelistの中からテキストレイヤーだけを抽出する
(define (get-text-layers imagelist)
  (if ( null? imagelist )
    '()
     (if (= 1 (car (gimp-drawable-is-text-layer (car imagelist) ) ) )
       (cons
         (car imagelist)
         (get-text-layers (cdr imagelist) )
       )
       (get-text-layers (cdr imagelist) )
     )
  )
)
> ( get-text-layers (get-layer-list 1) )
(8 7)
> (gimp-layer-get-name 8)
("青")
> (gimp-layer-get-name 7)
("写真1")

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)


この記事のトラックバックURL: