Commit Graph

134 Commits

Author SHA1 Message Date
Andrew Murray
709744432a Optimise palettes with more than 128 colors 2022-06-19 16:47:50 +10:00
pre-commit-ci[bot]
f656711c80 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2022-06-19 00:20:28 +00:00
Ray Gardner
128ed189e5 Improve test in _get_optimize()
Palette can be optimized if number of colors can be reduced by half or more.
2022-06-18 18:07:58 -06:00
Hugo van Kemenade
27f5c4d8fb
Merge pull request #6176 from radarhere/gif_transparency
Improve transparency handling when saving GIF
2022-05-27 08:31:37 +02:00
Hugo van Kemenade
0476914ee4
Merge pull request #6219 from radarhere/gif_eof
Do not update GIF frame position until local image is found
2022-05-27 08:29:38 +02:00
Andrew Murray
2457eafabd Only read the number of loops from the first frame 2022-05-24 12:53:19 +10:00
Andrew Murray
5cf02f816f Moved Netscape extension after global color table when saving 2022-05-24 12:53:03 +10:00
Andrew Murray
62d0f0e38d Once comment is loaded, keep it for subsequent frames 2022-05-22 15:30:16 +10:00
Andrew Murray
db76eaa12c
Merge branch 'main' into comment_correct_placement 2022-05-22 14:56:57 +10:00
Andrew Murray
e9cb2156ec
Merge pull request #6294 from raygard/comments_separate_multiple
Separate multiple GIF comment blocks in a frame with newlines
2022-05-22 14:53:03 +10:00
Andrew Murray
62d5817e29 Changed delimiter to \n 2022-05-22 14:11:11 +10:00
Andrew Murray
46a80d144a Update transparency when remapping the palette 2022-05-21 16:37:47 +10:00
Andrew Murray
2072a52bb5
Merge pull request #6292 from raygard/comment_use_gif89a
Always use GIF89a for comments
2022-05-21 10:24:14 +10:00
Hugo van Kemenade
2c58c3ee11
Merge pull request #6213 from radarhere/fp 2022-05-19 18:52:55 +03:00
Andrew Murray
98329354e0 Simplified version check 2022-05-19 20:59:16 +10:00
Ray Gardner
22d9095e5c Correct placement of GIF comment
Place GIF comment after Global Color table. Should go after "NETSCAPE" looping extension after pull #6211.
2022-05-13 17:09:37 -06:00
Ray Gardner
44c6467400 Multiple GIF comments in a frame are separated
If more than one comment is in a GIF frame, separate them with \r\n in the info dict.
2022-05-13 16:36:20 -06:00
Ray Gardner
b3d29e946a Always use GIF89a for long comments
Fix bug that allows GIFs with long comments to be written as GIF87a.
2022-05-13 11:33:33 -06:00
Andrew Murray
7e084c7ede Use durations from each frame by default when saving 2022-05-03 20:07:47 +10:00
Andrew Murray
bcded33cee
Merge pull request #6195 from hugovk/cleanup
Cleanup: various
2022-04-26 18:51:44 +10:00
Andrew Murray
4e075adcc5 Merged _close_fp into close and __exit__ 2022-04-17 12:13:58 +10:00
Andrew Murray
2ae52552f7 Renamed __fp to _fp 2022-04-17 12:13:58 +10:00
Andrew Murray
c8118438ae Do not update frame position until local image is found 2022-04-16 17:07:39 +10:00
Hugo van Kemenade
fe4c859fc1 [Private] argument name should be snake_case 2022-04-10 23:55:16 +03:00
Hugo van Kemenade
1997c814ab Move useful comment into docstring 2022-04-10 23:39:54 +03:00
Andrew Murray
6b2da2f123 Consider transparency from each frame when saving 2022-04-02 21:04:22 +11:00
Hugo van Kemenade
e60ca89721
Merge pull request #6150 from radarhere/gif 2022-03-30 23:23:59 +03:00
Andrew Murray
e22a4395d3 Renamed setting 2022-03-29 21:26:29 +11:00
Andrew Murray
33022eef16 Added versionadded 2022-03-28 22:02:26 +11:00
Hugo van Kemenade
aeba11db1b
Merge pull request #6148 from radarhere/gif_size 2022-03-26 19:48:08 +02: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
Andrew Murray
d806227199 Do not expand GIF during n_frames 2022-03-21 23:19:26 +11:00
Andrew Murray
76871795f7 Resolved UNDONE by removing code 2022-03-12 15:54:08 +11:00
Andrew Murray
4e16a9a942 Retain RGBA transparency when saving multiple frames 2022-03-12 15:14:36 +11:00
Andrew Murray
ca6724bb9d Merge branch 'main' into gif 2022-03-11 08:44:42 +11:00
Hugo van Kemenade
29960c6610
Merge pull request #6108 from radarhere/none 2022-03-10 17:36:13 +02:00
Andrew Murray
c27519960f Check if self.im is not None 2022-03-03 22:10:19 +11:00
Andrew Murray
7d3274518d Allow LA to be used as a mask in paste() 2022-03-01 21:05:42 +11:00
Andrew Murray
5c6212052c Convert subsequent frames of L mode GIF to LA if transparency is present 2022-03-01 20:11:35 +11:00
Andrew Murray
f8546768d6 Do not update images during n_frames or is_animated seeking 2022-02-21 18:34:05 +11:00
Andrew Murray
590c616cfd If next byte ends the GIF, stay on the current frame 2022-02-21 17:35:50 +11:00
Andrew Murray
73cf28cc94 If GIF has already seeked past first frame, it is animated 2022-02-21 15:57:13 +11:00
Andrew Murray
f8e4e9c2dd Added enums 2022-01-15 09:02:31 +11:00
Andrew Murray
0e10a5cc7b When saving RGBA, make use of first transparent palette entry 2021-12-07 06:37:01 +11:00
Andrew Murray
6337428df1 Loading transparent pixels in C from subsequent GIF frames is no longer a problem 2021-11-29 17:49:12 +11:00
Andrew Murray
b383a175be Convert subsequent GIF frames to RGB or RGBA 2021-11-29 17:49:06 +11:00
Hugo van Kemenade
31a96b9c9b Upgrade Python syntax with pyupgrade --py36-plus and format with Black 2021-10-19 15:34:52 +03:00