Problem with correct colours in python script - Printable Version +- Gimp-Forum.net (https://www.gimp-forum.net) +-- Forum: GIMP (https://www.gimp-forum.net/Forum-GIMP) +--- Forum: Extending the GIMP (https://www.gimp-forum.net/Forum-Extending-the-GIMP) +---- Forum: Scripting questions (https://www.gimp-forum.net/Forum-Scripting-questions) +---- Thread: Problem with correct colours in python script (/Thread-Problem-with-correct-colours-in-python-script) Pages:
1
2
|
Problem with correct colours in python script - david - 12-06-2021 I have created a small script which fills a transparent layer with a colour. If I carry out the procedure manually I get the correct colour, but when I do it in Python the colour is incorrect. The example detailed below the colour is D37518 Hex - 211, 117, 24 Decimal. The relevant piece of the code is: Tone = pdb.gimp_layer_new(image, width, height, type, "Tone", opacity, mode) #new empty layer image.add_layer(Tone, 0) if colour == 0: sepia = gimpcolor.RGB(211,66,20) pdb.gimp_context_set_foreground(sepia) pdb.gimp_drawable_edit_fill(Tone, FILL_FOREGROUND) If I run the code then check the inserted colour with the eyedropper I get the result in the screenshot. No doubt something silly I am doing! RE: Problem with correct colours in python script - programmer_ceds - 12-06-2021 (12-06-2021, 04:16 PM)david Wrote: I have created a small script which fills a transparent layer with a colour. If I carry out the procedure manually I get the correct colour, but when I do it in Python the colour is incorrect. The example detailed below the colour is D37518 Hex - 211, 117, 24 Decimal. So what sets the foreground colour if colour != 0 ? RE: Problem with correct colours in python script - david - 12-06-2021 I forgot to add to my original post: GIMP 2.10.28 running under ubuntu 20.04. In case it is relevant I have attached the complete code. i just gave the one example, but the other four options with different colours are also incorrect. RE: Problem with correct colours in python script - programmer_ceds - 12-06-2021 (12-06-2021, 07:32 PM)david Wrote: I forgot to add to my original post: GIMP 2.10.28 running under ubuntu 20.04. I'm puzzled. I downloaded your script and to start with I was getting different values with the colour picker to those that were being set. I tried changing a few things and then could only get the correct values. I even deleted the version I had been playing with and re-downloaded the script - it still worked. I am starting GIMP 2.10.28, creating a new RGB 8-bit image filled with the background colour of white. Image mode = RGB, precision = 8-bit with perceptual gamma (sRGB), colour management enabled. Then I run your script but have to make the lower two layer invisible before the picker gives the (expected) results. RE: Problem with correct colours in python script - Ofnuts - 12-06-2021 Works for me. Is your image color indexed? Your code only considers Grayscale or else. Your long if/else screams for an array/list or better: https://www.gimp-forum.net/Thread-Python-scripts-handling-PF-OPTION-and-PF-RADIO-choices-by-name Your registration method is deprecated. RE: Problem with correct colours in python script - programmer_ceds - 12-07-2021 Just tired on another system and it works for me all the time - not sure what I was seeing last night - probably just too tired :-) RE: Problem with correct colours in python script - david - 12-07-2021 Many thanks for the replies. I have carried out more tests this morning. The results are absolutely consistent. I used RGB and Grey images (which are converted to RGB), 8 bit precision, but have tried up to 32 bit floating point with the same results. I measured the result after converting the layer mode from soft-light to normal. With colour selected as white: FFFFFF 255,255,255 the measured result is: C5C5C5 197,197,197 With colour selected as red: FF0000 255,0,0 the measured result is: C50000 197,0,0 Similarly for green and blue. With colour selected as grey: 7F7F7F 127,127,127 the measured result is: 616161 97,97,97 The result is consistently 0.77 (decimal) of the correct value. Any suggestions for tests to resolve this problem are most welcome. RE: Problem with correct colours in python script - programmer_ceds - 12-07-2021 (12-07-2021, 11:40 AM)david Wrote: Many thanks for the replies.Could you post the image that you are starting with - or if you are creating a new image the exact steps that you are using (including the settings under Advanced Options of the Create a New Image dialog? Not doubting what you see, we just need to work out the difference between what you are doing and what Ofnuts and I are doing. What settings do you have in Preferences/Colour Management? RE: Problem with correct colours in python script - david - 12-07-2021 programmer_ceds, Thanks for the reply. I am getting the same consistent results with all the photographs I have tried - jpg and tif format - recent and going back as far as 2009. I have attached a typical picture. However, I had to scale it to get within the size limits set by the site, but I have confirmed that it gives the same result. RE: Problem with correct colours in python script - programmer_ceds - 12-07-2021 I still don't see a problem when I load your image (even with the colour management settings the same). Just to be clear, in order to get the colour-picker readings I am making the lower two layers invisible - just leaving the Tone layer. |