From 6e0c917c31ea703eb50afccfca1967560a20a349 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw?= Date: Mon, 6 Apr 2026 17:52:56 +0200 Subject: przem-teal-portrait-look-v3.scm:2.260406-0 --- script-fu/3.0/przem-teal-portrait-look-v3.scm | 126 ++++++++++++++++++++++++++ script-fu/changelog.md | 3 + 2 files changed, 129 insertions(+) create mode 100644 script-fu/3.0/przem-teal-portrait-look-v3.scm 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" + "/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 -- cgit v1.2.3