added an example gimp-python plugin for applying some filters to a list of files (non-interactively)
This commit is contained in:
parent
76fc4d77cf
commit
f20773d915
1 changed files with 74 additions and 0 deletions
74
python-gimp/batch_converter.py
Executable file
74
python-gimp/batch_converter.py
Executable file
|
@ -0,0 +1,74 @@
|
|||
#!/usr/bin/env python
|
||||
#
|
||||
# Requisites:
|
||||
# install vignette plugin: http://blog.tigion.de/2008/07/19/gimp-script-fu-photo-vignette/
|
||||
# link this script to ~/.gimp-2.6/plug-ins/
|
||||
#
|
||||
# How to run:
|
||||
# start gimp
|
||||
# click (maybe twice) at the "Batch mode" menu entry (next to "Help")
|
||||
# choose a file, that contains a list of absolute filenames of pictures (one per line)
|
||||
#
|
||||
# The resulting pictures are placed besides the originals with the given prefix (default: "converted_").
|
||||
#
|
||||
# Adapt the settings below to your needs!
|
||||
#
|
||||
|
||||
import gimp
|
||||
import gimpfu
|
||||
import sys
|
||||
import os
|
||||
|
||||
FILE_PREFIX = "converted_"
|
||||
|
||||
# default: 7
|
||||
CARTOON_RADIUS = 30
|
||||
# default: 0.2
|
||||
CARTOON_BLACK = 0.4
|
||||
# default: 2
|
||||
POSTERIZE_COLORS = 4
|
||||
# default: (0, 0, 0)
|
||||
VIGNETTE_COLOR = (0, 0, 0)
|
||||
# default: 60 (%) (Deckkraft)
|
||||
VIGNETTE_COVERAGE = 60
|
||||
# default: 5
|
||||
VIGNETTE_RADIUS = 5
|
||||
# default: 75 (Haerte)
|
||||
VIGNETTE_STRENGTH = 75
|
||||
|
||||
|
||||
def get_output_filename(infilename):
|
||||
return os.path.join(os.path.dirname(infilename), FILE_PREFIX + os.path.basename(infilename))
|
||||
|
||||
|
||||
def handle_file(infilename):
|
||||
#pic = gimp.pdb.file_jpeg_load(infilename, gimpfu.RUN_NONINTERACTIVE)
|
||||
pic = gimp.pdb.gimp_file_load(infilename, gimpfu.RUN_NONINTERACTIVE)
|
||||
layer = pic.layers[0]
|
||||
gimp.pdb.plug_in_cartoon(pic, layer, CARTOON_RADIUS, CARTOON_BLACK)
|
||||
gimp.pdb.gimp_posterize(layer, POSTERIZE_COLORS)
|
||||
gimp.pdb.script_fu_photo_vignette(pic, layer,
|
||||
VIGNETTE_COLOR, VIGNETTE_COVERAGE, VIGNETTE_RADIUS, VIGNETTE_STRENGTH)
|
||||
output_filename = get_output_filename(infilename)
|
||||
gimp.pdb.gimp_file_save(pic, layer, output_filename, output_filename, run_mode=gimpfu.RUN_NONINTERACTIVE)
|
||||
|
||||
|
||||
def read_filelist(listfile):
|
||||
for line in file(listfile).read().splitlines():
|
||||
handle_file(line)
|
||||
|
||||
|
||||
gimpfu.register(
|
||||
"python_fu_batch_convert",
|
||||
"Convert some pictures via batch mode",
|
||||
"Convert some pictures via batch mode",
|
||||
"Lars Kruse",
|
||||
"Lars Kruse",
|
||||
"2009",
|
||||
"<Toolbox>/Batch mode...", "",
|
||||
[ (gimpfu.PF_FILE, "listfile", "Listendatei", "") ],
|
||||
[],
|
||||
read_filelist)
|
||||
|
||||
gimpfu.main()
|
||||
|
Loading…
Reference in a new issue