Commit Graph

4944 Commits

Author SHA1 Message Date
Yay295
d330a136cd move deprecated rawmode unpack tests to test_unpack_deprecated() 2024-10-12 18:33:59 -05:00
Yay295
f281063941 use new rawmodes in BMP and TGA image plugins 2024-10-12 18:33:58 -05:00
Yay295
3af0e2d9cf add "new" rawmodes for 16-bit RGB data
The existing 16-bit RGB rawmodes do not follow the naming convention given in Unpack.c. These new modes do follow that convention, except since these modes do not all use the same number of bits for each band, the sizes of each band are listed.

Old → New
RGB;15 → XBGR;1555
RGB;16 → BGR;565
BGR;5 → XRGB;1555
BGR;15 → XRGB;1555
BGR;16 → RGB;565
RGB;4B → XBGR;4
RGBA;4B → ABGR;4
RGBA;15 → ABGR;1555
BGRA;15 → ARGB;1555
BGRA;15Z → ARGB;1555Z

These new rawmodes also use a slightly different conversion method. The most accurate conversion from 5 to 8 bits is "round(x * 255 / 31.0)". However, that involves floating point numbers and rounding, so it's not as fast. The current method doesn't include the rounding, allowing us to also use integer instead of floating point division. This is faster, but unfortunately not roundtrippable - when converting from 5 to 8 to 5 bits not every value stays the same. The new method is roundtrippable, even faster than the current method since it uses basic bitwise operations instead of multiplication and division, and if you compare the result to what you get with rounding and floating point numbers, it is actually more accurate.
2024-10-12 18:33:57 -05:00
Yay295
7d5771e56d parametrize test_lib_pack.py 2024-10-12 18:33:57 -05:00
Hugo van Kemenade
fd74857bcf
Merge pull request #8417 from radarhere/appendingTiffWriter
Support writing LONG8 offsets in AppendingTiffWriter
2024-10-12 11:29:09 +03:00
Andrew Murray
afbf45055a Always raise warnings for deprecated feature checks 2024-10-11 20:59:15 +11:00
Andrew Murray
7777260b6b
Merge pull request #8438 from radarhere/filter 2024-10-10 21:50:51 +11:00
Hugo van Kemenade
535bf234c3
Merge pull request #8341 from uploadcare/use-ptr
Use ImagingCore.ptr instead of ImagingCore.id
2024-10-07 13:37:44 +03:00
Alexander Karpinsky
8e332eb3b0 Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2024-10-07 13:05:13 +04:00
Andrew Murray
76dd669e6b Fixed unclosed file warning 2024-10-07 16:50:05 +11:00
Hugo van Kemenade
96f1a6e8b1
Merge pull request #8281 from Yay295/eps_test 2024-10-06 15:58:57 +03:00
Andrew Murray
b77cd009e2 Use transparency when combining P frames 2024-10-06 11:30:27 +11:00
Andrew Murray
1b57b32caf Test ignoring second ImageData 2024-10-05 16:28:03 -05:00
Andrew Murray
d4fedc852c Rename test image 2024-10-05 08:06:44 -05:00
Yay295
8e6d518ea8
change parameter type from list to tuple
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2024-10-05 08:05:00 -05:00
Andrew Murray
418ae7caa2 Support BuiltinFilter for I;16* images 2024-10-05 01:12:51 +10:00
Andrew Murray
07be6fca17 Corrected check for BuiltinFilter 2024-10-04 23:26:54 +10:00
Hugo van Kemenade
07389b2f18
Merge pull request #8416 from radarhere/compact_within_map 2024-10-01 13:55:50 +03:00
Yay295
6b168a3e2b add EPS test for image with ImageData and BoundingBox (atend) 2024-09-30 08:23:27 -05:00
Yay295
3ccecd91ce convert eps using pnmraw instead of ppmraw
This lets Ghostscript choose the best device to use (pbmraw, pgmraw, ppmraw) based on the image data.
2024-09-30 08:23:27 -05:00
Yay295
283b41afa0 test 1.eps size and data 2024-09-30 08:23:26 -05:00
Yay295
6fe4375f28 move eps test images to their own folder
Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2024-09-30 08:23:26 -05:00
Andrew Murray
a99361a38f Raise an error if path is compacted during mapping 2024-09-30 19:50:08 +10:00
Andrew Murray
d33270ab51 Set default resize sampling for I;16* images to BICUBIC 2024-09-28 15:35:42 +10:00
Andrew Murray
04a00d273c Support all resampling filters when resizing I;16* images 2024-09-28 14:27:40 +10:00
Alexander Karpinsky
d133199391
Merge pull request #8386 from uploadcare/webp-capsule
Use Capsule for WEBP saving
2024-09-26 14:20:50 +04:00
Andrew Murray
7cf351cfc5 Added additional test 2024-09-25 20:37:41 +10:00
Andrew Murray
24e9961c4f Support writing LONG8 offsets 2024-09-25 18:45:16 +10:00
Andrew Murray
aa22b24169 Load before trying to catch exceptions 2024-09-21 16:22:50 +10:00
Andrew Murray
75cb1c1b87 Test unsupported image mode 2024-09-21 16:02:23 +10:00
Yay295
8b6fa92cc8
rewrite some comments
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2024-09-20 08:39:11 -05:00
Alexander Karpinsky
af521a1ce1
Merge branch 'main' into use-ptr 2024-09-18 22:24:46 +02:00
Yay295
362ffaf9b7 implement tiff exif multistrip support 2024-09-18 14:50:11 -05:00
Hugo van Kemenade
1ee3bd1d9e
Merge pull request #8390 from radarhere/tiff_exif_transpose
Use transposed size after opening for TIFF images
2024-09-18 22:35:01 +03:00
Hugo van Kemenade
743ddc7a58
Merge pull request #8338 from yngvem/improve-error-messages 2024-09-18 18:22:04 +03:00
Andrew Murray
f1e86965f6 Use transposed size after opening for TIFF images 2024-09-18 20:26:06 +10:00
Aleksandr Karpinskii
31d36e6b70 Use current frame for transparency detection 2024-09-16 11:04:00 +02:00
Andrew Murray
1f3fe6f733 Use getim() 2024-09-16 10:21:17 +10:00
Andrew Murray
8a086edbe9 Cast handle to int 2024-09-16 08:23:26 +10:00
Andrew Murray
88b3265a9c Lint: Run PT016 2024-09-14 20:59:02 +10:00
Yngve Mardal Moe
9ba4e10a16
Merge branch 'main' into improve-error-messages 2024-09-11 17:11:52 +02:00
Andrew Murray
01ba1e2252 Accept float stroke widths 2024-09-11 19:53:52 +10:00
Hugo van Kemenade
e91aedb65d
Merge pull request #8352 from radarhere/scale 2024-09-10 14:38:33 +03:00
Hugo van Kemenade
302b63f1c3
Merge pull request #8366 from radarhere/gif_rgba 2024-09-10 14:37:03 +03:00
Andrew Murray
5cb736d953
Merge branch 'main' into scale 2024-09-10 20:39:04 +10:00
Andrew Murray
d522e0a5c0 Improved handling of RGBA palettes when saving GIF images 2024-09-10 18:50:06 +10:00
Andrew Murray
e0845f06d8 Deprecate isImageType 2024-09-10 16:20:52 +10:00
Hugo van Kemenade
452b445d4f
Merge pull request #8358 from radarhere/lab 2024-09-09 08:20:29 +03:00
Andrew Murray
a3c7912b98
Merge branch 'main' into scale 2024-09-09 13:22:10 +10:00
Andrew Murray
906f93275e
Merge pull request #8356 from hugovk/deprecate-freetype-2.9.0
Deprecate support for FreeType 2.9.0
2024-09-09 13:18:13 +10:00