Andrew Murray
6cad0d62e7
Do not crop again if glyph is the same as the previous one
2024-01-01 16:14:45 +11:00
Andrew Murray
8676cbd4e7
Do not try and crop glyphs from outside of source ImageFont image
2024-01-01 16:13:24 +11:00
Andrew Murray
ceca12e876
Restored comment
2023-10-07 07:00:29 +00:00
Andrew Murray
d9283fd1f8
Use default value
...
Co-authored-by: Alexander Karpinsky <homm86@gmail.com>
2023-10-07 17:09:17 +11:00
Andrew Murray
57c1cf603e
Fixed may be used uninitialized warning
2023-10-07 01:15:04 +11:00
Andrew Murray
4e7f61f459
Merge branch 'main' into bgr
2023-10-06 18:50:25 +11: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
Andrew Murray
9bd574058e
Support BGR;15, BGR;16 and BGR;24 in putdata
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
Yay295
e7398c7888
update PyTypeObject slot names
...
tp_print was renamed to tp_vectorcall_offset with Python 3.8, and tp_compare was renamed to tp_as_async with Python 3.5.
tp_size has always been tp_basicsize; I don't know why that one was wrong.
2023-07-02 00:52:08 -05:00
Andrew Murray
17b19b5668
Merge branch 'main' into apng
2023-06-14 11:26:42 +10:00
Andrew Murray
aeb6e9909e
Removed unused argument
2023-06-10 15:57:05 +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
59d67fa68a
Only call PyTuple_Check once in getink
2023-03-31 21:59:06 +11:00
Andrew Murray
d84e227204
Fixed warning that variable may be uninitialized
2023-03-31 21:52:37 +11:00
Hugo van Kemenade
f191666a91
Merge pull request #6999 from radarhere/null
...
Handle failure from PyDict_New or PyList_New
2023-03-31 08:32:13 +03:00
Andrew Murray
0ea1184bcf
Free additional variables
...
Co-authored-by: Ondrej Baranovič <3819630+nulano@users.noreply.github.com>
2023-03-30 07:54:01 +11:00
Andrew Murray
d5d830dd00
Merge branch 'main' into bgr32
2023-03-25 23:45:48 +11:00
Andrew Murray
dc79a09d62
Merge branch 'main' into null
2023-03-22 18:56:52 +11:00
nulano
1a11ba662c
do not insert null into dict
2023-03-21 22:05:26 +00:00
Andrew Murray
6328662248
PyUnicode_* may return NULL
2023-03-20 17:36:55 +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
01cdfb6b27
Removed duplicate calls to PyTuple_GET_SIZE
2023-03-19 23:29:17 +11:00
Andrew Murray
b3d7823740
Decrement reference count
2023-03-12 00:11:48 +11:00
Andrew Murray
c63b0ca210
Decrement reference count
2023-03-11 18:32:43 +11:00
Andrew Murray
929dbba834
Handle failure from PyDict_New or PyList_New
2023-03-10 17:37:06 +11:00
Andrew Murray
a4965a7eaa
Split into x and y errors
2023-03-01 22:06:40 +11:00
Andrew Murray
b84c29a035
Raise an error if co-ordinates are incorrectly ordered
2023-03-01 11:22:35 +11:00
Hugo van Kemenade
826c98156c
Remove unused listwindows functions for Windows/3.12 support
2023-02-11 16:36:52 +02:00
Andrew Murray
08816f43ae
Added support for I;16 modes in putdata()
2022-12-26 18:35:24 +11:00
Eric Soroos
41987cffad
Fix compiler error:
...
src/_imaging.c:1842:17: warning: ‘ImagingTransform’ accessing 64 bytes in a region of size 48 [-Wstringop-overflow=]
1842 | imOut = ImagingTransform(
| ^~~~~~~~~~~~~~~~~
1843 | imOut, imIn, IMAGING_TRANSFORM_AFFINE, 0, 0, xsize, ysize, a, filter, 1);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/_imaging.c:1842:17: note: referencing argument 8 of type ‘double *’
2022-11-03 22:57:39 +01:00
Andrew Murray
948c064b28
Allow getpalette() to return less than 256 colors
2022-02-16 09:56:13 +11:00
Andrew Murray
9cdb0508b6
Attach RGBA palettes from putpalette() when suitable
2022-02-14 20:28:47 +11:00
Andrew Murray
e0d5417bcd
Raise an error if sequence is not flattened
2021-12-28 09:38:41 +11:00
Andrew Murray
e9294d890f
Accept float values for putdata() in Python 3.10
2021-12-28 09:38:41 +11:00
Andrew Murray
90a52d3c0d
Added width argument to polygon
2021-11-16 22:02:54 +11:00
Andrew Murray
aa4489c993
Keep palette the same length
2021-06-19 09:31:46 +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
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
Andrew Murray
29c6f53e99
Use METH_NOARGS when no arguments are required
2021-05-11 20:19:17 +10:00
Andrew Murray
f2ee5d6697
Use METH_VARARGS flags
2021-05-11 20:16:44 +10:00
Hugo van Kemenade
683affa29c
Merge pull request #5206 from radarhere/numpy
2021-03-31 17:46:32 +03:00
Andrew Murray
685e951182
Removed unused C code
2021-01-30 11:23:24 +11:00
Andrew Murray
bdbf1694fc
Allow PixelAccess to use Python __int__ when parsing x and y
2021-01-14 21:31:25 +11:00
Andrew Murray
cf190a3c2f
PyModule_AddObject fix for Python 3.10
2021-01-09 12:17:57 +11:00
Andrew Murray
46b7e86bab
Format with ClangFormat
2021-01-03 14:17:51 +11:00
Andrew Murray
26e5929617
Fixed comparison between int and unsigned long
2020-12-22 16:06:44 +11:00
Andrew Murray
0eddc82157
Merge pull request #5108 from cgohlke/patch-1
...
Fix dereferencing potential null pointer
2020-12-22 08:26:48 +11:00
Christoph Gohlke
d1e706d756
return ImagingError_MemoryError
2020-12-19 19:42:29 -08:00
Andrew Murray
b7fb39fff8
Use ImagingError_MemoryError NULL return value
2020-12-20 13:00:16 +11:00
Andrew Murray
75542fea6d
Replaced PyErr_NoMemory with ImagingError_MemoryError
2020-12-20 13:00:10 +11:00
Christoph Gohlke
7673cb7549
Fix dereferencing potential null pointer
2020-12-19 14:57:55 -08:00
Hugo van Kemenade
f9852c0381
Merge branch 'master' into fix-imagingHinclude
2020-10-14 14:50:36 +03:00
Hugo van Kemenade
309cb9e5c4
Merge pull request #4927 from radarhere/tuple
2020-10-12 14:40:22 +03:00
Hugo van Kemenade
15c339470d
Merge pull request #4523 from xtsm/ellipse
...
Implemented another ellipse drawing algorithm
2020-10-11 18:04:34 +03:00
Andrew Murray
e01081bf8b
Improved error message
...
Co-authored-by: nulano <nulano@nulano.eu>
2020-09-22 08:36:29 +10:00
Andrew Murray
27c0747518
Allow tuples with one item to give single color value in getink
2020-09-20 14:23:05 +10:00
Axel Huebl
f79379ed7c
Imaging.h: confusion with system
...
The file `libImaging/Imaging.h` gets installed flat on
Ubuntus into the public Python includes.
When building a newer version of Pillow from source and
hinting the Python includes "too early" in includes, e.g.
in package managers, this can confuse the two files and
pick up the external file over the internal one. With
different versions, this mismatch can lead to build errors,
e.g. undefined macros.
The most robust way to avoid this is to pre-fix the internal
include accordingly, so that the relative path to the including
file has to match as well.
2020-09-17 18:06:45 +10:00
nulano
4bb78d53a3
give proper error message for invalid putpixel color type
2020-08-20 00:01:03 +02:00
Stanislau Tsitsianok
7dedb1402f
Merge remote-tracking branch 'upstream/master' into ellipse
2020-06-29 23:31:25 +03:00
Stanislau Tsitsianok
96f69eb287
Replaced drawing algorithm for arcs, chords and pies
2020-06-29 17:21:53 +03:00
nulano
6c1ff252d6
check run-time version numbers where available, add docs
2020-06-21 18:58:39 +10:00
Andrew Murray
3a75e843f4
Added braces
2020-05-11 07:46:12 +10:00
Andrew Murray
c1d9931adc
Added braces
2020-05-10 19:56:36 +10:00
Hugo
dda6145fce
Since Python 3.3 IOError and WindowsError have been merged into OSError
2020-04-10 12:57:29 +03:00
Hugo van Kemenade
b5cf165f9e
Merge pull request #4260 from nulano/imagegrab_xcb
...
ImageGrab.grab() for Linux with XCB
2020-03-31 23:03:21 +03:00
nulano
3c39e6fcf6
xcb screengrab support
2020-03-24 19:29:44 +11:00
Dag Wästberg
2e02500fa6
change function names to snake_case
2020-02-19 19:38:53 +11:00
Dag Wästberg
13c1b7070d
add Overlay chop
2020-02-19 19:24:36 +11:00
Dag Wästberg
5e5dfbad81
add hardlight and softlight chops
2020-02-19 19:23:09 +11:00
Andrew Murray
f77c409742
Renamed variable
2019-12-31 09:04:25 +11:00
Andrew Murray
34d04d3e82
Replaced distutils with C version check
2019-12-28 09:57:49 +11:00
Alexander
5283141417
Merge branch 'master' into reduce
2019-12-05 14:23:28 +03:00
Alexander
5838d77c0e
args test
2019-12-05 03:24:38 +03:00
Alexander
778b5f9fed
add box parameter
2019-12-04 23:13:20 +03:00
Alexander
fba833e1f4
final set of special cases
2019-11-26 01:18:48 +03:00
Alexander
335f5431de
dummy method
2019-11-24 17:39:49 +03:00
Hugo van Kemenade
5006401d0b
Merge branch 'master' into rm-2.7
2019-11-03 22:48:26 +02:00
Hugo
af770a6c55
Drop support for EOL Python 2.7
2019-10-07 14:30:59 +03:00
nulano
5f4c1e113c
add libimagequant to features.py
2019-09-27 00:34:45 +02:00
Andrew Murray
13224bf029
Removed unused argument
2019-07-04 20:07:33 +10:00
Rolf Eike Beer
7a4af2b767
fix unaligned accesses by using memcpy()
2019-06-29 21:04:11 +02:00
Hugo
08c47925d0
Added an image.entropy()
method ( #3608 )
...
Added an `image.entropy()` method
2019-06-29 10:12:34 +03:00
Andrew Murray
1a71faf8ea
Removed variable
2019-06-26 19:15:47 +10:00
Alexander Böhn
7b815a5f1d
Added an image.entropy()
method
...
This calculates the entropy for the image, based on the histogram.
Because this uses image histogram data directly, the existing C
function underpinning the `image.histogram()` method was abstracted
into a static function to parse extrema tuple arguments, and a new
C function was added to calculate image entropy, making use of the
new static extrema function.
The extrema-parsing function was written by @homm, based on the
macro abstraction I wrote, during the discussion of my first
entropy-method pull request: https://git.io/fhodS
The new `image.entropy()` method is based on `image.histogram()`,
and will accept the same arguments to calculate the histogram data
it will use to assess the entropy of the image.
The algorithm and methodology is based on existing Python code:
* https://git.io/fhmIU
... A test case in the `Tests/` directory, and doctest lines in
`selftest.py`, have both been added and checked.
Changes proposed in this pull request:
* Added “math.h” include to _imaging.c
* The addition of an `image.entropy()` method to the `Image`
Python class,
* The abstraction of the extrema-parsing logic of of the C
function `_histogram` into a static function, and
* The use of that static function in both the `_histogram` and
`_entropy` C functions.
* Minor documentation addenda in the docstrings for both the
`image.entropy()` and `image.histogram()` methods were also
added.
* Removed outdated boilerplate from testing code
* Removed unused “unittest” import
2019-06-26 19:15:47 +10:00
Jayakrishna Menon
37516fb665
adding an upper limit for blocks_max in _set_blocks_max
2019-06-26 19:08:07 +10:00
Andrew Murray
e131fa22e2
Fixed reading and saving for TIFF and IM in PA mode
2019-05-11 14:43:48 +10:00
Andrew Murray
dba38912fb
Allow putpalette for LA and PA
2019-03-29 23:13:50 +11:00
Andrew Murray
97c2848963
Fixed deprecation warnings
2019-03-26 13:50:57 +11:00
cgohlke
86afcfd8f9
Fix possible integer overflow
2019-01-25 15:11:22 -08:00
Hugo
78bc4da131
Merge pull request #3350 from radarhere/custom_tags
...
Added custom int and float TIFF tags
2018-12-26 13:07:46 +02:00
Hugo
55e5b7de6c
Merge pull request #3393 from frenzymadness/CWE_fixes_master
...
Fixes for issues reported by static code analysis
2018-12-26 13:02:19 +02:00
Andrew Murray
49b23157c4
Include header
2018-12-13 19:18:17 +11:00
Andrew Murray
7172a44caa
Added libjpegturbo to check_feature
2018-12-12 21:25:05 +11:00
Andrew Murray
ddf8593e7b
Do not write custom tags with libtiff < 4
2018-11-12 06:14:04 +11:00
Nazime
86324a842d
Add setting negative pixels and unittest
2018-10-15 12:51:24 +02:00
Nazime
468c405a47
Image pixels negative index
2018-10-14 16:12:58 +02:00
Lumir Balhar
78bf8ea041
Fix potential leaked storage issues (CWE-772)
2018-10-02 14:06:21 +02:00