Welcome, Guest |
You have to register before you can post on our site.
|
Forum Statistics |
» Members: 4,780
» Latest member: Fennec72
» Forum threads: 7,594
» Forum posts: 41,394
Full Statistics
|
Latest Threads |
Is there any version wher...
Forum: Older Gimp versions (2.8, 2.6....)
Last Post: HavingTooMuchFun
3 hours ago
» Replies: 0
» Views: 47
|
How to make a watermark o...
Forum: General questions
Last Post: kyolim
Yesterday, 10:05 PM
» Replies: 5
» Views: 14,027
|
Linux command that does e...
Forum: Other graphics software
Last Post: rich2005
Yesterday, 06:06 PM
» Replies: 1
» Views: 353
|
reliable Gimp 2.10.38 dow...
Forum: Older Gimp versions (2.8, 2.6....)
Last Post: denzjos
Yesterday, 05:20 PM
» Replies: 2
» Views: 280
|
Batch Color Saturation
Forum: Extending the GIMP
Last Post: rich2005
Yesterday, 07:53 AM
» Replies: 15
» Views: 11,913
|
Photo play-time
Forum: Gallery
Last Post: Ofnuts
Yesterday, 07:32 AM
» Replies: 24
» Views: 21,757
|
BIMP plugin for GIMP 3.10
Forum: Extending the GIMP
Last Post: firefly
09-12-2025, 11:53 PM
» Replies: 2
» Views: 642
|
pl_stroke_arrows GIMP 3.0...
Forum: Extending the GIMP
Last Post: Scallact
09-12-2025, 04:03 PM
» Replies: 0
» Views: 295
|
How do you make text circ...
Forum: General questions
Last Post: rich2005
09-12-2025, 07:18 AM
» Replies: 12
» Views: 3,380
|
New Install, Black Screen...
Forum: OSX
Last Post: akhrameev
09-11-2025, 02:32 PM
» Replies: 3
» Views: 3,046
|
|
|
My Gimp 3.0 Plug-in (group_selected_layers) |
Posted by: Newman - 11-15-2024, 04:46 AM - Forum: Gimp 2.99 & Gimp 3.0
- Replies (11)
|
 |
Plug-in: group-selected-layers
Description: nests all currently selected layers inside a new group layer.
Tested and working on version 2.99.19 - commit fe6e1d7
Any feedback welcome 
Code:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
# SAMPLE PLUG-IN USED AS REFERENCE/TEMPLATE: test-file-plug-ins.py 2021-2024 Jacob Boerema
#
# Tested and working on version 2.99.19 - commit fe6e1d7
#
# Script path:
# ~/.config/GIMP/2.99/plug-ins/group_selected_layers/group_selected_layers.py
import sys
import gi
gi.require_version('Gimp', '3.0')
from gi.repository import Gimp
from gi.repository import GLib
VERSION = "0.2"
AUTHORS = "newinput"
COPYRIGHT = "newinput"
YEARS = "2023-2024"
class GroupSelectedLayers (Gimp.PlugIn):
def __init__(self):
Gimp.PlugIn.__init__(self)
self.test_cfg = None
self.log = None
## GimpPlugIn virtual methods ##
def do_set_i18n(self, _name):
# We don't support internationalization here...
return False
def do_query_procedures(self):
return [ 'group-selected-layers' ]
def do_create_procedure(self, name):
if name == 'group-selected-layers':
procedure = Gimp.ImageProcedure.new(self, name,
Gimp.PDBProcType.PLUGIN,
self.group_selected_layers, None)
procedure.set_image_types("*")
procedure.set_sensitivity_mask(Gimp.ProcedureSensitivityMask.ALWAYS)
procedure.set_menu_label('group-selected-layers-label')
procedure.add_menu_path('<Image>/Filters/Development/Python-Fu/')
procedure.set_documentation('Run group-selected-layers',
'Run group-selected-layers',
name)
else:
return None
procedure.set_attribution(AUTHORS, COPYRIGHT, YEARS)
return procedure
def group_selected_layers(self, procedure, run_mode, image,
n_drawables, config, run_data):
# => create new group
new_group = Gimp.GroupLayer.new(image, "my-new-group")
# => record currently selected layers
#
# (is needed since inserting a new layer replaces the current selection with just the newly inserted layer)
#
selected_layers = image.get_selected_layers()
parents = []
for layer in selected_layers:
parent = layer.get_parent()
if parent not in parents:
parents.append(parent)
# if same parents
# if all selected layers are under the same parent layer, nest the new group layer inside of it
if len(parents) == 1:
new_group_parent = parents[0]
topmost_position = min([image.get_item_position(layer) for layer in selected_layers])
# if different parents
# if selected layers are nested under different parent layers, insert group layer in the main stack, unnested
elif len(parents) > 1:
new_group_parent = None
topmost_position = 0
# if no parents found (should not happen)
# use main stack as default here to try and not break anything. should not be able to reach this point ever though.
else:
new_group_parent = None
topmost_position = 0
print("ERROR: could not get any parents from selected layers")
# => insert new group into image
image.insert_layer(
new_group, # group to insert
new_group_parent, # parent nest group inside of. None = unnested
topmost_position # index/stack-postition within parent (0 = insert as topmost layer within parent)
)
for selected_layer in selected_layers:
image.reorder_item(
selected_layer, # layer to reorder
new_group, # parent to nest inside
-1 # index/stack-postition within parent (-1 = insert as bottommost layer within parent)
)
return procedure.new_return_values(Gimp.PDBStatusType.SUCCESS, GLib.Error())
Gimp.main(GroupSelectedLayers.__gtype__, sys.argv)
Edit: a better version of the script is posted later on in this thread
|
|
|
Is layer Composite Space the wrong way round in GIMP? |
Posted by: jez9999 - 11-14-2024, 05:02 PM - Forum: General questions
- Replies (4)
|
 |
I've been looking into the GIMP Layers tab's "Composite Space" option, and I'm rather confused by it. Given a background of white pixels and a foreground of black pixels at 50% opacity, I'd expect the RGB linear colour space to give me sample merged pixels of 128,128,128 because that's about 50% of 255,255,255. However, with RGB (linear) selected I actually get pixels of 188,188,188 - significantly lighter.
When I select RGB (perceptual), though, I actually get the result I'd have expected from the linear model; pixels are darker at 128,128,128 - half way between white and black.
Is this a bug with GIMP's options here being the wrong way round, or am I misunderstanding something?
|
|
|
Change Default Text |
Posted by: DarrellS - 11-14-2024, 04:28 PM - Forum: General questions
- Replies (3)
|
 |
How do you change the default text in version 2.10.38 (revision 1)?
I would like my text to be bold without having to click the Bold button every time I create text.
I wouldn't need to do this but ever since Gimp updated on it's own to this version, my text has been so thin I can hardly read it. It looks like the same font but it looks different than the text that was created using the earlier version.
|
|
|
Controlling Hue Chroma ? |
Posted by: Alpha504 - 11-14-2024, 07:45 AM - Forum: Scripting questions
- Replies (6)
|
 |
Hi,
I would like to modify the hue-chroma of some images.
I tried the following function:
Code:
(gimp-drawable-hue-chroma drawable MODE-REPLACE -60 20 0 100.0)
But it gives me an error:
Code:
Error: eval: unbound variable: gimp-drawable-hue-chroma
If someone knows which command to use and what are the parameters ?
|
|
|
Resize and convert a SVG image using a gimp script ? |
Posted by: Alpha504 - 11-12-2024, 04:24 PM - Forum: Scripting questions
- Replies (9)
|
 |
I'm using gimp 2.10 on a Debian 12 system.
My gimp script successfully convert the SVG to PNG, but it doesn't resize it.
Here is my script ~/.config/GIMP/2.10/scripts/convertresize.scm:
Code:
(define (convertresize in_filename out_filename width height)
(let* (
(image (car (gimp-file-load RUN-NONINTERACTIVE in_filename "")))
(drawable (car (gimp-image-get-active-layer image)))
(gimp-image-scale-full image width height INTERPOLATION-CUBIC)
(gimp-layer-resize-to-image-size drawable)
)
(gimp-file-save RUN-NONINTERACTIVE image drawable out_filename out_filename)
(gimp-image-delete image)
)
)
I launch it with the following command:
Code:
gimp -i -b '(convertresize "./image.svg" "./image.png" 24 24)' -b '(gimp-quit 0)'
So, if someone knows what I'm doing wrong ?
|
|
|
|