Andrew Murray
438c3cc097
Speed up rotating square images by 90 or 270 degrees
2021-07-30 19:57:09 +10:00
Fariz Rahman
feb3103bfd
SGI save handler should not close output stream
2021-07-30 00:57:00 +04:00
Andrew Murray
a9372d5cf0
Fixed generated palettes
2021-07-29 16:20:20 +10:00
Andrew Murray
d0a30ec369
Updated documentation
2021-07-29 16:20:20 +10:00
Andrew Murray
cf275737ee
Do not rearrange palette channels
2021-07-29 16:20:20 +10:00
Andrew Murray
41b968ad10
Deprecate ImagePalette size parameter
2021-07-29 16:19:53 +10:00
Hugo van Kemenade
faaeee1e7d
Merge pull request #5601 from radarhere/webp_icc_profile
...
Allow saving WebP with icc_profile None
2021-07-28 13:10:36 +03:00
Hugo van Kemenade
4e4d580dfd
Merge pull request #5597 from radarhere/ycbcr_tiff
...
Added tags when saving YCbCr TIFF
2021-07-28 13:08:54 +03:00
Hugo van Kemenade
5f39e8e60a
Merge pull request #5613 from radarhere/psd
2021-07-28 12:53:24 +03:00
Alexander Karpinsky
3abe5e884b
Add TypeError handling to pass corrupted dpi value in exif
2021-07-26 16:13:01 +03:00
Andrew Murray
a43d46e87a
Corrected size parameter documentation [ci skip]
2021-07-26 22:53:39 +10:00
Hugo van Kemenade
567fbaf782
Merge pull request #5615 from radarhere/expand
...
Fixed ImageOps expand with tuple border on P image
2021-07-26 11:33:26 +03:00
Andrew Murray
89ab20fd15
putpalette() rawmode may be modes that can be unpacked to RGB
2021-07-25 16:32:59 +10:00
Andrew Murray
4038a287ee
Corrected pathlib.Path detection when saving
2021-07-24 14:21:33 +10:00
Andrew Murray
1d73a483f4
Added "transparency" argument to load()
2021-07-19 09:08:45 +10:00
Andrew Murray
7484bb08b4
Merge pull request #5588 from kmilos/patch-2
...
Ensure TIFF RowsPerStrip is multiple of 8 for JPEG compression
2021-07-18 18:17:25 +10:00
Andrew Murray
a9fccfada1
Added WalImageFile class
2021-07-18 12:35:27 +10:00
Andrew Murray
0a7af10827
Instead of drawing border, calculate palette index before image creation in expand()
2021-07-16 20:58:32 +10:00
Andrew Murray
a46f5cdd0a
PSD layer count may be negative
2021-07-15 19:38:26 +10:00
Andrew Murray
e766ddbc39
Removed unnecessary code
2021-07-13 23:02:27 +10:00
Andrew Murray
63c3b26f6a
Fixed using info dictionary when writing multiple frames
2021-07-13 23:02:23 +10:00
Andrew Murray
0521ac71e0
Renamed variable
2021-07-13 18:47:48 +10:00
thak1411
45aec95717
Fixed round error in saving apng file
2021-07-13 12:07:36 +09:00
Andrew Murray
97e0cb85ee
Keep transparency when converting from P to LA or PA
2021-07-12 22:55:12 +10:00
Andrew Murray
622a1cd542
Changed URLs to HTTPS
2021-07-12 21:00:36 +10:00
Andrew Murray
43ea81c6db
For save_all with palette, do not include palette with each frame
2021-07-11 22:52:32 +10:00
Andrew Murray
b45fdd0817
Allow saving WebP with icc_profile None
2021-07-10 15:15:10 +10:00
Andrew Murray
5cdcc2cf64
Added tags when saving YCbCr TIFF
2021-07-10 01:20:36 +10:00
Andrew Murray
a39cb04f3e
Consider I;16 pixel size when drawing text
2021-07-09 21:23:43 +10:00
Andrew Murray
fdfa9e8521
If default conversion from P is RGB with transparency, convert to RGBA
2021-07-08 17:08:11 +10:00
Miloš Komarčević
01e423da00
Ensure TIFF RowsPerStrip is multiple of 8 for JPEG compression
2021-07-07 09:38:06 +02:00
Hugo van Kemenade
f6c91c3db9
Merge pull request #5585 from radarhere/stdout
...
Catch OSError when checking if fp is sys.stdout
2021-07-06 09:05:46 +03:00
Andrew Murray
f962b18f69
Catch OSError when checking if fp is sys.stdout
2021-07-06 11:00:03 +10:00
Andrew Murray
917a598615
Handle removing orientation from alternate types of EXIF data
2021-07-06 10:37:28 +10:00
Andrew Murray
9688507193
Removed variable
2021-07-05 23:02:26 +10:00
Andrew Murray
9707d33ed9
Allow "exif" to also accept bytestring
2021-07-04 13:32:41 +10:00
Andrew Murray
c0f619384c
Added "exif" keyword argument to save Image.Exif instance
2021-07-04 12:33:55 +10:00
Thomas Viehmann
8d1b433c76
Use numpy.array with dtype
...
Thank you @radarhere.
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-07-01 14:08:51 +02:00
Thomas Viehmann
1c03526b65
Make Image.__array__ take optional dtype argument
...
This is required by the numpy protocol.
2021-07-01 13:09:40 +02:00
Andrew Murray
53ce23c749
8.4.0.dev0 version bump
2021-07-01 16:55:53 +10:00
Andrew Murray
51591a80a4
8.3.0 version bump
2021-07-01 13:53:49 +10:00
Andrew Murray
31c473898c
Merge pull request #5567 from radarhere/sprintf
...
Limit sprintf modes to 10 characters
2021-07-01 12:57:13 +10:00
Hugo van Kemenade
861a031304
Merge pull request #5514 from kmilos/fix_tiff_rowsperstrip
2021-06-30 17:31:42 +03:00
Hugo van Kemenade
06f88ddff4
Merge pull request #4526 from newpanjing/master
2021-06-30 17:13:43 +03:00
Andrew Murray
518ee3722a
Use snprintf instead of sprintf
2021-06-30 23:52:56 +10:00
Roger Baumgartner
5f4653d0b4
Attempt to read dpi information from JPEG2000's resc header box
2021-06-30 06:43:33 -07:00
Roger Baumgartner
7f275c1bfc
Create BoxReader helper class to parse JPEG2000 header
2021-06-30 06:43:33 -07:00
Andrew Murray
43f5a5f80b
Combined sizes and types into dictionary
2021-06-30 23:30:59 +10:00
mergify[bot]
914950959b
Merge pull request #4989 from gofr/4962-jpeg-zigzag
...
De-zigzag JPEG's DQT when loading; deprecate convert_dict_qtables
2021-06-30 12:37:26 +00:00
Andrew Murray
1b74bddfde
Merge pull request #5564 from radarhere/getcolor
...
Do not use background or transparency index for new color
2021-06-30 21:45:21 +10:00
Andrew Murray
d11c794997
Merge branch 'master' into 4962-jpeg-zigzag
2021-06-30 20:54:55 +10:00
Andrew Murray
5f4504bb03
Limit sprintf modes to 10 characters
2021-06-30 19:35:09 +10:00
Andrew Murray
70c7514a4a
Added specific removal details
2021-06-30 19:29:52 +10:00
Andrew Murray
cab9179a85
Merge pull request #5315 from radarhere/simplified
...
Simplified code
2021-06-30 19:24:19 +10:00
Andrew Murray
0aa8bd00e7
Added warning if defusedxml is not found
2021-06-30 11:29:13 +10:00
Andrew Murray
d9d811ff21
Replaced xml.etree.ElementTree with defusedxml.ElementTree
2021-06-30 11:28:44 +10:00
Andrew Murray
41b58f4b16
Replaced xml.etree.ElementTree with re
2021-06-30 11:28:40 +10:00
Andrew Murray
eab2b17d64
Do not use background or transparency index for new color
2021-06-30 00:05:25 +10:00
Andrew Murray
3e5ceb6d67
Corrected border position
2021-06-29 21:24:41 +10:00
Andrew Murray
8736a745f4
Removed _to_int
2021-06-29 21:08:26 +10:00
Andrew Murray
90ece137b0
Merge branch 'master' into master
2021-06-29 20:52:35 +10:00
Andrew Murray
f366330a74
Only open one BytesIO instance at a time
2021-06-29 20:50:36 +10:00
Andrew Murray
d07a085757
Simplified use of struct
2021-06-29 20:40:32 +10:00
Andrew Murray
f5558f42f4
Only getvalue() once per entry
2021-06-29 20:40:26 +10:00
Andrew Murray
8e60ca6106
Use bytes
2021-06-29 20:40:05 +10:00
Hugo van Kemenade
bdc87f6dcf
Merge pull request #5539 from kdpenner/gaussian-doc
...
Modified docstring for GaussianBlur
2021-06-28 19:37:28 +03:00
Hugo van Kemenade
2251be1a6f
Merge pull request #5554 from radarhere/tag_group_data
2021-06-28 19:03:01 +03:00
Hugo van Kemenade
50302231ed
Merge pull request #5552 from radarhere/palette
2021-06-28 19:01:54 +03:00
Hugo van Kemenade
d0394d44c2
Merge pull request #5402 from radarhere/dds
2021-06-28 18:50:21 +03:00
Hugo van Kemenade
b5c4b9afe0
Merge pull request #5455 from radarhere/xmp
2021-06-28 18:43:04 +03:00
Hugo van Kemenade
9f28e4be26
Merge pull request #5412 from radarhere/ifdrational_eq_float
2021-06-28 18:33:46 +03:00
Hugo van Kemenade
6d94376d1f
Merge pull request #5416 from radarhere/tiff_exif
...
Allow getexif() to access TIFF tag_v2 data
2021-06-28 18:12:17 +03:00
Hugo van Kemenade
78f150cb42
Merge pull request #5405 from radarhere/fits
...
Read FITS image mode and size
2021-06-28 17:57:49 +03:00
Hugo van Kemenade
38d45d2848
flush if hasattr
...
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-06-28 17:48:06 +03:00
Hugo van Kemenade
f3db65db09
Merge pull request #5347 from radarhere/edge
2021-06-28 17:17:17 +03:00
Andrew Murray
1ee30ded0b
Fixed reloading palette
2021-06-28 22:27:05 +10:00
Andrew Murray
461628845d
Disposal method 2 is transparency or black when saving
2021-06-28 22:27:01 +10:00
Andrew Murray
6db0e96102
Ensure image is loaded in remap_palette
2021-06-28 20:12:22 +10:00
Hugo van Kemenade
00303a29e9
Merge pull request #5557 from radarhere/gif_first_frame_transparency
2021-06-27 16:14:23 +03:00
Andrew Murray
804183c248
Only use an RGBA palette for images with an alpha channel
2021-06-27 18:29:02 +10:00
Andrew Murray
7005e66f00
Use first index for repeated color
2021-06-27 16:33:47 +10:00
Andrew Murray
450382f574
Do not use raw ImagePalette
2021-06-27 15:09:39 +10:00
Andrew Murray
dd28af0dfa
Merge branch 'master' into tag_group_data
2021-06-27 12:06:11 +10:00
Andrew Murray
e29a7d8a94
Replace with transparency if available for disposal method 2
2021-06-26 00:55:31 +10:00
Andrew Murray
5b4cb5052a
Draw first frame on top of transparency
2021-06-25 21:54:21 +10:00
Andrew Murray
61c39074f5
Fixed undefined variable in logging
2021-06-25 19:46:58 +10:00
Andrew Murray
a2709be7f4
Added tag data for IFD groups
2021-06-24 19:56:01 +10:00
Andrew Murray
59a3e3bc60
Rearranged code to limit line length
2021-06-23 19:37:56 +10:00
Andrew Murray
1606d9adf3
Removed code from before Python 3.2
2021-06-23 19:29:06 +10:00
Andrew Murray
9192a33b38
Removed unnecessary load()
2021-06-23 19:29:02 +10:00
Andrew Murray
b6b362c807
Set color after attaching palette in expand()
2021-06-23 19:28:56 +10:00
Andrew Murray
8210645e4b
If all 256 colors are in use, then there is no need for an additional color for background or transparency
2021-06-23 19:28:46 +10:00
Andrew Murray
fa559277fb
When allocating a new color, repurpose an unused index if necessary
2021-06-23 19:27:08 +10:00
Andrew Murray
f3451aefc6
Convert opaque RGBA color to RGB if that is the palette mode
2021-06-23 19:26:53 +10:00
Andrew Murray
3b9792ab74
Convert getcolor input to RGBA if that is the palette mode
2021-06-23 19:23:34 +10:00
Andrew Murray
4d36feefc7
Set palette to be empty by default
2021-06-23 19:22:21 +10:00
Andrew Murray
dc89f0eaa9
Set colors
2021-06-23 19:16:04 +10:00
Hugo van Kemenade
ec74f3b1c0
Merge pull request #5367 from radarhere/quant
2021-06-20 21:57:05 +03:00
Hugo van Kemenade
e5b2d61e00
Merge pull request #5551 from radarhere/imageops
2021-06-20 15:51:21 +03:00
Hugo van Kemenade
53b51e1df6
Merge pull request #5549 from radarhere/palette
2021-06-20 15:44:38 +03:00
Hugo van Kemenade
7c08565e5e
Merge pull request #5547 from radarhere/exif
2021-06-20 13:22:05 +03:00
Hugo van Kemenade
8b0244ac66
Merge pull request #5540 from radarhere/numresolution
2021-06-20 11:58:51 +03:00
Andrew Murray
6639b2af7f
Copy palette to new images in expand
2021-06-19 21:24:58 +10:00
Andrew Murray
aa4489c993
Keep palette the same length
2021-06-19 09:31:46 +10:00
Andrew Murray
f45d2e296d
Ensure palette string matches RGB mode
2021-06-19 09:16:05 +10:00
Andrew Murray
04566917f8
Do not modify EXIF of original image instance in exif_transpose()
2021-06-18 19:01:12 +10:00
kdpenner
4433ff0ffd
Wording changes
2021-06-15 12:11:46 -04:00
Hugo van Kemenade
8f55c955db
Merge pull request #5535 from radarhere/tiff_format
...
Fixed format warning
2021-06-14 15:07:50 +03:00
Andrew Murray
6449cdc1a3
Added RGBA saving
2021-06-14 18:14:28 +10:00
Andrew Murray
143e08c92c
Added RGB saving
2021-06-14 18:14:28 +10:00
Andrew Murray
37c9b523b2
Use constant for uncompressed RGB data check
2021-06-14 18:14:28 +10:00
Andrew Murray
bd298b128c
Fixed default numresolution for small JPEG2000 images
2021-06-14 11:23:56 +10:00
Hugo van Kemenade
58661c978b
Merge pull request #5534 from radarhere/type
2021-06-12 21:30:15 +03:00
kdpenner
ce9cea94ed
Modified docstring for GaussianBlur
2021-06-12 12:05:36 -04:00
Andrew Murray
cd31dae0d1
Added getxmp() for PNG
2021-06-12 13:57:14 +10:00
Andrew Murray
ae3bdf87f0
Added getxmp() for TIFF
2021-06-12 12:17:38 +10:00
Andrew Murray
c1fbe2d975
Corrected getxmp() descending into XML
2021-06-12 11:58:11 +10:00
Miloš Komarčević
0ae2981957
Put upper limit on rows per strip
2021-06-12 11:49:20 +10:00
Miloš Komarčević
1c4deefe11
Make strip calculation more readable
2021-06-12 11:49:20 +10:00
Miloš Komarčević
c949d54605
Fix lint errors
2021-06-12 11:49:20 +10:00
Miloš Komarčević
7752fb5131
Limit TIFF strip size when saving with libtiff
2021-06-12 11:49:20 +10:00
Andrew Murray
e00af259d8
Use PRIu64 to fix format warning
2021-06-11 18:27:36 +10:00
Hugo van Kemenade
101887360c
Merge pull request #5501 from radarhere/dds_bc5
2021-06-11 10:34:19 +03:00
Hugo van Kemenade
a9b0adc57f
Merge pull request #5510 from radarhere/textbbox
2021-06-10 17:46:32 +03:00
Andrew Murray
5b0a63f76d
Updated declaration to match definition
2021-06-10 19:01:12 +10:00
Hugo van Kemenade
2a7eb5415e
Merge pull request #5513 from radarhere/ico_bmp
...
Added ICO saving in BMP format
2021-06-06 18:12:33 +03:00
Hugo van Kemenade
87dca4f477
Merge pull request #5493 from radarhere/png_load_end
...
Ensure PNG seeks to end of previous chunk at start of load_end
2021-06-06 10:35:04 +03:00
Hugo van Kemenade
1ac7bd9f87
Merge pull request #5473 from radarhere/tiff_seek
...
Do not allow TIFF to seek to a past frame
2021-06-05 18:49:34 +03:00
Andrew Murray
2c9a9b3529
Added ICO saving in BMP format
2021-05-27 06:21:28 +10:00
Andrew Murray
10d8800ee7
Merge pull request #5507 from mconst/master
...
Avoid race condition when displaying images with eog
2021-05-25 22:36:39 +10:00
Andrew Murray
362d504011
Raise an error if textbbox is used without a FreeTypeFont
2021-05-25 20:45:38 +10:00
Hugo van Kemenade
affa059e95
Merge pull request #5504 from radarhere/tuple_size
...
Added specific error messages when ink has incorrect number of bands
2021-05-23 17:18:38 +03:00
Michael Constant
5c8aa277ce
Avoid race condition when displaying images with eog
...
Image.show() expects its display command to run synchronously, but eog
is asynchronous if there's another instance already running -- it just
asks the other instance to open the file and then immediately exits.
This causes intermittent failures where the file gets deleted before
the running eog instance manages to open it.
Fix this by using the -n option, so eog starts a new instance each time
instead of trying to reuse an existing one.
2021-05-23 01:10:41 -07:00
Hugo van Kemenade
3cbf4d5ef7
Merge pull request #5379 from radarhere/numpy
...
Allow converting an image to a numpy array to raise errors
2021-05-20 15:09:02 +03:00
Hugo van Kemenade
60d6dc7869
Merge pull request #5488 from radarhere/args
...
Use METH_NOARGS when no arguments are required
2021-05-19 23:43:29 +03:00
Andrew Murray
8099d01349
Fixed typo
2021-05-19 23:32:00 +10:00
Andrew Murray
3b4db88202
Added BC5_SNORM reading when FourCC is DX10
2021-05-19 22:19:19 +10:00
Andrew Murray
22fb2dbd29
Simplified code
2021-05-19 21:57:40 +10:00
Andrew Murray
f59ff6d55b
Read BC5_TYPELESS as BC5_UNORM
2021-05-19 21:16:12 +10:00
Andrew Murray
a1412681ff
Added specific error messages when ink has incorrect number of bands
2021-05-19 20:19:57 +10:00
Andrew Murray
ff0c0afb2c
Use PyTuple_GET_SIZE since variable is known to be a tuple
2021-05-19 19:51:45 +10:00
Hugo van Kemenade
16b9cadd41
Merge pull request #5495 from radarhere/tiff_tags
...
Added CFAPattern, ExifVersion and FlashpixVersion UNDEFINED tags
2021-05-19 00:31:41 +03:00
Andrew Murray
2e7f40e0b8
Added BC5_SNORM reading
2021-05-18 17:44:21 +10:00
Andrew Murray
68ac6d151e
Added BC5_UNORM reading
2021-05-17 18:57:23 +10:00
Hugo van Kemenade
a72ae6823c
Merge pull request #5476 from radarhere/dpi_rounding
2021-05-16 20:00:10 +03:00
Hugo van Kemenade
d53a664866
Merge pull request #5470 from radarhere/wmf_dpi_rounding
...
Removed WMF DPI rounding
2021-05-16 19:57:14 +03:00
Andrew Murray
78406ed1ff
Merge pull request #5460 from xtsm/ellipse
...
Remove spikes when drawing thin pieslices
2021-05-14 23:37:11 +10:00
Hugo van Kemenade
f02739715d
Merge pull request #5452 from radarhere/missing_samplesperpixel
...
Updated default value for SAMPLESPERPIXEL TIFF tag
2021-05-14 16:17:34 +03:00
Andrew Murray
c8802030cf
Added CFAPattern, ExifVersion and FlashpixVersion UNDEFINED tags
2021-05-14 18:50:56 +10:00
Andrew Murray
bf97a92bc6
Ensure PNG seeks to end of previous chunk at start of load_end
2021-05-14 13:18:49 +10:00