Commit Graph

466 Commits

Author SHA1 Message Date
Nathanael Gentry
455ffff735 Update documentation for 4-bit RLE decoder 2022-10-21 19:45:41 -04:00
Andrew Murray
00a716c421 High bit depth multichannel images are not yet supported 2022-10-04 12:54:48 +11:00
Andrew Murray
15b2b7a9de Added headings before listing options 2022-10-01 19:54:35 +10:00
Andrew Murray
599637808c Documented TGA keyword arguments when saving 2022-08-29 13:22:09 +10:00
Christoph Gohlke
8a1837c80d
DOC: fix image-file-formats.rst 2022-08-20 19:39:04 -07:00
Andrew Murray
2944ff18d6 Support saving multiple MPO frames 2022-07-16 20:02:58 +10:00
Andrew Murray
23af975a41 Updated link for more information about SPIDER 2022-07-11 06:25:00 +10:00
Andrew Murray
300f6c8a59 Document where to find other codecs 2022-07-04 19:33:21 +10:00
Andrew Murray
c8529b60de Added EMF and SUN [ci skip] 2022-05-28 00:13:50 +10:00
Andrew Murray
9188c81e5f Once a GIF comment is loaded, it is kept for subsequent frames 2022-05-24 08:50:51 +10:00
Andrew Murray
7c031e9279 Clarified sentence [ci skip] 2022-05-20 19:30:50 +10:00
Andrew Murray
533c907329 Updated example in light of #3203 2022-05-20 19:21:12 +10:00
Andrew Murray
3efe34463e Clarified that LZW encoding is always used for GIFs [ci skip] 2022-05-20 19:10:51 +10:00
Ray Gardner
b01a2effd2 Update image-file-formats.rst
Correct encoding of GIF files from run-length to LZW.
2022-04-19 13:40:56 -06:00
Andrew Murray
46ba6b51de
Merge pull request #6215 from kolibril13/readURL
Add example to read image from URL
2022-04-19 07:51:33 +10:00
Jan-Hendrik Müller
f9bf1cd59d
Update docs/handbook/tutorial.rst
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2022-04-16 08:12:54 +02:00
Jan-Hendrik Müller
12665d8db4
add read from URL example 2022-04-15 14:02:52 +02:00
Andrew Murray
986ae73562
Merge pull request #6158 from hugovk/furo
Replace Read the Docs Sphinx Theme with Furo
2022-04-04 23:23:57 +10:00
Hugo van Kemenade
703f54c847
Merge pull request #5500 from scaramallion/dev-j2k 2022-04-01 09:39:07 +03:00
Hugo van Kemenade
e0de5b67ce Document mct and no_jp2 options for saving JPEG 2000 2022-03-31 22:19:00 +03:00
scaramallion
da7e331573 Fix typo in handbook entry 2022-03-31 22:13:17 +03:00
scaramallion
74d7319c66 Reword the handbook entries to make explicit reference to RCT and ICT 2022-03-31 22:13:17 +03:00
scaramallion
4e7f041795 Rename parameter and add more tests 2022-03-31 22:13:17 +03:00
scaramallion
de26f78eb1 Add 'mct' and 'use_jp2' options for J2K saving 2022-03-31 22:13:17 +03:00
Hugo van Kemenade
5e511d5b11
Merge pull request #6135 from carandraug/document-jpeg-quality-keep 2022-03-31 21:34:02 +03:00
Hugo van Kemenade
e60ca89721
Merge pull request #6150 from radarhere/gif 2022-03-30 23:23:59 +03:00
Andrew Murray
24054d8fcc Document how to restore original setting 2022-03-30 07:29:23 +11:00
Andrew Murray
5fb1ff6369 Further explain GIF palettes combining 2022-03-29 22:05:21 +11:00
Andrew Murray
e22a4395d3 Renamed setting 2022-03-29 21:26:29 +11:00
Hugo van Kemenade
8b4c1b92a9 Remove unnecesary table of contents 2022-03-28 20:48:30 +03:00
Andrew Murray
55852d5392
Use consistent term 2022-03-26 13:44:27 +11:00
Andrew Murray
47426c5ee2 #6102 added support for RLE8 2022-03-24 19:03:37 +11:00
Andrew Murray
1acc32d1d9
Updated syntax 2022-03-22 22:34:04 +11:00
Andrew Murray
c5efe60c37 Reverted converting L with transparency to LA after first frame 2022-03-22 22:07:37 +11:00
Andrew Murray
ce8c682748 Added setting to convert to RGB only at a different palette 2022-03-22 20:28:49 +11:00
Andrew Murray
66bb2bd5e8 Added setting to convert first GIF frame to RGB 2022-03-22 20:20:38 +11:00
Andrew Murray
7928e944cb Keep subsequent L frames without transparency as L 2022-03-22 20:20:38 +11:00
Hugo van Kemenade
7857a1dff0
Merge pull request #6119 from radarhere/ppm_maxval 2022-03-18 18:14:40 +02:00
David Miguel Susano Pinto
0c4f11a603 doc: document "keep" for JPEG save quality option. 2022-03-14 17:01:03 +00:00
Andrew Murray
b12c2fe682 Added merging images example 2022-03-12 16:17:56 +11:00
Andrew Murray
60de3b7d74 I mode data can also be read from PPM 2022-03-09 22:29:52 +11:00
Andrew Murray
8e9d3201eb
Corrected grammar
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-03-07 07:15:23 +11:00
Andrew Murray
2b9cc3ccc5 Documented writing your own encoder in C 2022-03-01 16:34:21 +11:00
Andrew Murray
a7e8a386d3 Mention PsdImagePlugin as a plugin using multiple tiles 2022-03-01 15:44:12 +11:00
Andrew Murray
0cd550719a Link to demonstrations of PyDecoder and PyEncoder 2022-03-01 14:56:04 +11:00
Andrew Murray
d05281fe69 Improved documentation for cleanup() in Python codecs 2022-03-01 13:38:20 +11:00
Andrew Murray
95e3194497 Improved documentation for _pulls_fd and _pushes_fd 2022-03-01 13:15:12 +11:00
Andrew Murray
3b79a776d6 Removed "Experimental" label from pulls_fd 2022-03-01 13:15:12 +11:00
Andrew Murray
3cb355c1af Refer to set_as_raw() in Python decoder documentation 2022-03-01 13:15:12 +11:00
Andrew Murray
e36774617c Added BLP1 saving 2022-02-25 23:58:13 +11:00
Andrew Murray
a0e1fde1ed Added PyEncoder 2022-02-25 16:07:01 +11:00
mergify[bot]
c58d2817bc
Merge pull request #6056 from radarhere/fits
Added FITS reading
2022-02-20 21:49:01 +00:00
Hugo van Kemenade
e5fa767024
Merge pull request #6067 from radarhere/subsampling
Corrected JPEG subsampling documentation
2022-02-19 10:57:41 +02:00
Andrew Murray
7dca0135dd Merge branch 'main' into fits 2022-02-19 14:41:45 +11:00
Andrew Murray
aca936c85e
Document the version when FITS was added
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2022-02-19 10:37:59 +11:00
Andrew Murray
a5ada2c56f Added a note about the default subsampling 2022-02-18 09:56:59 +11:00
Andrew Murray
f2a8c45744 Remove incorrect documentation of "-1" subsampling setting 2022-02-17 23:54:10 +11:00
Andrew Murray
dfdb17671d Added FITS reading 2022-02-15 11:22:46 +11:00
Andrew Murray
f8e4e9c2dd Added enums 2022-01-15 09:02:31 +11:00
mergify[bot]
591e79e01e
Merge pull request #5862 from kolibril13/pathlib
Added PIL + pathlib Tutorial
2021-12-19 23:11:07 +00:00
Andrew Murray
a12c18608e
Corrected variable name 2021-12-20 09:39:09 +11:00
Jan-Hendrik Müller
36caa53fed
Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-12-19 22:48:23 +01:00
Jan-Hendrik Müller
cd613e6850
Apply suggestions from code review
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2021-12-19 13:26:30 +01:00
Andrew Murray
6c8ac0e700 Added "os" example 2021-12-18 21:59:09 +11:00
Andrew Murray
946571d4a3 Moved batch processing example under "More on reading images" 2021-12-18 21:23:07 +11:00
Andrew Murray
d455abffee Moved all pathlib logic out of function 2021-12-18 21:16:50 +11:00
Hugo van Kemenade
94ca035495
Merge pull request #5857 from radarhere/gif 2021-12-06 20:58:21 +02:00
Andrew Murray
85a27c145d Python variables are one word 2021-12-04 07:50:12 +11:00
Andrew Murray
675c5e1a9c Apply black formatting to code examples 2021-12-04 07:50:08 +11:00
Jan-Hendrik Müller
cab7d8a8ab
Apply suggestions from code review
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2021-12-02 16:20:13 +01:00
Jan-Hendrik Müller
21351c8982
Update docs/handbook/tutorial.rst
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-12-01 23:23:17 +01:00
Jan-Hendrik Müller
52ac725ae0
Apply suggestions from code review
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2021-12-01 23:06:52 +01:00
Jan-Hendrik Müller
af924a1f96 added pathlib tutorial 2021-12-01 17:21:21 +01:00
Andrew Murray
eeb685b6c4 GIFs change mode for later frames [ci skip] 2021-11-29 18:50:22 +11:00
Andrew Murray
3f3828040b
Merge branch 'master' into tiff_exif 2021-09-07 06:33:37 +10:00
Andrew Murray
26d932505f Corrected property name [ci skip] 2021-08-15 17:28:52 +10:00
Andrew Murray
1d73a483f4 Added "transparency" argument to load() 2021-07-19 09:08:45 +10:00
Andrew Murray
c0f619384c Added "exif" keyword argument to save Image.Exif instance 2021-07-04 12:33:55 +10:00
Andrew Murray
45d5848c30 Use line blocks instead of blank lines 2021-07-02 18:59:12 +10:00
Hugo van Kemenade
26c5eb4bbc Add th headers to tables, newlines, fix typo 2021-07-01 13:29:44 +03:00
Andrew Murray
90ece137b0
Merge branch 'master' into master 2021-06-29 20:52:35 +10:00
Hugo van Kemenade
70fafe3da7
Update version number 2021-06-28 16:36:30 +03:00
Andrew Murray
2afc6fdfc4 Documented updates to DDS format 2021-06-14 18:14:28 +10:00
Andrew Murray
fc1e7f423a
Corrected syntax [ci skip]
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2021-06-13 07:43:00 +10:00
Andrew Murray
ab1cc6ffa4 Copies of an image do not retain the format [ci skip] 2021-06-10 09:18:14 +10:00
Andrew Murray
2c9a9b3529 Added ICO saving in BMP format 2021-05-27 06:21:28 +10:00
Andrew Murray
0f68e63793 Allow for sys.stdout.buffer to be missing 2021-05-03 18:07:05 +10:00
Andrew Murray
9c06ce044c Changed PSDraw default from sys.stdout to sys.stdout.buffer 2021-04-29 21:35:57 +10:00
Andrew Murray
2c03800824 Changed default "method" value to 4 2021-04-28 18:20:44 +10:00
Andrew Murray
01871b88df Changed wording to avoid confusion with IMAGING_TYPE_SPECIAL [ci skip] 2021-04-17 09:23:16 +10:00
Andrew Murray
302ddc9b5e Corrected syntax 2021-04-10 11:39:24 +10:00
Tanner Davis
8c38c80bb1
Now the rst link to the Image class should work 2021-04-09 11:47:29 -06:00
Tanner Davis
8da6eef073
Made sure the rst link to the Image class was correct 2021-04-09 11:09:16 -06:00
Tanner Davis
ef3de6bf4f
PDF format docs, append_images param update [ci skip]
Made sure it is documented that both the `append_images` and `save_all` params must be set. Just setting `append_images` does not work.
2021-04-09 10:53:33 -06:00
Andrew Murray
242af47a68 Removed obsolete "tiff_deflate" from compression methods [ci skip] 2021-03-19 12:14:41 +11:00
Andrew Murray
8f37f8dcb0 Sorted TIFF compression methods alphabetically [ci skip] 2021-03-17 17:54:37 +11:00
Andrew Murray
dd097fe1fd Updated list of TIFF compression methods [ci skip] 2021-03-17 11:14:12 +11:00
Andrew Murray
cfcedcc520 icc_profile is now a keyword argument when saving TIFF files [ci skip] 2021-03-14 21:21:40 +11:00
Andrew Murray
9c09a975df Corrected syntax [ci skip] 2021-02-23 23:08:44 +11:00
Andrew Murray
86ad435ee4
Merge branch 'master' into master 2020-12-30 13:05:35 +11:00
Andrew Murray
e37a8a263d
Merge pull request #4568 from ziplantil/ico-append-images
Add append_images support for ICO
2020-12-24 11:10:33 +11:00
Andrew Murray
cf9158f635 Corrected syntax [ci skip] 2020-11-28 12:10:20 +11:00
Andrew Murray
6806fa1a20 PNG supports append_images [ci skip] 2020-11-04 22:56:14 +11:00
Andrew Murray
1ced7b7c92 Document ICO append_images [ci skip] 2020-11-04 22:52:45 +11:00
Andrew Murray
d171afc19e Describe effect of WebP save_all [ci skip] 2020-10-28 22:03:27 +11:00
Jon Dufresne
eb460a2ac8 Fix internal Sphinx link to installation doc
Fixes linkcheck warnings:

    handbook/image-file-formats.rst:563: [broken] ../installation.html:
    releasenotes/4.2.0.rst:7: [broken] ../installation.html:
2020-10-17 11:23:58 -07:00
Hugo van Kemenade
a7f384a813
Merge pull request #4292 from radarhere/private_png_chunks
Added reading and writing of private PNG chunks
2020-10-05 23:49:09 +03:00
nulano
d22608b7bd fix hyphens and add missing articles
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2020-10-04 20:12:47 +01:00
nulano
a9b8dcba7d write anchor docs
(cherry picked from commit dcaee36941e6cb5e6f93186b6f819fb74887e0d3)
2020-09-22 14:58:17 +02:00
MauveRanger
96b3935adc
[ci skip] Clarify that modes are strings, not constants
I misunderstood this section the first time I read it. I hope this change will clarify how to request a mode such as from Image.new("RGBA", size)
2020-09-09 18:28:49 -04:00
Hugo van Kemenade
e0eec1eb56 Merge branch 'master' into rm-3.5 2020-09-01 20:16:46 +03:00
Hugo van Kemenade
10615a7da7 Upgrade Python syntax for 3.6+
Co-authored-by: nulano <nulano@nulano.eu>
2020-07-30 10:09:18 +03:00
Andrew Murray
836dcc5ba0 Document missing attributes 2020-07-23 22:40:02 +10:00
Andrew Murray
45564fe89d Removed domain references when referring to hypothetical code 2020-07-14 22:36:46 +10:00
Andrew Murray
cd10404abb Corrected reference 2020-07-14 22:36:36 +10:00
Hugo van Kemenade
4ca7e7e699
Merge pull request #4771 from nulano/refs-misc 2020-07-11 12:42:50 +03:00
nulano
39b5d7b4ac fix TiffTags and Exif related references 2020-07-11 13:25:10 +10:00
nulano
0083ebb3d4 fix various reference typos 2020-07-11 13:25:10 +10:00
nulano
9c277f5c49 document PngImagePlugin constants 2020-07-11 13:23:19 +10:00
Hugo van Kemenade
fc1f16b616
Merge pull request #4774 from nulano/refs-std 2020-07-10 17:45:04 +03:00
Hugo van Kemenade
384523fab2 Fix PostScript typos 2020-07-10 11:48:02 +03:00
nulano
9589159585 use cross-reference for None value 2020-07-10 00:08:27 +02:00
Hugo van Kemenade
109c637ddb 'plugin', formatting and typos 2020-07-03 09:38:30 +03:00
nulano
9019af5f32
Merge branch 'master' into refs-const 2020-06-28 10:55:26 +01:00
nulano
19dd5cbfab fix some function references
(cherry picked from commit 9fb582940d)
2020-06-27 15:40:37 +02:00
nulano
3342270947 fix Image constants references
(cherry picked from commit 5511111f3b)
2020-06-27 15:39:55 +02:00
Andrew Murray
3b62151215 Changed example function name to match use in code [ci skip] 2020-05-17 16:05:54 +10:00
Andrew Murray
67d26ed051 Use _accept function in example plugin [ci skip] 2020-05-17 09:24:06 +10:00
Hugo
94c7af7596 Replace spaces with tabs and add to pre-commit linting 2020-05-01 21:23:39 +03:00
Hugo
dda6145fce Since Python 3.3 IOError and WindowsError have been merged into OSError 2020-04-10 12:57:29 +03:00
Andrew Murray
a283102ff4 ICNS can now be saved on non-macOS platforms [ci skip] 2020-04-07 21:17:09 +10:00
Andrew Murray
e2437c9b48 Corrected description [ci skip] 2020-04-06 21:57:45 +10:00
Andrew Murray
9f61be4c72
Merge branch 'master' into apng 2020-03-09 23:29:40 +11:00
Andrew Murray
e41cfade29 Add JPEG comment to info dictionary 2020-03-07 06:57:29 +11:00
Hugo van Kemenade
0f7ed2d35f
Merge pull request #4435 from radarhere/close_images
Close exclusively opened images
2020-03-06 00:27:46 +02:00
Hugo van Kemenade
64a9e0c660
Merge branch 'master' into apng 2020-02-29 17:40:17 +02:00
Andrew Murray
04f7c75466 Use context manager when opening images [ci skip] 2020-02-29 10:29:44 +11:00
Peter Rowlands
9b72f0513c Adjust is_animated behavior
- Make is_animated APNG behavior consistent with other Pillow formats
- is_animated will be true when n_frames is greater than 1 (for APNG
  this depends on animation frame count + presence or absence of a
  default image)
2020-02-23 15:14:06 +11:00
Peter Rowlands
dcc3f41fa1 Add release notes 2020-02-23 15:14:06 +11:00
Peter Rowlands
3a254701f6 Cleanup documentation
- Add changes requested by hugovk
2020-02-23 15:14:06 +11:00
Peter Rowlands (변기호)
0b536fb599 fix documentation review issue
[ci skip]

Co-Authored-By: Andrew Murray <3112309+radarhere@users.noreply.github.com>
2020-02-23 15:14:06 +11:00
Peter Rowlands
916b2e1b74 Document APNG support 2020-02-23 15:14:06 +11:00
Andrew Murray
a8c0794107 Allow saving of zero quality JPEG images 2020-02-21 22:05:44 +11:00
Andrew Murray
8e7010d9ae Changed example plugin to work in Python 3 [ci skip] 2020-02-09 15:34:14 +11:00
Andrew Murray
db970acfa5 Grammar fix [ci skip] 2020-02-06 20:10:34 +11:00
Andrew Murray
1f58028173 Use BytesIO instead of StringIO [ci skip] 2020-01-21 23:21:57 +11:00
Andrew Murray
feec1bbcb2 Updated WMF documentation [ci skip] 2019-12-30 10:12:37 +11:00
Hugo
7b4ae104f0 Fix malformed table 2019-12-16 15:07:56 +02:00
Hugo
cc63f66575 Merge remote-tracking branch 'upstream/master' into rm-2.7 2019-11-01 13:22:56 +02:00
Jon Dufresne
4cd4adddc3 Improve handling of file resources
Follow Python's file object semantics. User code is responsible for
closing resources (usually through a context manager) in a deterministic
way.

To achieve this, remove __del__ functions. These functions used to
closed open file handlers in an attempt to silence Python
ResourceWarnings. However, using __del__ has the following drawbacks:

- __del__ isn't called until the object's reference count reaches 0.
  Therefore, resource handlers remain open or in use longer than
  necessary.

- The __del__ method isn't guaranteed to execute on system exit. See the
  Python documentation:

  https://docs.python.org/3/reference/datamodel.html#object.__del__

  > It is not guaranteed that __del__() methods are called for objects
  > that still exist when the interpreter exits.

- Exceptions that occur inside __del__ are ignored instead of raised.
  This has the potential of hiding bugs. This is also in the Python
  documentation:

  > Warning: Due to the precarious circumstances under which __del__()
  > methods are invoked, exceptions that occur during their execution
  > are ignored, and a warning is printed to sys.stderr instead.

Instead, always close resource handlers when they are no longer in use.
This will close the file handler at a specified point in the user's code
and not wait until the interpreter chooses to. It is always guaranteed
to run. And, if an exception occurs while closing the file handler, the
bug will not be ignored.

Now, when code receives a ResourceWarning, it will highlight an area
that is mishandling resources. It should not simply be silenced, but
fixed by closing resources with a context manager.

All warnings that were emitted during tests have been cleaned up. To
enable warnings, I passed the `-Wa` CLI option to Python. This exposed
some mishandling of resources in ImageFile.__init__() and
SpiderImagePlugin.loadImageSeries(), they too were fixed.
2019-10-12 08:27:17 -07:00