![](/img/trans.png)
[英]Error when calling gimp-drawable-set-pixel in gimp's python console
[英]How do I draw pixels with GIMP Python's gimp-drawable-set-pixel?
目前我有这个代码:
def my_script_function(image, drawable, text_value, int_value) :
pixel = [0,0, 255, 255]
for i in range(1,1600):
for j in range(1,1600):
pdb.gimp_drawable_set_pixel(drawable, i, j, 4, pixel)
#gimp.set_background(02, 100, 255)
pdb.gimp_image_flip( image, ORIENTATION_HORIZONTAL )
return
pdb.gimp_image_flip( image, ORIENTATION_HORIZONTAL )
工作正常,但是, pdb.gimp_drawable_set_pixel(drawable, i, j, 4, pixel)
返回此错误:
Traceback (most recent call last):
File "C:\Program Files\GIMP 2\32\lib\gimp\2.0\python\gimpfu.py", line 699, in response
dialog.res = run_script(params)
File "C:\Program Files\GIMP 2\32\lib\gimp\2.0\python\gimpfu.py", line 361, in run_script
return apply(function, params)
File "C:\Program Files\GIMP 2\lib\gimp\2.0\plug-ins\Example1.py", line 15, in my_script_function
pdb.gimp_drawable_set_pixel(drawable, i, j, 4, pixel)
RuntimeError: execution error
其中,只是告诉我它没有运行pdb.gimp_drawable_set_pixel(drawable, i, j, 4, pixel)
如果你想尝试一下,这是整个脚本:
#!/usr/bin/env python
from gimpfu import *
# create an output function that redirects to gimp's Error Console
def gprint( text ):
pdb.gimp_message(text)
return
# our script
def my_script_function(image, drawable, text_value, int_value) :
pixel = [0,0, 255, 255]
for i in range(1,1600):
for j in range(1,1600):
pdb.gimp_drawable_set_pixel(drawable, i, j, 4, pixel)
#gimp.set_background(02, 100, 255)
pdb.gimp_image_flip( image, ORIENTATION_HORIZONTAL )
return
# This is the plugin registration function
register(
"my_first_script2",
"Hamburger",
"This script draws some stuff2",
"asdf",
"asdf Company",
"asdf 2015",
"<Image>/MyScripts/My First Python-Fu",
"*",
[
(PF_STRING, 'some_text', 'Some text input for our plugin', 'Write something'),
(PF_INT, 'some_integer', 'Some number input for our plugin', 2010)
],
[],
my_script_function,
)
main()
guint8 pixel[] = { 0xff, 0, 0, 0xff };
是C不是python而且是无效的python语法试试:
pixel = [0xff, 0, 0, 0xff]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.