On Wed, Jun 18, 2014 at 3:19 PM, Joao S. O. Bueno <gwidion@xxxxxxxxx> wrote: > On 18 June 2014 07:43, Vladimir Rutsky <rutsky.vladimir@xxxxxxxxx> wrote: >> On Wed, Jun 18, 2014 at 7:32 AM, Joao S. O. Bueno <gwidion@xxxxxxxxx> wrote: >>> From Python, in GIMP 2.8, you have to make calls to whatever is >>> available via the PDB, but >>> for some calls that have been shortened as methods of Image, Layer and >>> other objects (but internally, >>> most things happen through the PDB anyway). >>> >>> >>> So, you have to call either "pdb.gimp_file_save" and specify the file >>> format via the file-name extension, >>> or call "pdb.file_bmp_save". For both cases you have to passin a >>> drawable to be saved, meaning that if you >>> want to save an existingimage, you hvae to preceed these calls with >>> the equivalent of these two lines: >>> >>> saving_image = pdb.gimp_image_duplicate(img) >>> saving_drawable = pdb.gimp_image_merge_visible_layers(saving_image) >>> >>> then you have a drawable to save, with all the visible image contents, >>> but without messing >>> with the image the user sees. After saving, call >>> "pdb.gimp_image_delete(saving_image)" - to recover >>> the resources used by the temporary image, >>> >>> js >>> -><- >> >> Thank for your reply, but this doesn't solves my problem. >> >> merge_visible_layers() doesn't behave as gimp_export_image(): it only >> merges image layers to single layer. >> I need not only to merge them, but also to convert to proper image >> format suitable for me (e.g. convert to RGB from GRAY or RGBA) and >> probably some other convertions. > > so, just do the needed conversions through further PDB calls. > as you can see, gimp_export_image is not available to plug-ins as of > gimp 2.8 series. > (yes, it should be, and yes you can open a bug report requesting that > so that we don't forget about it, > but this is an API change, so it will just be there for GIMP 2.10 anyway). Ok, thank you for clarification. I filed bug: https://bugzilla.gnome.org/show_bug.cgi?id=731843 Why it can be released sooner? I'm not familiar with GIMP development process, but I think exporting additional function doesn't break backward compatibility of API. If I'll submit patches for this issue, when I can expect to see it in some official release of GIMP (in case patches will be accepted)? -- Vladimir Rutsky > > > js > -><- > >> >> And gimp_export_image() designed specifically for my task. >> >> According to it's sources >> (https://git.gnome.org/browse/gimp/tree/libgimp/gimpexport.c) there >> are quite a lot of steps and not so trivial logic that should be done >> to obtain result image, and I don't want to reimplement this >> functionality, I want to call gimp_export_image(). >> >>> >>> >>> >>> >>> On 17 June 2014 19:43, Vladimir Rutsky <rutsky.vladimir@xxxxxxxxx> wrote: >>>> Hello! >>>> >>>> I'm trying to write export plugin for custom image format in Python. >>>> >>>> Looking at plugins implemented in C, e.g. gimp/plug-ins/file-bmp/bmp.c, and >>>> docs (http://developer.gimp.org/api/2.0/libgimp/libgimp-gimpexport.html) >>>> I see, that best and recommended way to convert user image to single layer >>>> image with proper capabilities is by using gimp_export_image() function. >>>> >>>> How gimp_export_image() can be called from Python? >>>> >>>> I can't find it exported Python modules and looks like it's not accessible >>>> via PDB either. >>>> >>>> If it's not available, can you advice proper alternative? Should I report >>>> missing gimp_export_image() function in bug tracker? >>>> >>>> >>>> Thanks in advance, >>>> >>>> Vladimir Rutsky >>>> >>>> _______________________________________________ >>>> gimp-developer-list mailing list >>>> List address: gimp-developer-list@xxxxxxxxx >>>> List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list >>>> List archives: https://mail.gnome.org/archives/gimp-developer-list >> >> >> -- >> Vladimir Rutsky _______________________________________________ gimp-developer-list mailing list List address: gimp-developer-list@xxxxxxxxx List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list List archives: https://mail.gnome.org/archives/gimp-developer-list