Benjamin Gilbert
4b422db243
Add keep_rgb option to prevent RGB -> YCbCr conversion during JPEG write
...
libjpeg automatically converts RGB to YCbCr by default. Add a keep_rgb
option to disable libjpeg's automatic conversion of RGB images during
write.
2023-12-13 18:26:35 -06:00
Andrew Murray
4b308dc2bf
Merge pull request #7488 from bgilbert/jpeg-restart
...
Allow configuring JPEG restart marker interval on save
2023-11-14 23:42:50 +11:00
Hugo van Kemenade
556dd1e15c
Merge pull request #7535 from hugovk/add-3.13
2023-11-12 00:34:12 +02:00
Hugo van Kemenade
9b88cf5ad9
#ifdef _UNISTD_H -> HAVE_UNISTD_H
2023-11-08 18:48:40 +02:00
Hugo van Kemenade
95eef25aca
Fix for Python 3.13: explicitly include unistd.h
2023-11-08 17:52:43 +02:00
Benjamin Gilbert
e572722479
Allow configuring JPEG restart marker interval on save
...
libjpeg allows specifying the marker interval either in MCU blocks or in
MCU rows. Support both, via separate parameters, rather than requiring
callers to do the math.
Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2023-10-31 17:47:25 -05:00
Benjamin Gilbert
4d7372bfd0
Implement streamtype=1 option for tables-only JPEG encoding
...
We already support streamtype=2 to skip producing JPEG tables, but
streamtype=1, which skips everything but the tables, was never implemented.
The streamtype=1 stub code dates to Git pre-history, so it's not
immediately clear why. Implement the missing support.
jpeg_write_tables() can't resume after a full output buffer (it fails with
JERR_CANT_SUSPEND), so it might seem that Pillow needs to pre-compute the
necessary buffer size. However, in the normal case of producing an
interchange stream, the tables are written via the same libjpeg codepath
during the first jpeg_write_scanlines() call, and table writes aren't
resumable there either. Thus, any buffer large enough for the normal case
will also be large enough for a tables-only file.
The streamtype option isn't documented and this commit doesn't change that.
It does add a test though.
Co-authored-by: Andrew Murray <radarhere@users.noreply.github.com>
2023-10-24 20:30:45 -05:00
Andrew Murray
d682c18ded
Use "gray" more consistently
2023-10-19 19:12:01 +11:00
Andrew Murray
4e7f61f459
Merge branch 'main' into bgr
2023-10-06 18:50:25 +11:00
Andrew Murray
b8c30655cc
Include CMYK to RGB convert as unpacker
2023-10-06 16:05:03 +11:00
Andrew Murray
787daa9f19
Merge branch 'main' into cmyk2rgb
2023-10-06 15:52:32 +11:00
Hugo van Kemenade
6f73691564
Merge pull request #7257 from radarhere/i16_point
2023-10-05 12:54:25 -06:00
Hugo van Kemenade
09605ff48e
Merge pull request #7413 from radarhere/bc5s
2023-10-05 09:48:12 -06:00
Hugo van Kemenade
5f04b3d278
Merge pull request #7289 from radarhere/undefined_palette
2023-10-05 09:31:02 -06:00
Hugo van Kemenade
f76b63d016
Add end-of-file-fixer to pre-commit
2023-09-25 16:45:38 +03:00
Andrew Murray
352bcaac74
Set blue channel to 128 for BC5S
2023-09-21 16:38:45 +10:00
Andrew Murray
e57b08affd
Move strcmp outside of while loops
2023-09-21 16:38:19 +10:00
Andrew Murray
96e3534034
Corrected converting signed values to unsigned in BC5S
2023-09-16 13:53:10 +10:00
Andrew Murray
9f54a11a9c
Improve efficiency when a radius is zero
2023-08-12 18:17:07 +10:00
Andrew Murray
c167d7a269
Allow GaussianBlur and BoxBlur to accept a sequence of x and y radii
2023-08-12 12:09:20 +10:00
Hugo van Kemenade
95257dff87
Merge pull request #7299 from radarhere/pdf
2023-08-04 11:43:09 +03:00
Andrew Murray
00cec60c35
Added CMYK to RGB unpacker
2023-07-29 21:05:33 +10:00
Andrew Murray
5fa05623ff
Added BGR;15, BGR;16 and BGR;24 unpacking
2023-07-26 20:09:40 +10:00
Andrew Murray
3230270aa7
Added BGR;15, BGR;16 and BGR;24 access
2023-07-26 20:09:40 +10:00
Andrew Murray
c108d9ddb0
Set alpha channel when saving LA in OpenJPEG
2023-07-22 20:05:31 +10:00
Andrew Murray
577a4d8bf8
Change get_pixel to be specific to images with 2 bands
2023-07-21 21:08:20 +10:00
Andrew Murray
7ffad80294
Removed put_pixel
2023-07-21 20:59:28 +10:00
Andrew Murray
32eec53c43
Removed comment
2023-07-17 23:50:59 +10:00
Andrew Murray
fd310512b9
Set C palette to be empty by default
2023-07-17 23:04:43 +10:00
Andrew Murray
ba9c830b03
Corrected writing I;16 text
2023-07-08 11:30:48 +10:00
Andrew Murray
5e2332a200
Corrected drawing I;16 points
2023-07-05 08:49:56 +10:00
Hugo van Kemenade
0ac3677b56
Merge pull request #7199 from radarhere/tiff_close
2023-06-30 09:27:26 +03:00
Hugo van Kemenade
be4bfaac9e
Merge pull request #7123 from radarhere/apng
2023-06-30 09:24:20 +03:00
Andrew Murray
45c9dcf123
Restored 32-bit support
2023-06-27 14:43:58 +10:00
Hugo van Kemenade
190c53a1b1
Merge pull request #7228 from radarhere/32bit
...
Removed support for 32-bit
2023-06-24 19:02:00 +03:00
Andrew Murray
d6f19625e8
Removed support for 32-bit
2023-06-23 21:52:00 +10:00
Andrew Murray
17b19b5668
Merge branch 'main' into apng
2023-06-14 11:26:42 +10:00
Andrew Murray
68edbbca94
Merge branch 'main' into int_def
2023-06-14 09:11:41 +10:00
Hugo van Kemenade
c62c514299
Merge pull request #7187 from radarhere/putpalette
2023-06-13 20:10:33 +03:00
Hugo van Kemenade
9d08c8247d
Merge pull request #7180 from radarhere/int64
2023-06-13 20:08:26 +03:00
Andrew Murray
aeb6e9909e
Removed unused argument
2023-06-10 15:57:05 +10:00
Andrew Murray
748a4d0fcd
Removed unused variable
2023-06-10 14:26:28 +10:00
Andrew Murray
15edb6d625
Fixed signedness comparison warning
2023-06-07 22:33:55 +10:00
Andrew Murray
0835be95cb
Added comment
2023-06-05 15:07:11 +10:00
Andrew Murray
e45da2ae17
Do not close provided file handles with libtiff
2023-06-05 11:07:09 +10:00
Andrew Murray
07eccd9798
Fixed calling putpalette() on L and LA images before load()
2023-05-28 06:44:34 +10:00
Andrew Murray
b8719033ca
Removed unused INT64 definition
2023-05-23 22:53:16 +10:00
Yay295
f6b516bb06
Adjust C preprocessor block labels
...
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
2023-05-19 08:11:39 -05:00
Yay295
724f266460
change INT16 def failure to an error
2023-05-18 17:49:13 -05:00
Yay295
9da0b58eea
move INT8 def to top
2023-05-18 17:49:13 -05:00
Yay295
fbec8f19dd
add check for C99+ to use their defs if possible
2023-05-18 17:49:13 -05:00
Yay295
c2527348ec
add comment explaining why #define and not typedef
2023-05-18 17:49:13 -05:00
Yay295
e9cfe4b6a2
label preprocessor if..else..endif for clarity
2023-05-18 17:49:13 -05:00
Yay295
6de5e999bd
add UINT64 def if INT64 is defined
2023-05-18 17:49:12 -05:00
Yay295
509671c53e
fix INT64 def and add warning if not set
2023-05-18 17:49:12 -05:00
Hugo van Kemenade
74a851965c
Merge pull request #7108 from radarhere/filter
2023-05-03 18:18:53 +03:00
Andrew Murray
ff003bfbcc
Added unpacker from I;16B to I;16
2023-04-30 14:49:40 +10:00
Andrew Murray
96bdbc4afe
Renamed variable
2023-04-29 19:11:02 +10:00
Andrew Murray
ebd3c47425
When saving, allow alpha differences to indicate different frames
2023-04-29 15:02:11 +10:00
Andrew Murray
d0b41da094
Support I mode for BuiltinFilter
2023-04-22 21:22:01 +10:00
Andrew Murray
57bbe6df2c
Remove use of deprecated "bpp" member
2023-04-16 23:16:01 +10:00
Andrew Murray
89d2cdfcfa
Fixed warning that nLeft is set but not used
2023-03-31 22:30:36 +11:00
Andrew Murray
f8be09612d
Merge pull request #6903 from joshware/jp2k_options
...
Support custom comments and PLT markers when saving JPEG2000 images
2023-03-29 23:43:54 +11:00
Andrew Murray
2f66d2d6a1
Changed maximum comment length to 65531
2023-03-29 19:25:35 +11:00
Andrew Murray
1fd189164c
Renamed "add_plt" to "plt"
2023-03-27 22:38:29 +11:00
Andrew Murray
d5d830dd00
Merge branch 'main' into bgr32
2023-03-25 23:45:48 +11:00
Andrew Murray
176b2a2000
Merge branch 'master' into jp2k_options
2023-03-23 08:57:20 +11:00
Andrew Murray
11d100ce5d
Support creating BGR;15, BGR;16 and BGR;24 images
2023-03-20 00:30:10 +11:00
Andrew Murray
9e6ae98362
Dropped support for BGR;32 mode
2023-03-13 17:31:12 +11:00
Andrew Murray
f8d93267e1
Merge branch 'main' into i16n
2023-03-13 14:33:26 +11:00
Andrew Murray
36ee817329
Merge branch 'main' into pdf
2023-03-12 23:31:26 +11:00
Andrew Murray
b84c29a035
Raise an error if co-ordinates are incorrectly ordered
2023-03-01 11:22:35 +11:00
Andrew Murray
b3af769c1a
Set alpha channel for OpenJPEG
2023-02-02 20:52:50 +11:00
Andrew Murray
04e8a9b3e7
Removed unnecessary code
2023-01-31 22:32:02 +11:00
Josh Ware
de43bc99c8
Added support for jpeg2000 comments and PLT marker segments
2023-01-19 11:37:14 +11:00
Andrew Murray
173b65d095
Raise ValueError during filter operation as well
2023-01-11 20:02:10 +11:00
Andrew Murray
91b01f4cc2
Return from ImagingFill early if image has a zero dimension
2022-12-30 16:48:33 +11:00
Andrew Murray
4518dc82ba
Merge branch 'main' into signed
2022-12-29 09:37:35 +11:00
Hugo van Kemenade
88a81db1c4
Merge pull request #6708 from radarhere/rgba2rgb_
...
Resolves https://github.com/python-pillow/Pillow/issues/6706
2022-12-28 16:27:31 +02:00
Andrew Murray
a0e1608f4f
Support accessing I;16N pixels
2022-12-28 18:58:16 +11:00
Andrew Murray
8cfc25618f
Support unpacking I;16N
2022-12-28 18:57:24 +11:00
Andrew Murray
e908e10aab
Support packing I;16N
2022-12-28 17:47:38 +11:00
Andrew Murray
700a8e98da
Support converting between I;16N and L
2022-12-28 17:47:15 +11:00
Andrew Murray
318b658c9c
Initialize unsigned char variables
2022-12-22 17:16:52 +11:00
Sam Mason
eddc9bdcec
switch to #z for comment parameter
...
* means `comment=None` can be passed directly
* no need to conditionally run `str.encode()`
* clean up checking of whether a comment is passed
2022-12-05 17:46:54 +00:00
Andrew Murray
e50ae85ea4
Use jpeg_write_marker to write comment
2022-12-05 13:57:26 +11:00
Yay295
16994ccc9b
remove unused ImagingAccess->line() method def
2022-11-12 17:15:50 -06:00
Yay295
20f17cc6a7
remove unused ImagingAccess->line() method defs
2022-11-12 17:14:37 -06:00
Andrew Murray
6ddbe4cbf0
Added signed option when saving JPEG2000 images
2022-11-03 18:26:31 +11:00
Andrew Murray
5b4703d615
Added conversion from RGBa to RGB
2022-11-01 08:39:02 +11:00
Andrew Murray
93e5fd4b40
Initialize libtiff buffer
2022-10-29 12:02:03 +03:00
Christoph Gohlke
4ab80f663e
Remove backup implementation of Round for Windows platforms
2022-10-27 08:15:36 -07:00
Christoph Gohlke
d97db54be0
Only use ASCII characters in C source file
2022-10-26 11:17:28 -07:00
Hugo van Kemenade
9bbf56b368
Merge pull request #6418 from hmaarrfk/parallel_matrix_convert
2022-10-25 21:11:22 +03:00
Andrew Murray
28878c68e1
Merge pull request #6449 from ShadelessFox/main
...
Added DDS BC6 reading
2022-10-11 12:58:24 +11:00
Andrew Murray
78d258f24d
Removed gamma correction
2022-10-10 20:48:18 +11:00
Andrew Murray
eef4d1ced1
Moved mode check outside of loops
2022-10-09 08:48:07 +11:00
Andrew Murray
34f61d6d2d
Updated redirected URLs
2022-09-23 22:13:50 +10:00
Hugo van Kemenade
0b5c150805
Merge pull request #6497 from radarhere/convert
2022-08-31 17:09:38 +03:00
Andrew Murray
e613271776
Fixed typo
2022-08-27 18:48:47 +10:00