/usr/share/gimp/2.0/scripts/tuxcomputers-split-tone.scm is in gimp-plugin-registry 7.20140602ubuntu3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 | ; Split Tone is a script for The GIMP
;
; This script converts an image to one that has one colour for highlights
; and one for shadows.
;
; The script is located in "<Image> / Script-Fu / Colours / Split Tone..."
;
; Last changed: 13th October 2008
;
; Copyright (C) 2007 Harry Phillips <script-fu@tux.com.au>
;
; --------------------------------------------------------------------
;
; Changelog:
; Version 1.10 (13th October 2008)
; - Some fixes by elsamuko <elsamuko@web.de>
;
; Version 1.9 (12th September 2008)
; - Optional edge detection by elsamuko <elsamuko@web.de>
;
; Version 1.8 (8th August 2007)
; - Removed redundant code by designing a single function that does all
; the actions
;
; Version 1.7 (5th August 2007)
; - Added GPLv3 licence
; - Menu location at the top of the script
; - Removed the "script-fu-menu-register" section
;
; Version 1.6
; - Made the script compatible with GIMP 2.3
;
; --------------------------------------------------------------------
;
; 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 3 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, you can view the GNU General Public
; License version 3 at the web site http://www.gnu.org/licenses/gpl-3.0.html
; Alternatively you can write to the Free Software Foundation, Inc., 675 Mass
; Ave, Cambridge, MA 02139, USA.
;
;
;
(define (tuxcomputers-split-tone theImage theLayer
highColour highOpacity
shadColour shadOpacity
edgeDetection)
(let*( (layerEdgeDetect (car (gimp-layer-copy theLayer FALSE)))
;Read the current colours
(myBackground (car (gimp-context-get-background)))
;Read the image width and height
(imageWidth (car (gimp-image-width theImage)))
(imageHeight (car (gimp-image-height theImage)))
)
;define helper function
(define (layer-colour-add image layer layermask
name width height
colour opacity
invertMask)
(let* ((layerCopy (car (gimp-layer-copy layer 1)))
(newLayer (car (gimp-layer-new image width height 1 "Overlay" 100 5)))
(mergedLayer 0)
(mask 0)
)
;main layer
(gimp-context-set-background colour)
(gimp-image-add-layer image layerCopy 0)
(gimp-drawable-set-name layerCopy name)
;overlay layer
(gimp-image-add-layer image newLayer 0)
(gimp-layer-set-mode newLayer 5)
(gimp-edit-fill newLayer 1)
(set! mergedLayer (car (gimp-image-merge-down image newLayer 0)))
;Add a layer mask
(set! mask (car (gimp-layer-create-mask layermask 5)))
(gimp-layer-add-mask mergedLayer mask)
(if (= invertMask TRUE) (gimp-invert mask))
;Change the merged layers opacity
(gimp-layer-set-opacity mergedLayer opacity)
)
) ;end of layer-colour-add
;init
(gimp-image-undo-group-start theImage)
(gimp-selection-none theImage)
(if (= (car (gimp-drawable-is-gray theLayer )) TRUE)
(gimp-image-convert-rgb theImage)
)
;Edge Detection
(if (= edgeDetection TRUE)
(begin
(gimp-image-add-layer theImage layerEdgeDetect 1)
(plug-in-edge 1 theImage layerEdgeDetect 2.0 1 0)
)
)
;Desaturate the layer
(gimp-desaturate theLayer)
;Add the shadows layer
(layer-colour-add theImage theLayer layerEdgeDetect
"Shadows"
imageWidth imageHeight
shadColour shadOpacity
TRUE)
;Add the highlights layer
(layer-colour-add theImage theLayer layerEdgeDetect
"Highlights"
imageWidth imageHeight
highColour highOpacity
FALSE)
;tidy up
(gimp-image-undo-group-end theImage)
(gimp-context-set-background myBackground)
(gimp-displays-flush)
)
)
(script-fu-register "tuxcomputers-split-tone"
_"_Split Tone with ED"
"Turns a B&W image into a split tone image"
"Harry Phillips"
"Harry Phillips"
"Feb. 03 2006"
"*"
SF-IMAGE "Image" 0
SF-DRAWABLE "Drawable" 0
SF-COLOR _"Highlight colour" '(255 144 0)
SF-ADJUSTMENT _"Highlight opacity" '(100 0 100 1 1 0 0)
SF-COLOR _"Shadows colour" '(0 204 255)
SF-ADJUSTMENT _"Shadow opacity" '(100 0 100 1 1 0 0)
SF-TOGGLE _"Edge Detection" FALSE
)
(script-fu-menu-register "tuxcomputers-split-tone" _"<Image>/Script-Fu/Color")
|