Commit 8b7b680
committed
Add ICC profile embedding support for WebP encoding
- Extract ICC profile from input color space using CGColorSpaceCopyICCData
- Use WebPMux API to embed ICCP chunk in WebP container with copy_data=1
- Automatically convert Simple Format (VP8) to Extended Format (VP8X)
- Add iOS 10+ availability check for CGColorSpaceCopyICCData
- Skip ICC profile when maxFileSize is set (size limit takes priority)
- Add comprehensive test (testWebPEncodingEmbedICCProfile)
This fixes color reproduction issues with wide color gamut images
(Display P3, Adobe RGB, etc.) on platforms that assume sRGB when
ICC profile is missing.
Fixes #1191 parent f534cfe commit 8b7b680
File tree
2 files changed
+77
-7
lines changed- SDWebImageWebPCoder/Classes
- Tests
2 files changed
+77
-7
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
818 | 818 | | |
819 | 819 | | |
820 | 820 | | |
821 | | - | |
| 821 | + | |
822 | 822 | | |
823 | 823 | | |
824 | 824 | | |
| |||
950 | 950 | | |
951 | 951 | | |
952 | 952 | | |
953 | | - | |
| 953 | + | |
954 | 954 | | |
955 | | - | |
956 | | - | |
| 955 | + | |
| 956 | + | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| 960 | + | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
| 964 | + | |
| 965 | + | |
| 966 | + | |
| 967 | + | |
| 968 | + | |
| 969 | + | |
| 970 | + | |
| 971 | + | |
| 972 | + | |
| 973 | + | |
| 974 | + | |
| 975 | + | |
| 976 | + | |
| 977 | + | |
| 978 | + | |
| 979 | + | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
| 987 | + | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
| 993 | + | |
| 994 | + | |
| 995 | + | |
| 996 | + | |
957 | 997 | | |
958 | | - | |
959 | 998 | | |
960 | 999 | | |
961 | 1000 | | |
962 | | - | |
| 1001 | + | |
963 | 1002 | | |
964 | 1003 | | |
965 | 1004 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
381 | 381 | | |
382 | 382 | | |
383 | 383 | | |
384 | | - | |
| 384 | + | |
385 | 385 | | |
386 | 386 | | |
387 | 387 | | |
| |||
404 | 404 | | |
405 | 405 | | |
406 | 406 | | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
407 | 438 | | |
408 | 439 | | |
409 | 440 | | |
| |||
0 commit comments