import pathlib
import os
import sys
def export_scaled_img(img_width, img_height, scale):
procedure = Gimp.get_pdb().lookup_procedure("file-svg-load")
config = procedure.create_config()
config.set_property("file", Gio.file_new_for_path('@SRCDIR@/gimp-logo.svg'))
logo_dim = img_height * 0.71
config.set_property("width", logo_dim)
config.set_property("height", logo_dim)
v = Gimp.Procedure.run(procedure, config)
if v.index(0) != Gimp.PDBStatusType.SUCCESS:
sys.exit(70)
image = v.index(1)
image.undo_disable()
image.resize(img_width, img_height, (img_width-logo_dim)/2, (img_height-logo_dim)/2)
procedure = Gimp.get_pdb().lookup_procedure("file-bmp-export")
config = procedure.create_config()
drawables = image.get_selected_drawables()
config.set_property("image", image)
config.set_property("rgb-format", "rgba-8888")
config.set_property("file", Gio.file_new_for_path('build/windows/installer/gimp.scale-' + scale + '.bmp'))
v = Gimp.Procedure.run(procedure, config)
if v.index(0) != Gimp.PDBStatusType.SUCCESS:
sys.exit(70)
# https://jrsoftware.org/ishelp/index.php?topic=setup_wizardsmallimagefile
export_scaled_img(58, 58, '100')
export_scaled_img(71, 71, '125')
export_scaled_img(85, 85, '150')
export_scaled_img(103, 103, '175')
export_scaled_img(112, 112, '200')
export_scaled_img(129, 129, '225')
export_scaled_img(147, 147, '250')
# Avoid the images being re-generated at each build.
pathlib.Path('gimp-data/images/logo/stamp-installicon.bmp').touch()
[Dauer der Verarbeitung: 0.2 Sekunden, vorverarbeitet 2026-10-27]