From 985241a8b374517f12e632c7850c7328e2e2be60 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Tue, 10 May 2022 00:43:28 -0400 Subject: [PATCH] Support a couple more Photoshop blend modes --- Dependencies/PSDWriter/Shared/PSDLayer.h | 5 ++++- Dependencies/PSDWriter/Shared/PSDWriter.m | 8 ++++++++ SilicaViewer/AppDelegate.swift | 6 +++--- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/Dependencies/PSDWriter/Shared/PSDLayer.h b/Dependencies/PSDWriter/Shared/PSDLayer.h index 5071b97..847517d 100755 --- a/Dependencies/PSDWriter/Shared/PSDLayer.h +++ b/Dependencies/PSDWriter/Shared/PSDLayer.h @@ -49,7 +49,10 @@ kPSDBlendModeScreen, kPSDBlendModeColorDodge, kPSDBlendModeLinearDodge, - kPSDBlendModeLighter + kPSDBlendModeLighter, + + kPSDBlendModeVividLight, + kPSDBlendModeHardLight }; @property (nonatomic, assign) NSInteger blendMode; diff --git a/Dependencies/PSDWriter/Shared/PSDWriter.m b/Dependencies/PSDWriter/Shared/PSDWriter.m index 143f6ae..c299551 100755 --- a/Dependencies/PSDWriter/Shared/PSDWriter.m +++ b/Dependencies/PSDWriter/Shared/PSDWriter.m @@ -39,6 +39,11 @@ char blendModeHueKey[4] = {'h','u','e',' '}; char blendModeSatKey[4] = {'s','a','t',' '}; char blendModeColKey[4] = {'c','o','l','r'}; char blendModeLumKey[4] = {'l','u','m',' '}; + +char blendModevLiteKey[4] = {'v','L','i','t'}; +char blendModehLiteKey[4] = {'h','L','i','t'}; + + char *blendModes[36] = { &blendModeNormKey, &blendModeDissKey, @@ -55,6 +60,9 @@ char *blendModes[36] = &blendModeLddgKey, &blendModeLgClKey, + &blendModevLiteKey, + &blendModehLiteKey, + 0 }; diff --git a/SilicaViewer/AppDelegate.swift b/SilicaViewer/AppDelegate.swift index c85ddda..464d49c 100644 --- a/SilicaViewer/AppDelegate.swift +++ b/SilicaViewer/AppDelegate.swift @@ -66,7 +66,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations { return kPSDBlendModeScreen } if layer.data.blendMode == 13 { - //blendMode = kPSDBlendModeHardLight + return kPSDBlendModeHardLight } if layer.data.blendMode == 9 { return kPSDBlendModeColorDodge @@ -82,7 +82,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations { //blendMode = kPSDBlendModeLighterColor } if layer.data.extendedBlend == 21 { - //blendMode = kPSDBlendModeVividLight + return kPSDBlendModeVividLight } if layer.data.extendedBlend == 22 { //blendMode = kPSdBlendModeLinearLight @@ -105,7 +105,7 @@ class AppDelegate: NSObject, NSApplicationDelegate, NSUserInterfaceValidations { //return .softLight } if layer.data.blendMode == 12 { - //return .hardLight + return kPSDBlendModeHardLight } if layer.data.blendMode == 6 { //return .difference