diff options
author | Christoph M. Becker <cmbecker69@gmx.de> | 2020-01-06 12:49:07 +0100 |
---|---|---|
committer | Christoph M. Becker <cmbecker69@gmx.de> | 2020-01-14 18:25:27 +0100 |
commit | 03bd4333f62d89047ba4e9ce3625e44c063391de (patch) | |
tree | cd21ce180a71b0b541a3527a6fd62f852de1a0f6 /ext/gd/tests/imageinterpolation_basic.phpt | |
parent | 127d6f3f39235478d124635822343c2cd1205f4d (diff) | |
download | php-git-03bd4333f62d89047ba4e9ce3625e44c063391de.tar.gz |
Add imagegetinterpolation()
While `imagesetinterpolation()` is available as of PHP 5.5.0,
there is no according getter function, so users would have to track the
current interpolation method manually.
To remedy this, we introduce `imagegetinterpolation()` as thin wrapper
for `gdImageGetInterpolationMethod()` (which has been introduced with
libgd 2.1.1), and use `im->interpolation_id` as fallback for older
libgd. Since our bundled libgd does not yet have this function, we add
it.
We also simplify the recently introduced bug79068.phpt, where it is
sufficient to check that the interpolation method has not been changed.
Diffstat (limited to 'ext/gd/tests/imageinterpolation_basic.phpt')
-rw-r--r-- | ext/gd/tests/imageinterpolation_basic.phpt | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/ext/gd/tests/imageinterpolation_basic.phpt b/ext/gd/tests/imageinterpolation_basic.phpt new file mode 100644 index 0000000000..80e88647d8 --- /dev/null +++ b/ext/gd/tests/imageinterpolation_basic.phpt @@ -0,0 +1,59 @@ +--TEST-- +imagegetinterpolation() and imagesetinterpolation() basic test +--SKIPIF-- +<?php +if (!extension_loaded('gd')) die('skip gd extension not available'); +?> +--FILE-- +<?php +$methods = array( + IMG_BELL, + IMG_BESSEL, + IMG_BILINEAR_FIXED, + IMG_BICUBIC, + IMG_BICUBIC_FIXED, + IMG_BLACKMAN, + IMG_BOX, + IMG_BSPLINE, + IMG_CATMULLROM, + IMG_GAUSSIAN, + IMG_GENERALIZED_CUBIC, + IMG_HERMITE, + IMG_HAMMING, + IMG_HANNING, + IMG_MITCHELL, + IMG_NEAREST_NEIGHBOUR, + IMG_POWER, + IMG_QUADRATIC, + IMG_SINC, + IMG_TRIANGLE, + IMG_WEIGHTED4, +); +$im = imagecreate(8, 8); +foreach ($methods as $method) { + imagesetinterpolation($im, $method); + var_dump(imagegetinterpolation($im) === $method); +} +?> +--EXPECT-- +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) +bool(true) |