summaryrefslogtreecommitdiff
path: root/script-fu
diff options
context:
space:
mode:
authorPrzemysław <przem@prymula.ct8.pl>2026-04-06 17:52:56 +0200
committerPrzemysław <przem@prymula.ct8.pl>2026-04-06 17:52:56 +0200
commit6e0c917c31ea703eb50afccfca1967560a20a349 (patch)
treebb6036aa796d4d266377c833e902d4ee3aff0b47 /script-fu
parent447153a1de8f7280a2bb97c5d27128d6a0a3bd0b (diff)
przem-teal-portrait-look-v3.scm:2.260406-0
Diffstat (limited to 'script-fu')
-rw-r--r--script-fu/3.0/przem-teal-portrait-look-v3.scm126
-rw-r--r--script-fu/changelog.md3
2 files changed, 129 insertions, 0 deletions
diff --git a/script-fu/3.0/przem-teal-portrait-look-v3.scm b/script-fu/3.0/przem-teal-portrait-look-v3.scm
new file mode 100644
index 0000000..32a78c6
--- /dev/null
+++ b/script-fu/3.0/przem-teal-portrait-look-v3.scm
@@ -0,0 +1,126 @@
+; przem-teal-portrait-look-v3 - Fotografia portretowa na sterydach
+; 202604-06 - Przemysław R. Pietraszczyk
+; licence: Public Domain
+; ver. 2.260406-0
+; Ten script-fu wykorzystuje funkcje ze skryptu 'chrome-it.scm'
+; Autorstwa Spencer Kimball
+
+(define (shadows val)
+ (/ (* 0.96 val) 2.55))
+
+(define (midtones val)
+ (/ val 2.55))
+
+(define (highlights val)
+ ; The result is used as "gimp-drawable-color-balance" color parameter
+ ; and thus must be restricted to -100.0 <= highlights <= 100.0.
+ (min (/ (* 1.108 val) 2.55) 100.0))
+
+(define (rval col)
+ (car col))
+
+(define (gval col)
+ (cadr col))
+
+(define (bval col)
+ (caddr col))
+
+
+
+
+(define (saturation layer1 c1 c2 c3)
+
+ ; drawable, HUE-Range ( Red, Yellow, Green, Cyan, Blue, Magenta, or All),
+ ; Hue Offset (-180 180), lightness (-100 100), saturation (-100 100) overlap (0 100)
+ ; Lekko przygaszona saturacja globalnie
+ (gimp-drawable-hue-saturation layer1 HUE-RANGE-ALL
+ 0.0
+ 0.0
+ -10
+ 0.0)
+
+ ;Podbicie cyjanów / zieleni (turkus szalika, chłodniejsze tło)
+ (gimp-drawable-hue-saturation layer1 HUE-RANGE-CYAN
+ 5
+ 2
+ 15
+ 0.0)
+
+ (gimp-drawable-hue-saturation layer1 HUE-RANGE-GREEN
+ 3
+ 2
+ 10
+ 0.0)
+
+ ;Delikatne ocieplenie tonów skóry (czerwienie/żółcie)
+ (gimp-drawable-hue-saturation layer1 HUE-RANGE-RED
+ -3
+ 2
+ 8
+ 0.0)
+
+ (gimp-drawable-hue-saturation layer1 HUE-RANGE-YELLOW
+ -2
+ 1
+ 6
+ 0.0)
+
+ (gimp-drawable-color-balance layer1 TRANSFER-SHADOWS 1
+ (shadows (rval c1))
+ (shadows (gval c1))
+ (shadows (bval c1)))
+ (gimp-drawable-color-balance layer1 TRANSFER-MIDTONES 1
+ (midtones (rval c2)
+ (midtones (gval c2))
+ (midtones (bval c2))))
+ (gimp-drawable-color-balance layer1 TRANSFER-HIGHLIGHTS 2
+ (highlights (rval c3))
+ (highlights (gval c3))
+ (highlights (bval c3)))
+)
+
+(define (przem-teal-portrait-look-v3 img drawable)
+
+ (let* (
+ (ref-layer (vector-ref drawable 0))
+ (work-layer (car (gimp-layer-copy ref-layer TRUE)))
+ (the-layer 0)
+ ;cyan-red -5, magenta-green 0, yellow-blue +5
+ (c1 '(-5 0 5))
+ (c2 '(-3 0 3))
+ (c3 '(5 0 -3))
+ )
+ (gimp-context-push)
+ (gimp-image-undo-group-start img)
+
+
+ (gimp-selection-all img)
+ (set! the-layer (car (gimp-image-flatten img)))
+
+ ;; Delikatne przyciemnienie i zwiększenie kontrastu
+ ;; brightness: -5, contrast: 15
+ (gimp-drawable-brightness-contrast the-layer -0.5 0.15)
+
+ (gimp-image-insert-layer img work-layer 0 -1)
+ (saturation work-layer c1 c2 c3)
+ (gimp-layer-set-opacity work-layer 80)
+
+ (gimp-selection-none img)
+
+ (gimp-image-undo-group-end img)
+ (gimp-displays-flush)
+ (gimp-context-pop)
+ ))
+
+(script-fu-register-filter "przem-teal-portrait-look-v3"
+ _"_Teal portrait look"
+ _"Nadaje zdjęciu miękki portretowy look: lekko przygaszone kolory, podbity turkus, ocieplona skóra, umiarkowany kontrast."
+ "Przemyslaw R. Pietraszczyk"
+ "GPL v3"
+ "2026-04-06"
+ "RGB* GRAY*"
+ SF-ONE-OR-MORE-DRAWABLE
+)
+
+(script-fu-menu-register "przem-teal-portrait-look-v3"
+ "<Image>/Filters/PIETRASZCZYK/")
diff --git a/script-fu/changelog.md b/script-fu/changelog.md
index 07de5da..a10416e 100644
--- a/script-fu/changelog.md
+++ b/script-fu/changelog.md
@@ -1,3 +1,6 @@
+# 9.2260406-0] przem-teal-portrait-look-v3
+* Spojżenie na udany portret - nieskończone
+
# [2.260118-0] przem-surreal-v3
* Od teraz, filtr współpracuje z obrazami z odcieniami szarości