김프 푸 (gimp fu)를 사용하면 하나의 레이어를 저장할 수 있습니다 (적어도 이라는 매개 변수를 사용하므로 gimp_file_save
의 정의를 보간합니다). 내가 이미지를 저장 pdb.gimp_file_save(img, drawable, '/temp/tq84_write_text.png', '?')
를 사용하는 경우김프의 스크립트 fu로 모든 레이어를 저장 (내보내기)하려면 어떻게해야합니까?
from gimpfu import *
def write_text():
width = 400
height = 100
img = gimp.Image(width, height, RGB)
img.disable_undo()
gimp.set_foreground((255, 100, 20))
gimp.set_background(( 0, 15, 40))
background_layer = gimp.Layer(
img,
'Background',
width,
height,
RGB_IMAGE,
100,
NORMAL_MODE)
img.add_layer(background_layer, 0)
background_layer.fill(BACKGROUND_FILL)
text_layer = pdb.gimp_text_fontname(
img,
None,
60,
40,
'Here is some text',
0,
True,
30,
PIXELS,
'Courier New'
)
drawable = pdb.gimp_image_active_drawable(img)
# Either export text layer ...
# pdb.gimp_file_save(img, drawable, '/temp/tq84_write_text.png', '?')
# .... or background layer:
pdb.gimp_file_save(img, background_layer, '/temp/tq84_write_text.png', '?')
register(
proc_name = 'tq84_write_text',
blurb = 'tq84_write_text',
help = 'Create some text',
author = 'Rene Nyffenegger',
copyright = 'Rene Nyffenegger',
date = '2014',
label = '<Toolbox>/Xtns/Languages/Python-Fu/_TQ84/_Text',
imagetypes = '',
params = [],
results = [],
function = write_text
)
main()
, 그것은 단지 "텍스트"레이어를 내 보냅니다 :
지금, 나는 다음과 같은 스크립트를 가지고있다. 그러나 pdb.gimp_file_save(img, background_layer, '/temp/tq84_write_text.png', '?')
을 사용하면 배경 만 내보낼 수 있습니다. 그렇다면 두 레이어를 하나의 이미지로 내보내려면 어떻게해야합니까 (메뉴 File -> Export As
처럼).
중복 된 http://stackoverflow.com/questions/15482280/gimp-python-fu-exporting-file-only-exports-transparent-layer? –