mirror of
https://github.com/python-pillow/Pillow.git
synced 2024-11-11 04:07:21 +03:00
Merge branch 'main' into grabclipboard-linux
This commit is contained in:
commit
8b14a67347
|
@ -5,6 +5,9 @@ Changelog (Pillow)
|
|||
10.1.0 (unreleased)
|
||||
-------------------
|
||||
|
||||
- Read WebP duration after opening #7311
|
||||
[k128, radarhere]
|
||||
|
||||
- Allow "loop=None" when saving GIF images #7329
|
||||
[radarhere]
|
||||
|
||||
|
|
|
@ -79,7 +79,7 @@ class TestFilePng:
|
|||
|
||||
def test_sanity(self, tmp_path):
|
||||
# internal version number
|
||||
assert re.search(r"\d+\.\d+\.\d+(\.\d+)?$", features.version_codec("zlib"))
|
||||
assert re.search(r"\d+(\.\d+){1,3}$", features.version_codec("zlib"))
|
||||
|
||||
test_file = str(tmp_path / "temp.png")
|
||||
|
||||
|
|
|
@ -233,5 +233,4 @@ class TestFileWebp:
|
|||
im.save(out_webp, save_all=True)
|
||||
|
||||
with Image.open(out_webp) as reloaded:
|
||||
reloaded.load()
|
||||
assert reloaded.info["duration"] == 1000
|
||||
|
|
|
@ -83,10 +83,9 @@ Install Pillow with :command:`pip`::
|
|||
.. tab:: Windows
|
||||
|
||||
We provide Pillow binaries for Windows compiled for the matrix of
|
||||
supported Pythons in both 32 and 64-bit versions in the wheel format.
|
||||
These binaries include support for all optional libraries except
|
||||
libimagequant and libxcb. Raqm support requires
|
||||
FriBiDi to be installed separately::
|
||||
supported Pythons in 64-bit versions in the wheel format. These binaries include
|
||||
support for all optional libraries except libimagequant and libxcb. Raqm support
|
||||
requires FriBiDi to be installed separately::
|
||||
|
||||
python3 -m pip install --upgrade pip
|
||||
python3 -m pip install --upgrade Pillow
|
||||
|
|
|
@ -206,4 +206,4 @@ Support reading signed 8-bit TIFF images
|
|||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
TIFF images with signed integer data, 8 bits per sample and a photometric
|
||||
interpretaton of BlackIsZero can now be read.
|
||||
interpretation of BlackIsZero can now be read.
|
||||
|
|
|
@ -74,6 +74,9 @@ class WebPImageFile(ImageFile.ImageFile):
|
|||
self.info["background"] = (bg_r, bg_g, bg_b, bg_a)
|
||||
self.n_frames = frame_count
|
||||
self.is_animated = self.n_frames > 1
|
||||
ret = self._decoder.get_next()
|
||||
if ret is not None:
|
||||
self.info["duration"] = ret[1]
|
||||
self._mode = "RGB" if mode == "RGBX" else mode
|
||||
self.rawmode = mode
|
||||
self.tile = []
|
||||
|
@ -90,7 +93,7 @@ class WebPImageFile(ImageFile.ImageFile):
|
|||
self.info["xmp"] = xmp
|
||||
|
||||
# Initialize seek state
|
||||
self._reset(reset=False)
|
||||
self._reset()
|
||||
|
||||
def _getexif(self):
|
||||
if "exif" not in self.info:
|
||||
|
@ -113,9 +116,8 @@ class WebPImageFile(ImageFile.ImageFile):
|
|||
# Set logical frame to requested position
|
||||
self.__logical_frame = frame
|
||||
|
||||
def _reset(self, reset=True):
|
||||
if reset:
|
||||
self._decoder.reset()
|
||||
def _reset(self):
|
||||
self._decoder.reset()
|
||||
self.__physical_frame = 0
|
||||
self.__loaded = -1
|
||||
self.__timestamp = 0
|
||||
|
|
|
@ -130,9 +130,9 @@ deps = {
|
|||
"bins": ["cjpeg.exe", "djpeg.exe"],
|
||||
},
|
||||
"zlib": {
|
||||
"url": "https://zlib.net/zlib1213.zip",
|
||||
"filename": "zlib1213.zip",
|
||||
"dir": "zlib-1.2.13",
|
||||
"url": "https://zlib.net/zlib13.zip",
|
||||
"filename": "zlib13.zip",
|
||||
"dir": "zlib-1.3",
|
||||
"license": "README",
|
||||
"license_pattern": "Copyright notice:\n\n(.+)$",
|
||||
"build": [
|
||||
|
@ -335,9 +335,9 @@ deps = {
|
|||
"libs": [r"imagequant.lib"],
|
||||
},
|
||||
"harfbuzz": {
|
||||
"url": "https://github.com/harfbuzz/harfbuzz/archive/8.0.0.zip",
|
||||
"filename": "harfbuzz-8.0.0.zip",
|
||||
"dir": "harfbuzz-8.0.0",
|
||||
"url": "https://github.com/harfbuzz/harfbuzz/archive/8.1.1.zip",
|
||||
"filename": "harfbuzz-8.1.1.zip",
|
||||
"dir": "harfbuzz-8.1.1",
|
||||
"license": "COPYING",
|
||||
"build": [
|
||||
*cmds_cmake(
|
||||
|
|
Loading…
Reference in New Issue
Block a user