如何在Python-Fu中使用file_ico_save为不同的图标层设置属性?

问题描述

我正在使用以下代码在GIMP中使用Python-Fu成功创建图标:

pdb.gimp_palette_set_background('green')
image = pdb.gimp_image_new(256,256,RGB)
image.new_layer(pos=1,fill_mode = BACKGROUND_FILL)
fileName = 'C:\\favicon.ico'
pdb.file_ico_save(image,None,fileName,fileName)
pdb.gimp_image_delete(image)

当我手动将图像导出为.ico时,我可以设置不同的属性,例如压缩,bpp,alpha位,调色板等。认情况下,最大层将使用压缩保存,不建议使用。手动,我可以取消选中压缩。但是使用pdb.file_ico_save以编程方式保存图标不会提供这些设置。

使用pdb.file_ico_save保存图标时,如何设置图标层的不同属性

解决方法

根据我认为是源代码的判断:https://gitlab.gnome.org/GNOME/gimp/-/blob/gimp-2-10/plug-ins/file-ico/ico-save.c 您无法控制这些参数。看起来该代码试图对要使用的正确值进行智能猜测,例如,如果width | height大于255,则进行压缩