Welcome, Guest |
You have to register before you can post on our site.
|
Latest Threads |
Is there any version wher...
Forum: Older Gimp versions (2.8, 2.6....)
Last Post: HavingTooMuchFun
18 minutes ago
» Replies: 0
» Views: 3
|
How to make a watermark o...
Forum: General questions
Last Post: kyolim
Yesterday, 10:05 PM
» Replies: 5
» Views: 14,002
|
Linux command that does e...
Forum: Other graphics software
Last Post: rich2005
Yesterday, 06:06 PM
» Replies: 1
» Views: 335
|
reliable Gimp 2.10.38 dow...
Forum: Older Gimp versions (2.8, 2.6....)
Last Post: denzjos
Yesterday, 05:20 PM
» Replies: 2
» Views: 260
|
Batch Color Saturation
Forum: Extending the GIMP
Last Post: rich2005
Yesterday, 07:53 AM
» Replies: 15
» Views: 11,890
|
Photo play-time
Forum: Gallery
Last Post: Ofnuts
Yesterday, 07:32 AM
» Replies: 24
» Views: 21,735
|
BIMP plugin for GIMP 3.10
Forum: Extending the GIMP
Last Post: firefly
09-12-2025, 11:53 PM
» Replies: 2
» Views: 624
|
pl_stroke_arrows GIMP 3.0...
Forum: Extending the GIMP
Last Post: Scallact
09-12-2025, 04:03 PM
» Replies: 0
» Views: 280
|
How do you make text circ...
Forum: General questions
Last Post: rich2005
09-12-2025, 07:18 AM
» Replies: 12
» Views: 3,365
|
New Install, Black Screen...
Forum: OSX
Last Post: akhrameev
09-11-2025, 02:32 PM
» Replies: 3
» Views: 3,026
|
|
|
Output positioning options used by Gimp when printing to CUPS |
Posted by: raccarva - 01-18-2022, 12:38 PM - Forum: General questions
- Replies (3)
|
 |
I am trying to figure out what CUPS (or would it be lpd/lpr?) printing options Gimp uses to set the output position when you print an image.
When you set the Left/Top fields in the "Position" print dialog tab, I guess Gimp uses some job printing options through CUPS/lpd/lpr to adjust the output image on the media.
I need this information so that I can try to print images (outside Gimp) in the same position regardless of the printer being used.
Does anyone have this information?
Thanks.
|
|
|
Single Dose - Glossy stroke 3d.py |
Posted by: Krikor - 01-18-2022, 10:54 AM - Forum: Extending the GIMP
- Replies (22)
|
 |
Hello everyone!
Plugin: glossy_stroke_3d.py; (I don't remember where I got it)
Author Eric Leroy;
Date: 2010;
Problem:
The plugin only works once for every Gimp restart.
After a single use, the plugin stops responding. Requiring the Gimp to be restarted so that in just one more instance the plugin will run again.
The plugin can be found in <Image>/Filters/Light and Shadow
Would it be possible to detect the cause of this problem and somehow fix it?
PHP Code:
#! /usr/bin/env python
############################################################################### # The GIMP -- GNU image manipulation program # Copyright (c) 1995-2010 # Spencer Kimball, Peter Mattis and the GIMP Development Team # # glossystroke3d # Version 1.2.0 (For the GIMP 2.6), 15 Dec 2010 # Stroke the current selection, create a 3D effect and a dropped shadow # Adapted from the tutorial: "iText tutorial" of Craig Marshall & Phil Harper. # Published in http://gug.criticalhit.dk/tutorials/itext2/ # # Copyright (c) 2010 Eric Leroy (eral) kelk1@hotmail.com # ----------------------------------------------------------------------------- # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # ###############################################################################
from gimpfu import *
def python_glossy_stroke_3d( img, layer, fg_color, brush, stroke, rounding, ls_color, ls_z, glow, bright, shine, polish, sh_color, ds_x, ds_y, ds_blur, ds_opac) :
pdb.gimp_undo_push_group_start(img)
# save some values cur_color = pdb.gimp_context_get_foreground() cur_brush = pdb.gimp_context_get_brush() img_w = pdb.gimp_image_width(img) img_h = pdb.gimp_image_height(img) cur_sel = pdb.gimp_selection_save(img)
# stroke the selection stroke_layer = pdb.gimp_layer_new( img, # IMAGE img_w, # WIDTH img_h, # HEIGHT RGBA_IMAGE, # RGBA TYPE "stroke_layer", # NAME 100, # OPACITY NORMAL_MODE # NORMAL MODE ) pdb.gimp_image_add_layer(img, stroke_layer, -1) pdb.gimp_image_set_active_layer(img, stroke_layer) pdb.gimp_context_set_foreground(fg_color) pdb.gimp_context_set_brush(brush) if stroke == 0: pdb.gimp_edit_stroke(stroke_layer) else: pdb.gimp_edit_bucket_fill( stroke_layer, # DRAWABLE FG_BUCKET_FILL, # FILL W/ FG NORMAL_MODE, # NORMAL PAINT MODE 100.0, # 100% opacity 0, # TRESHOLD False, # DO NOT USE THE COMPOSITE IMG 0, # NOT USED 0 # NOT USED )
# save selected stroke to channel pdb.gimp_selection_layer_alpha(stroke_layer) sel_chan = pdb.gimp_selection_save(img)
# create volume pdb.gimp_selection_shrink(img, rounding) volume_layer = pdb.gimp_layer_new( img, # IMAGE img_w, # WIDTH img_h, # HEIGHT RGBA_IMAGE, # RGBA TYPE "volume_layer", # NAME 100, # OPACITY NORMAL_MODE # NORMAL MODE ) pdb.gimp_image_add_layer(img, volume_layer, -1) pdb.gimp_image_set_active_layer(img, volume_layer) pdb.gimp_context_set_foreground((255, 255, 255)) pdb.gimp_edit_bucket_fill( volume_layer, # DRAWABLE FG_BUCKET_FILL, # FILL W/ FG NORMAL_MODE, # NORMAL PAINT MODE 100.0, # 100% opacity 0, # TRESHOLD False, # DO NOT USE THE COMPOSITE IMG 0, # NOT USED 0 # NOT USED ) pdb.gimp_selection_none(img) pdb.plug_in_gauss( img, # IMAGE volume_layer, # DRAWABLE rounding * 2.0, # HORIZONTAL BLURRING RADIUS rounding * 2.0, # VERTICAL BLURRING RADIUS 0 # IIR (0) OR RLE (1) ) pdb.gimp_layer_set_mode(volume_layer, OVERLAY_MODE) volume_layer_copy = pdb.gimp_layer_copy(volume_layer, True) pdb.gimp_image_add_layer(img, volume_layer_copy, -1)
# create lighting effect pdb.gimp_image_set_active_channel(img, sel_chan) pdb.plug_in_gauss(img, sel_chan, rounding * 2.0, rounding * 2.0, 0) glossy_layer = pdb.gimp_layer_new( img, # IMAGE img_w, # WIDTH img_h, # HEIGHT RGBA_IMAGE, # RGBA TYPE "glossy_layer", # NAME 100, # OPACITY SCREEN_MODE # SCREEN ) pdb.gimp_image_add_layer(img, glossy_layer, -1) pdb.gimp_image_set_active_layer(img, glossy_layer) pdb.gimp_selection_load(sel_chan) pdb.gimp_context_set_foreground((0, 0, 0)) pdb.gimp_edit_bucket_fill( glossy_layer, # DRAWABLE FG_BUCKET_FILL, # FILL W/ FG NORMAL_MODE, # NORMAL PAINT MODE 100.0, # 100% opacity 0, # TRESHOLD False, # DO NOT USE THE COMPOSITE IMG 0, # NOT USED 0 # NOT USED ) pdb.gimp_selection_none(img) if ds_x > ds_y: if ds_y == 0: ls_x = -ds_x ls_y = 0 else: ls_x = -ds_x / abs(ds_y) ls_y = -ds_y / abs(ds_y) else: if ds_x == 0: ls_x = 0 ls_y = -ds_y else: ls_x = -ds_x / abs(ds_x) ls_y = -ds_y / abs(ds_x)
pdb.plug_in_lighting( img, # IMAGE glossy_layer, # DRAWABLE sel_chan, # BUMP MAP None, # ENVIRONMENT MAP True, # ENABLE BUMPMAPPING False, # DISABLE ENVMAPPING 0, # LINEAR BUMPMAP 1, # DIRECTIONAL LIGHT SOURCE ls_color, # WHITE LIGHT SOURCE ls_x, # LIGHT POSITION X ls_y, # LIGHT POSITION Y ls_z, # LIGHT POSITION Z ls_x, # LIGHT DIRECTION X ls_y, # LIGHT DIRECTION Y ls_z, # LIGHT DIRECTION Z glow, # AMBIANT INTENSITY (GLOWING) bright, # DIFFUSE INTENSITY (BRIGHT) bright, # DIFFUSE REFLECTIVITY shine, # SPECULAR REFLECTIVITY (SHINY) polish, # HIGHLIGHT (POLISHED) True, # ANTIALIASING False, # SAME IMAGE False # TRANSPARENT BACKGROUND )
# drop shadow pdb.gimp_image_set_active_layer(img, stroke_layer) act_lay = pdb.gimp_image_get_active_layer(img) pdb.gimp_selection_layer_alpha(act_lay) pdb.script_fu_drop_shadow( img, # IMAGE act_lay, # MASK LAYER ds_x, # X OFFSET ds_y, # Y OFFSET ds_blur, # BLUR RADIUS sh_color, # SHADOW COLOR ds_opac, # SHADOW LAYER OPACITY True # ALLOW RESIZING )
# restore initial state pdb.gimp_image_resize( img, # IMAGE img_w, # WIDTH img_h, # HEIGHT 0, # X OFFSET 0 # Y OFFSET ) pdb.gimp_selection_load(cur_sel) pdb.gimp_image_remove_channel(img, cur_sel) pdb.gimp_image_remove_channel(img, sel_chan) pdb.gimp_image_set_active_layer(img, layer) pdb.gimp_context_set_foreground(cur_color) pdb.gimp_context_set_brush(cur_brush)
pdb.gimp_undo_push_group_end(img) return
register( "python_fu_glossy_stroke_3d", "Stroke with a glossy 3-D effect and a dropped shadow", "Stroke with a glossy 3-D effect and a dropped shadow", "Eric Leroy", "Eric Leroy", "2010", "GlossyStroke 3D", "*", [ (PF_IMAGE, "image", "Input image", None), (PF_DRAWABLE, "drawable", "Input layer", None), (PF_COLOR, "fg_color", "Color:", (0, 157, 255)), (PF_BRUSH, "brush", "Stroking brush:", None), (PF_OPTION, "stroke", "Selection:", 0, ["Stroke", "Fill"]), (PF_SPINNER, "rounding", "3D amount:", 2, (0, 50, 1)), (PF_COLOR, "ls_color", "Light color:", (255, 255, 255)), (PF_SPINNER, "ls_z", "Light height:", 0.5, (0.0, 20.0, 0.1)), (PF_SPINNER, "glow", "Glowing:", 5.0, (0.0, 100000, 0.01)), (PF_SPINNER, "bright", "Brightness:", 1.00, (0.0, 100000, 0.01)), (PF_SPINNER, "shine", "Shiny:", 5.0, (0.0, 100000, 0.01)), (PF_SPINNER, "polish", "Polish:", 30.0, (0.0, 100000, 0.01)), (PF_COLOR, "sh_color", "Shadow color:", (0, 0, 0)), (PF_SPINNER, "ds_x", "Shadow offset X:", 10, (-50, 50, 1)), (PF_SPINNER, "ds_y", "Shadow offset Y:", 10, (-50, 50, 1)), (PF_SPINNER, "ds_blur", "Shadow blur radius:", 15, (0, 50, 1)), (PF_SLIDER, "ds_opac", "Shadow opacity:", 80, (0, 100, 1)) ], [], python_glossy_stroke_3d, menu="<Image>/Filters/Light and Shadow")
main()
Thanks for listening!
|
|
|
How to move text? |
Posted by: nothing - 01-18-2022, 05:54 AM - Forum: General questions
- Replies (2)
|
 |
There are two layers. One is a background image and another one is text. The text is above the image. Every time I move the text with the move tool, the image is moved mostly.
It works sometimes, but not mostly. Why does it happen and how do I figure it out?
|
|
|
Transparency when resize. |
Posted by: nothing - 01-17-2022, 08:02 AM - Forum: General questions
- Replies (2)
|
 |
Every time I resize a layer, I can't see the bottom layer.
For instance: There are Layer 1 and Layer 2. The Layer 2 is over the Layer 1. I resize the Layer 2 and can't see the Layer 1, so I can't resize the Layer 2 whatever I want.
Is there a way to make the upper layer transparent?
|
|
|
|