From 37c3febd1ee72e19af573dd2808a70e23995282f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Przemys=C5=82aw=20R=2E=20Pietraszczyk?= Date: Sun, 1 Nov 2026 18:20:52 +0100 Subject: 2.261101-1:przem-retro-portrait-v3.scm --- script-fu/3.x/przem-lomochrome-turquoise-v3x.scm | 2 +- script-fu/SNAPSHOTS/przem-retro-portrait-v3.scm | 83 ++++++++++++++++++++++++ script-fu/changelog.md | 3 + 3 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 script-fu/SNAPSHOTS/przem-retro-portrait-v3.scm (limited to 'script-fu') diff --git a/script-fu/3.x/przem-lomochrome-turquoise-v3x.scm b/script-fu/3.x/przem-lomochrome-turquoise-v3x.scm index c71eeee..3c704d0 100644 --- a/script-fu/3.x/przem-lomochrome-turquoise-v3x.scm +++ b/script-fu/3.x/przem-lomochrome-turquoise-v3x.scm @@ -16,7 +16,7 @@ ;; Kanał Zielony: zamienia się miejscami, dostając komponenty czerwieni i niebieskiego ;; Kanał Niebieski: zostaje zdominowany przez zieleń i czerwień (Złoto/Pomarańcz) (gimp-drawable-merge-new-filter base-layer - "gegl:channel-mixer" "CHannel-mixed" LAYER-MODE-REPLACE 0.95 "rr-gain" 0.0 "rg-gain" 0.6 "rb-gain" 0.4 "gr-gain" 0.4 "gg-gain" 0.0 "gb-gain" 0.6 "br-gain" 0.8 "bg-gain" 0.2 "bb-gain" 0.0) + "gegl:channel-mixer" "Channel-mixed" LAYER-MODE-REPLACE 0.95 "rr-gain" 0.0 "rg-gain" 0.6 "rb-gain" 0.4 "gr-gain" 0.4 "gg-gain" 0.0 "gb-gain" 0.6 "br-gain" 0.8 "bg-gain" 0.2 "bb-gain" 0.0) ;; Opcjonalne delikatne podbicie kontrastu i saturacji dla stylu Lomo (gimp-drawable-merge-new-filter base-layer "gegl:color-enhance" "color-enhance" LAYER-MODE-REPLACE 0.90) diff --git a/script-fu/SNAPSHOTS/przem-retro-portrait-v3.scm b/script-fu/SNAPSHOTS/przem-retro-portrait-v3.scm new file mode 100644 index 0000000..08f1ce7 --- /dev/null +++ b/script-fu/SNAPSHOTS/przem-retro-portrait-v3.scm @@ -0,0 +1,83 @@ +; przem-retro-portrait-v3x - Luźne nawiązanie do starej fotografii +; Przmeysław R. Pietraszczyk +; 2026-11-01 +; ver 2.261101-1 +; editor: Kate +; license: Public domain +; Ten script-fu wykorzystuje funkcje ze skryptu 'chrome-it.scm' +; Autorstwa Spencer Kimball + +(define (midtones val) + (/ val 2.55)) + +(define (rval col) + (car col)) + +(define (gval col) + (cadr col)) + +(define (bval col) + (caddr col)) + +(define (color-balance layer) + (let* ( + (c1 '(10 0 -10)) + ) + (gimp-drawable-color-balance layer TRANSFER-MIDTONES 1 + (midtones (rval c1)) + (midtones (gval c1)) + (midtones (bval c1))))) + +(define (przem-retro-portrait-v3x image drawable) + + (let* ( + (layer (vector-ref drawable 0)) + (type (car (gimp-drawable-type-with-alpha layer))) + (blur-layer 0) + (color-layer 0) + ) + + (gimp-context-push) + (gimp-image-undo-group-start image) + ;; Desaturacja + ;(if (= type RGBA-IMAGE) + ; (gimp-drawable-desaturate layer DESATURATE-LIGHTNESS)) + + (gimp-layer-set-mode layer 0) ; NORMAL mode + (set! blur-layer (car (gimp-layer-copy layer TRUE))) + (set! color-layer (car (gimp-layer-copy layer TRUE))) + + ;; jeśli obraz jest szary to konwertuje go na RGB - tak na sztukę + ;(if (> (car (gimp-drawable-type layer)) 1) + ; (gimp-image-convert-rgb image)) + + (gimp-image-insert-layer image blur-layer 0 -1) + (gimp-image-insert-layer image color-layer 0 -1) + + (gimp-drawable-merge-new-filter blur-layer "gegl:gaussian-blur" RUN-NONINTERACTIVE LAYER-MODE-REPLACE 0.45 "std-dev-x" 10.0 "std-dev-y" 10.0 "filter" "auto") + (gimp-layer-set-mode blur-layer LAYER-MODE-NORMAL) ; NORMAL mode + (gimp-image-merge-down image blur-layer EXPAND-AS-NECESSARY) + + ;# W GIMP 3.0 używamy operacji GEGL przez PDB dla uzyskania ziarna + (gimp-drawable-merge-new-filter layer "gegl:noise-rgb" RUN-NONINTERACTIVE LAYER-MODE-REPLACE 0.85 "red" 0.05 "green" 0.05 "blue" 0.05 "alpha" 0.0 "seed" 0) + + ;# Delikatne przesunięcie kolorów w stronę żółci/czerwieni w cieniach i półtonach + (color-balance color-layer) + (gimp-layer-set-mode color-layer LAYER-MODE-NORMAL) ; NORMAL mode + (gimp-layer-set-opacity color-layer 80) + + (gimp-image-undo-group-end image) + (gimp-displays-flush) + (gimp-context-pop) + )) +(script-fu-register-filter "przem-retro-portrait-v3x" + _"The Atmosphere of Analog Portrait" + _"Stworzenie klimatu czarno-białego portretu analogowego z ziarnem i miękkim światłem" + "P.R.P." + "Public Domain" + "2026-11-01" + "RGB*" + SF-ONE-OR-MORE-DRAWABLE +) + +(script-fu-menu-register "przem-retro-portrait-v3x" "/Filters/PIETRASZCZYK/") diff --git a/script-fu/changelog.md b/script-fu/changelog.md index 8672d4a..ff6e53e 100644 --- a/script-fu/changelog.md +++ b/script-fu/changelog.md @@ -1,3 +1,6 @@ +# [2.261101-1] przem-retro-portrait-v3.scm +* Nowy filtr nawiązujący do starej fotografii - SNAPSHOT + # [2.261101-0] przem-lomochrome-turquoise-v3x.scm * Nowy filtr nawiązujący do filmu LomoChrome Turquoise -- cgit v1.2.3