File tree Expand file tree Collapse file tree 1 file changed +24
-1
lines changed
SDWebImageSwiftUI/Classes Expand file tree Collapse file tree 1 file changed +24
-1
lines changed Original file line number Diff line number Diff line change @@ -17,6 +17,10 @@ public struct WebImage : View {
17
17
var placeholder : AnyView ?
18
18
var retryOnAppear : Bool = true
19
19
var cancelOnDisappear : Bool = true
20
+
21
+ #if !os(macOS)
22
+ var renderingMode : UIImage . RenderingMode ? = nil
23
+ #endif
20
24
21
25
@ObservedObject var imageManager : ImageManager
22
26
@@ -123,6 +127,12 @@ public struct WebImage : View {
123
127
#if os(macOS)
124
128
result = Image ( nsImage: image)
125
129
#else
130
+ var image = image
131
+
132
+ if let renderingMode = self . renderingMode {
133
+ image = image. withRenderingMode ( renderingMode)
134
+ }
135
+
126
136
// Fix the SwiftUI.Image rendering issue, like when use EXIF UIImage, the `.aspectRatio` does not works. SwiftUI's Bug :)
127
137
// See issue #101
128
138
var cgImage : CGImage ?
@@ -209,7 +219,20 @@ extension WebImage {
209
219
/// Configurate this view's rendering mode.
210
220
/// - Parameter renderingMode: The resizing mode
211
221
public func renderingMode( _ renderingMode: Image . TemplateRenderingMode ? ) -> WebImage {
212
- configure { $0. renderingMode ( renderingMode) }
222
+ var result = configure { $0. renderingMode ( renderingMode) }
223
+
224
+ #if !os(macOS)
225
+ switch renderingMode {
226
+ case . original:
227
+ result. renderingMode = . alwaysOriginal
228
+ case . template:
229
+ result. renderingMode = . alwaysTemplate
230
+ case nil :
231
+ result. renderingMode = . automatic
232
+ }
233
+ #endif
234
+
235
+ return result
213
236
}
214
237
215
238
/// Configurate this view's image interpolation quality
You can’t perform that action at this time.
0 commit comments