Commit Graph

4742 Commits

Author SHA1 Message Date
Hugo van Kemenade
ae65315e78
Fix reading RGB and CMYK IPTC images (#9088) 2025-09-04 13:41:03 +03:00
Hugo van Kemenade
c0004726d6
Improve WalImageFile test coverage (#9189) 2025-09-04 13:37:39 +03:00
Hugo van Kemenade
c1538aca21
Update raqm to 0.10.3 (#9137) 2025-09-04 13:35:19 +03:00
Andrew Murray
e0da1a62ec Use walrus operator 2025-09-04 08:10:31 +10:00
Andrew Murray
877707379b Deprecate Image._show 2025-09-03 22:38:37 +10:00
Andrew Murray
e73b5ff4cd Do not unnecessarily update __offset 2025-09-03 19:35:01 +10:00
Andrew Murray
72c067af29 Check all reserved bytes in header 2025-09-03 19:23:26 +10:00
Andrew Murray
caacd38e1b Raise mode error before reading 2025-09-02 21:32:13 +10:00
Andrew Murray
485d9884cf Limit length of read operation 2025-09-02 21:24:57 +10:00
Andrew Murray
57a5f76e6d Removed unused split 2025-09-02 21:09:07 +10:00
pre-commit-ci[bot]
31eee6e5f7
[pre-commit.ci] pre-commit autoupdate (#9180) 2025-09-02 07:57:54 +10:00
Andrew Murray
1c70e716ce
Merge branch 'main' into fromarray_mode 2025-09-01 08:30:22 +10:00
Andrew Murray
c7a268e5a5
ImageMorph operations must have length 1 (#9102) 2025-09-01 08:23:30 +10:00
Andrew Murray
c6915f717f rotate() will use "angle % 360" 2025-08-29 07:43:51 +10:00
Andrew Murray
05a6010311 Fixed loading rotated PCD images 2025-08-29 07:35:18 +10:00
Andrew Murray
b33254f370
Merge branch 'main' into mode_enums 2025-08-28 08:36:22 +10:00
Hugo van Kemenade
35f23fb78c
Set correct size for rotated PCD images after opening (#9086) 2025-08-27 17:59:10 +03:00
Hugo van Kemenade
801f7adb3c
Simplify check for GBR width and height (#9089) 2025-08-27 17:58:03 +03:00
Hugo van Kemenade
146d03c250
Fix ZeroDivisionError in ImageStat (#9105) 2025-08-27 17:45:55 +03:00
Hugo van Kemenade
a74e4fa9a5
When deleting EXIF IFD tag, delete IFD data (#9083) 2025-08-27 17:43:19 +03:00
Hugo van Kemenade
9a2c5160f2
Allow alpha_composite to use LA images (#9066) 2025-08-27 17:42:50 +03:00
Andrew Murray
84e89bf5c3
Restored unpacker 2025-08-27 07:07:13 +10:00
Andrew Murray
178b3a70cc
Updated formatting 2025-08-27 06:58:51 +10:00
Andrew Murray
ed164d1bfa
pre-commit fixes 2025-08-26 22:13:45 +10:00
Andrew Murray
0d72707d4f Removed version from PDF comment 2025-08-26 08:55:11 +10:00
Andrew Murray
009444f9c5 Improved _accept length check 2025-08-21 21:56:03 +10:00
Andrew Murray
6a3bde05a4 Do not set core to DeferredError 2025-08-20 15:32:12 +10:00
Andrew Murray
c826b932c0 Document MAXBLOCK 2025-08-19 15:45:42 +10:00
Andrew Murray
62546924b5 Remove support for FreeType <= 2.9.0 2025-08-18 08:07:12 +10:00
Andrew Murray
ba66fec3d2 When converting RGBA to PA, use RGB to P quantization 2025-08-15 23:39:33 +10:00
Andrew Murray
0ae2611b44 Copy C palette when merging 2025-08-15 23:22:14 +10:00
Andrew Murray
6d974b61d6 Load image palette into Python after converting to PA 2025-08-15 14:37:31 +10:00
Andrew Murray
35c92308ad Allow RGBA palettes to work with expand() 2025-08-06 11:41:26 +10:00
Andrew Murray
4f8ac76407 Updated raqm to 0.10.3 2025-08-06 09:00:36 +10:00
Andrew Murray
b07dbc167c Fixed typo 2025-08-06 08:17:09 +10:00
Andrew Murray
0465627f0c Fill alpha channel when quantizing RGB images 2025-08-05 13:00:33 +10:00
Andrew Murray
fcdeb6404e Merge branch 'main' into imagetext 2025-08-02 22:18:51 +10:00
Andrew Murray
94a32628f3 Merge branch 'main' into fromarray_mode 2025-08-02 22:15:13 +10:00
Hugo van Kemenade
2ab301dcc9
Drop support for Python 3.9 (#9119)
Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2025-08-02 12:02:20 +00:00
Hugo van Kemenade
eb59176b09
Move imports into TYPE_CHECKING (#9123) 2025-08-02 13:56:00 +03:00
Andrew Murray
ae6bb29b82 Removed support for NumPy 1.20 when type checking 2025-08-02 18:35:16 +10:00
Andrew Murray
27a7582b35 Moved imports into TYPE_CHECKING 2025-08-02 11:40:35 +10:00
Andrew Murray
726de49229
Merge branch 'main' into mode_enums 2025-08-01 10:25:32 +10:00
Andrew Murray
5fc0cf19c6
Merge branch 'main' into pyarrow_band_names 2025-08-01 10:25:14 +10:00
Hugo van Kemenade
162836a004
Use correct bands for two band histograms (#9054) 2025-07-31 14:40:57 +03:00
Andrew Murray
e8b3c17ebc Updated documentation 2025-07-29 07:28:03 +10:00
Andrew Murray
283dcfc024 Removed unused code 2025-07-26 23:39:11 +10:00
Andrew Murray
7afbafd1e2 Support saving variable length rational TIFF tags 2025-07-26 19:21:50 +10:00
Luke Granger-Brown
ec6d5efe4d
Deprecate ImageCmsProfile product_name and product_info (#8995)
Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2025-07-26 17:33:11 +10:00
Andrew Murray
969e468749 Allow ImageDraw text() to use ImageText 2025-07-24 19:34:30 +10:00
Andrew Murray
24681a3927 Added ImageText 2025-07-24 19:34:29 +10:00
Andrew Murray
103a5a0b59 Fixed ZeroDivisionError 2025-07-24 19:33:15 +10:00
wiredfool
1a02d4ed5a lint fixes 2025-07-20 13:01:39 +02:00
wiredfool
adfb66f1d6 Fix Compliation errors from rebase 2025-07-20 10:18:59 +02:00
wiredfool
64556405e2 WIP - Not working in pyarrow 2025-07-19 17:34:39 +02:00
eyedav
84aa4372fd linter changes 2025-07-19 17:06:44 +02:00
Yay295
2f169fa121 use mode enums in _imagingcms.c 2025-07-19 17:02:05 +02:00
Yay295
0567f064e4 add debug check that all modes and rawmodes are defined 2025-07-19 17:02:05 +02:00
Yay295
f8bfa2fe4e use more mode enums in decode.c 2025-07-19 16:58:11 +02:00
Yay295
a53f83f023 use mode enums in _imagingft.c 2025-07-19 16:58:11 +02:00
eyedav
aa39e84f7a use mode enums in Jpeg2KDecode.c 2025-07-19 16:58:08 +02:00
wiredfool
85212dbbb6 Add image band metadata for the 4 channel images 2025-07-19 16:55:52 +02:00
Yay295
4d721bc591 use mode enums in _webp.c 2025-07-19 16:54:36 +02:00
eyedav
9527ce7f8c change mode structs to enums
Structs have better type safety, but they make allocation more difficult, especially when we have multiple Python modules trying to share the same code.
2025-07-19 16:54:32 +02:00
Yay295
4b07ed52fd use Mode struct for windows display code 2025-07-19 16:00:28 +02:00
Yay295
16fc61ee65 use RawMode struct for jpegmode 2025-07-19 16:00:28 +02:00
Yay295
422eb1ebc4 replace some string function usage with imaging mode checks 2025-07-19 16:00:28 +02:00
Yay295
579c55ea86 check for null input in findMode() and findRawMode() 2025-07-19 16:00:28 +02:00
Yay295
20a5aeac84 fix findRawMode()
and change findMode() to match
2025-07-19 16:00:28 +02:00
Yay295
cacb8b3ce7 define rawmodes 2025-07-19 16:00:28 +02:00
eyedav
c9c50ac678 initialize accessors similar to converters/packers/unpackers 2025-07-19 16:00:26 +02:00
Yay295
feb7e6ef2d use mode structs in map.c 2025-07-19 15:55:48 +02:00
eyedav
d11819ca6b use mode structs in Unpack.c 2025-07-19 15:55:44 +02:00
Yay295
31118b0019 set pointer to NULL after free 2025-07-19 15:54:15 +02:00
Yay295
39d434b39d use (void) for empty function parameters 2025-07-19 15:54:15 +02:00
Yay295
141c95df9a use mode structs in TiffDecode.c 2025-07-19 15:54:15 +02:00
eyedav
e75a0a9c39 use mode structs in Storage.c 2025-07-19 15:54:11 +02:00
eyedav
858b0b3805 use mode structs in Resample.c 2025-07-19 15:47:47 +02:00
Yay295
c80fba3045 use mode structs in Reduce.c 2025-07-19 15:47:10 +02:00
Yay295
fb73d9003e use mode structs in Quant.c 2025-07-19 15:47:10 +02:00
Yay295
7e48697f82 use mode structs in Point.c 2025-07-19 15:47:10 +02:00
Yay295
2a9d712ceb use mode structs in Paste.c 2025-07-19 15:47:10 +02:00
Yay295
af3c24e12b use mode structs in Palette.c 2025-07-19 15:47:10 +02:00
eyedav
e5bc5b4ffa use mode structs in Pack.c 2025-07-19 15:47:07 +02:00
eyedav
4906285619 add function isModeI16() to check if a mode is an I;16 mode 2025-07-19 15:41:13 +02:00
Yay295
378c3bd23d use mode structs in Matrix.c 2025-07-19 15:39:18 +02:00
Yay295
0abfdd25b1 use mode structs in JpegEncode.c 2025-07-19 15:39:18 +02:00
Yay295
30d4cd0229 use mode structs in JpegDecode.c 2025-07-19 15:39:18 +02:00
Yay295
98a2c63326 use mode structs in Jpeg2KEncode.c 2025-07-19 15:39:18 +02:00
Yay295
33272580d0 use mode structs in Jpeg2KDecode.c 2025-07-19 15:39:18 +02:00
Yay295
27497700ee use mode structs in Histo.c 2025-07-19 15:39:18 +02:00
Yay295
2668338583 use mode structs in GetBBox.c 2025-07-19 15:39:18 +02:00
Yay295
cfe9155a0b use mode structs in Geometry.c 2025-07-19 15:39:18 +02:00
eyedav
af22363327 use mode structs in Filter.c 2025-07-19 15:39:16 +02:00
Yay295
6202eefcff use mode structs in Fill.c 2025-07-19 15:37:08 +02:00
Yay295
19c0d1da76 use mode structs in File.c 2025-07-19 15:37:08 +02:00
Yay295
b5c4b821bc use mode structs in Effects.c 2025-07-19 15:37:08 +02:00
eyedav
bcfe5f2172 use mode structs in Draw.c 2025-07-19 15:37:03 +02:00
eyedav
9bf3495898 use mode structs in Convert.c 2025-07-19 15:12:51 +02:00
Yay295
ecf1fce82b use mode structs in Chops.c 2025-07-19 14:53:31 +02:00