package.xml 0000664 0001750 0001750 00000130332 14775775503 012175 0 ustar jakub jakub
imagick
pecl.php.net
Provides a wrapper to the ImageMagick library.
Imagick is a native php extension to create and modify images using the ImageMagick API.
This extension requires ImageMagick version 6.5.3-10+ and PHP 5.6.0+.
Dan Ackroyd
danack
danack@php.net
yes
Jakub Zelenka
bukka
bukka@php.net
yes
2025-04-10
3.8.0
3.8.0
stable
stable
PHP License
- Fixes:
* Fix signedness formatting mistakes
5.6.0
1.4.0
imagick
imagick-3.8.0/examples/polygon.php 0000664 0001750 0001750 00000005330 14775775503 016145 0 ustar jakub jakub 378.1, "y" => 81.72 ),
array( "x" => 381.1, "y" => 79.56 ),
array( "x" => 384.3, "y" => 78.12 ),
array( "x" => 387.6, "y" => 77.33 ),
array( "x" => 391.1, "y" => 77.11 ),
array( "x" => 394.6, "y" => 77.62 ),
array( "x" => 397.8, "y" => 78.77 ),
array( "x" => 400.9, "y" => 80.57 ),
array( "x" => 403.6, "y" => 83.02 ),
array( "x" => 523.9, "y" => 216.8 ),
array( "x" => 526.2, "y" => 219.7 ),
array( "x" => 527.6, "y" => 223 ),
array( "x" => 528.4, "y" => 226.4 ),
array( "x" => 528.6, "y" => 229.8 ),
array( "x" => 528.0, "y" => 233.3 ),
array( "x" => 526.9, "y" => 236.5 ),
array( "x" => 525.1, "y" => 239.5 ),
array( "x" => 522.6, "y" => 242.2 ),
array( "x" => 495.9, "y" => 266.3 ),
array( "x" => 493, "y" => 268.5 ),
array( "x" => 489.7, "y" => 269.9 ),
array( "x" => 486.4, "y" => 270.8 ),
array( "x" => 482.9, "y" => 270.9 ),
array( "x" => 479.5, "y" => 270.4 ),
array( "x" => 476.2, "y" => 269.3 ),
array( "x" => 473.2, "y" => 267.5 ),
array( "x" => 470.4, "y" => 265 ),
array( "x" => 350, "y" => 131.2 ),
array( "x" => 347.8, "y" => 128.3 ),
array( "x" => 346.4, "y" => 125.1 ),
array( "x" => 345.6, "y" => 121.7 ),
array( "x" => 345.4, "y" => 118.2 ),
array( "x" => 346, "y" => 114.8 ),
array( "x" => 347.1, "y" => 111.5 ),
array( "x" => 348.9, "y" => 108.5 ),
array( "x" => 351.4, "y" => 105.8 ),
array( "x" => 378.1, "y" => 81.72 ),
);
/* This ImagickPixel is used to set background color */
$ImagickPixel->setColor( 'gray' );
/* Create new image, set color to gray and format to png*/
$Imagick->newImage( 700, 500, $ImagickPixel );
$Imagick->setImageFormat( 'png' );
/* Create the polygon*/
$ImagickDraw->polygon( $array );
/* Render the polygon to image*/
$Imagick->drawImage( $ImagickDraw );
/* Send headers and output the image */
header( "Content-Type: image/{$Imagick->getImageFormat()}" );
echo $Imagick->getImageBlob( );
?>
imagick-3.8.0/examples/captcha.php 0000664 0001750 0001750 00000003050 14775775503 016056 0 ustar jakub jakub setColor( 'white' );
/* Create a drawing object and set the font size */
$ImagickDraw = new ImagickDraw();
/* Set font and font size. You can also specify /path/to/font.ttf */
$ImagickDraw->setFont( 'Helvetica Regular' );
$ImagickDraw->setFontSize( 20 );
/* Create the text */
$alphanum = 'ABXZRMHTL23456789';
$string = substr( str_shuffle( $alphanum ), 2, 6 );
/* Create new empty image */
$Imagick->newImage( 85, 30, $bg );
/* Write the text on the image */
$Imagick->annotateImage( $ImagickDraw, 4, 20, 0, $string );
/* Add some swirl */
$Imagick->swirlImage( 20 );
/* Create a few random lines */
$ImagickDraw->line( rand( 0, 70 ), rand( 0, 30 ), rand( 0, 70 ), rand( 0, 30 ) );
$ImagickDraw->line( rand( 0, 70 ), rand( 0, 30 ), rand( 0, 70 ), rand( 0, 30 ) );
$ImagickDraw->line( rand( 0, 70 ), rand( 0, 30 ), rand( 0, 70 ), rand( 0, 30 ) );
$ImagickDraw->line( rand( 0, 70 ), rand( 0, 30 ), rand( 0, 70 ), rand( 0, 30 ) );
$ImagickDraw->line( rand( 0, 70 ), rand( 0, 30 ), rand( 0, 70 ), rand( 0, 30 ) );
/* Draw the ImagickDraw object contents to the image. */
$Imagick->drawImage( $ImagickDraw );
/* Give the image a format */
$Imagick->setImageFormat( 'png' );
/* Send headers and output the image */
header( "Content-Type: image/{$Imagick->getImageFormat()}" );
echo $Imagick->getImageBlob( );
?> imagick-3.8.0/examples/thumbnail.php 0000664 0001750 0001750 00000000656 14775775503 016447 0 ustar jakub jakub readImage( '/tmp/test.png' );
/* Thumbnail the image ( width 100, preserve dimensions ) */
$im->thumbnailImage( 100, null );
/* Write the thumbail to disk */
$im->writeImage( '/tmp/th_test.png' );
/* Free resources associated to the Imagick object */
$im->destroy();
?> imagick-3.8.0/examples/watermark.php 0000664 0001750 0001750 00000001213 14775775503 016447 0 ustar jakub jakub setFontSize( 50 );
/* Read image into object*/
$Imagick->readImage( '/tmp/test.jpg' );
/* Seek the place for the text */
$ImagickDraw->setGravity( Imagick::GRAVITY_CENTER );
/* Write the text on the image */
$Imagick->annotateImage( $ImagickDraw, 4, 20, 0, "Test Watermark" );
/* Set format to png */
$Imagick->setImageFormat( 'png' );
/* Output */
header( "Content-Type: image/{$Imagick->getImageFormat()}" );
echo $Imagick->getImageBlob();
?> imagick-3.8.0/tests/001_imagick_readimage.phpt 0000664 0001750 0001750 00000000535 14775775503 020152 0 ustar jakub jakub --TEST--
Imagick::readImage test
--SKIPIF--
--FILE--
readImage('foo.jpg');
} catch (ImagickException $e) {
echo "got exception";
}
?>
--EXPECTF--
--- Catch exception with try/catch
got exception imagick-3.8.0/tests/002_thumbnail.phpt 0000664 0001750 0001750 00000007451 14775775503 016540 0 ustar jakub jakub --TEST--
Different types of thumbnailing
--SKIPIF--
--FILE--
newImage( 400, 200, "white" );
$imagick->thumbnailImage( 100, null, false );
$g = $imagick->getImageGeometry();
echo "{$g['width']}x{$g['height']}\n";
echo "--- Source Image: 400x200, Imagick::thumbnailImage( null, 100, false )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
$imagick->thumbnailImage( null, 100, false );
$g = $imagick->getImageGeometry();
echo "{$g['width']}x{$g['height']}\n";
echo "--- Source Image: 400x200, Imagick::thumbnailImage( 100, 100, false )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
$imagick->thumbnailImage( 100, 100, false);
$g = $imagick->getImageGeometry();
echo "{$g['width']}x{$g['height']}\n";
echo "--- Source Image: 400x200, Imagick::thumbnailImage( null, null, false )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
try
{
$imagick->thumbnailImage( null, null, false );
echo "FAILED TEST\n";
}
catch ( ImagickException $e )
{
echo $e->getMessage() . "\n";
}
echo "--- Source Image: 400x200, Imagick::thumbnailImage( 100, 100, true )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
$imagick->thumbnailImage( 100, 100, true );
$g = $imagick->getImageGeometry();
echo "{$g['width']}x{$g['height']}\n";
echo "--- Source Image: 400x200, Imagick::thumbnailImage( 100, null, true )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
try
{
$imagick->thumbnailImage( 100, null, true );
echo "FAILED TEST\n";
}
catch ( ImagickException $e )
{
echo $e->getMessage() . "\n";
}
echo "--- Source Image: 400x200, Imagick::thumbnailImage( null, 100, true )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
try
{
$imagick->thumbnailImage( null, 100, true );
echo "FAILED TEST\n";
}
catch ( ImagickException $e )
{
echo $e->getMessage() . "\n";
}
echo "--- Source Image: 400x200, Imagick::thumbnailImage( null, null, true )\n";
$imagick = new Imagick();
$imagick->newImage( 400, 200, "white" );
try
{
$imagick->thumbnailImage( null, null, true );
echo "FAILED TEST\n";
}
catch ( ImagickException $e )
{
echo $e->getMessage() . "\n";
}
// Legacy version
$imagick = new Imagick();
$imagick->newImage(2961, 2592, "white" );
$imagick->thumbnailImage(300, 0, false, false, true);
if ($imagick->getImageWidth() != 300) {
echo "Error in height for 2961, 2592: actual is ".$image->getImageWidth()." not 300.".PHP_EOL;
}
if ($imagick->getImageHeight() != 262) {
echo "Error in height for 2961, 2592: actual is ".$image->getImageHeight()." not 262.".PHP_EOL;
}
// Correct version
$imagick = new Imagick();
$imagick->newImage(2961, 2592, "white" );
$imagick->thumbnailImage(300, 0);
if ($imagick->getImageWidth() != 300) {
echo "Error in height for 2961, 2592: actual is ".$image->getImageWidth()." not 300.".PHP_EOL;
}
if ($imagick->getImageHeight() != 263) {
echo "Error in height for 2961, 2592: actual is ".$image->getImageHeight()." not 263.".PHP_EOL;
}
?>
--EXPECTF--
--- Source Image: 400x200, Imagick::thumbnailImage( 100, null, false )
100x50
--- Source Image: 400x200, Imagick::thumbnailImage( null, 100, false )
200x100
--- Source Image: 400x200, Imagick::thumbnailImage( 100, 100, false )
100x100
--- Source Image: 400x200, Imagick::thumbnailImage( null, null, false )
Invalid image geometry
--- Source Image: 400x200, Imagick::thumbnailImage( 100, 100, true )
100x50
--- Source Image: 400x200, Imagick::thumbnailImage( 100, null, true )
Invalid image geometry
--- Source Image: 400x200, Imagick::thumbnailImage( null, 100, true )
Invalid image geometry
--- Source Image: 400x200, Imagick::thumbnailImage( null, null, true )
Invalid image geometry
imagick-3.8.0/tests/003_cast_color_opacity.phpt 0000664 0001750 0001750 00000001555 14775775503 020435 0 ustar jakub jakub --TEST--
Casting color and opacity to pixel
--SKIPIF--
--FILE--
newImage(100, 100, "red");
$im->tintImage("red", "gray(50%)");
echo "Casting color and opacity succeeded\n";
} catch (Exception $e) {
echo "Casting color and opacity failed: " , $e->getMessage() . PHP_EOL;
}
try {
$im = new Imagick();
$pixel = new ImagickPixel("red");
$strengthPixel = new ImagickPixel("gray");
$im->newImage(100, 100, $pixel);
$im->tintImage($pixel, $strengthPixel);
echo "Setting color and opacity without cast succeeded\n";
} catch (Exception $e) {
echo "Setting color and opacity without cast failed: " , $e->getMessage() . PHP_EOL;
}
?>
--EXPECTF--
--- Testing casts
Casting color and opacity succeeded
Setting color and opacity without cast succeeded imagick-3.8.0/tests/004_clone.phpt 0000664 0001750 0001750 00000000772 14775775503 015656 0 ustar jakub jakub --TEST--
Testing clone keyword
--SKIPIF--
--FILE--
newImage(100, 100, new ImagickPixel("white"));
$new = clone $im;
if ($new->getImageWidth() == 100 && $new->getImageHeight() == 100) {
echo "Cloning succeeded\n";
} else {
echo "Cloning failed\n";
}
} catch (Exception $e) {
echo "Cloning failed\n";
}
?>
--EXPECTF--
--- Testing clone keyword
Cloning succeeded imagick-3.8.0/tests/005_bestfit.phpt 0000664 0001750 0001750 00000000500 14775775503 016204 0 ustar jakub jakub --TEST--
Test thumbnail bestfit
--SKIPIF--
--FILE--
newImage(50, 100, 'white');
$im->thumbnailImage(100, 50, true);
var_dump($im->getImageGeometry());
?>
--EXPECTF--
array(2) {
["width"]=>
int(25)
["height"]=>
int(50)
} imagick-3.8.0/tests/006_cropthumbnail.phpt 0000664 0001750 0001750 00000002155 14775775503 017424 0 ustar jakub jakub --TEST--
Test cropthumbnail
--SKIPIF--
--FILE--
cropThumbnailImage(200, 200);
var_dump($im->getImageGeometry());
$im = new Imagick("magick:rose");
$im->cropThumbnailImage(170, 120);
var_dump($im->getImageGeometry());
$im = new Imagick("magick:rose");
$im->cropThumbnailImage(50, 50);
var_dump($im->getImageGeometry());
$im = new Imagick("magick:rose");
$im->cropThumbnailImage(60, 120);
var_dump($im->getImageGeometry());
$im = new Imagick("magick:logo");
$im->cropThumbnailImage(100, 100);
var_dump($im->getImageGeometry());
$im = new Imagick("magick:rose");
$im->cropThumbnailImage(200, 10);
var_dump($im->getImageGeometry());
?>
--EXPECTF--
array(2) {
["width"]=>
int(200)
["height"]=>
int(200)
}
array(2) {
["width"]=>
int(170)
["height"]=>
int(120)
}
array(2) {
["width"]=>
int(50)
["height"]=>
int(50)
}
array(2) {
["width"]=>
int(60)
["height"]=>
int(120)
}
array(2) {
["width"]=>
int(100)
["height"]=>
int(100)
}
array(2) {
["width"]=>
int(200)
["height"]=>
int(10)
} imagick-3.8.0/tests/007_thumbnail_fill.phpt 0000664 0001750 0001750 00000001450 14775775503 017544 0 ustar jakub jakub --TEST--
Test filling thumbnail with color
--SKIPIF--
= 0x660 && $v ['versionNumber'] < 0x670)
die ('skip seems to be broken in this version of ImageMagick');
?>
--FILE--
setImageBackgroundColor("pink");
$im->thumbnailImage(200, 200, true, true);
$color = $im->getImagePixelColor(5, 5);
if ($color->isPixelSimilar("pink", 0))
echo "Similar" . PHP_EOL;
else
var_dump ($color->getColorAsString());
$color = $im->getImagePixelColor(199, 5);
if ($color->isPixelSimilar("pink", 0))
echo "Similar" . PHP_EOL;
else
var_dump ($color->getColorAsString());
?>
--EXPECT--
Similar
Similar imagick-3.8.0/tests/008_newpseudoimage.phpt 0000664 0001750 0001750 00000001467 14775775503 017600 0 ustar jakub jakub --TEST--
Test pseudo formats
--SKIPIF--
--FILE--
newPseudoImage(100, 100, "XC:red");
var_dump($im->getImageGeometry());
$im->newPseudoImage(10, 10, "magick:logo");
var_dump($im->getImageGeometry());
$im->readImage("magick:logo");
var_dump($im->getImageGeometry());
$im->newPseudoImage(10, 10, "rose:");
var_dump($im->getImageGeometry());
try {
$im->newPseudoImage(10, 10, "png:");
var_dump($im->getImageGeometry());
} catch (Exception $e) {
echo "fail\n";
}
?>
--EXPECTF--
array(2) {
["width"]=>
int(%d)
["height"]=>
int(%d)
}
array(2) {
["width"]=>
int(%d)
["height"]=>
int(%d)
}
array(2) {
["width"]=>
int(%d)
["height"]=>
int(%d)
}
array(2) {
["width"]=>
int(%d)
["height"]=>
int(%d)
}
fail imagick-3.8.0/tests/009_properties.phpt 0000664 0001750 0001750 00000000511 14775775503 016746 0 ustar jakub jakub --TEST--
Test reading properties
--SKIPIF--
--FILE--
newPseudoImage(100, 100, "XC:red");
$im->setImageFormat("png");
echo $im->width . "x" . $im->height . "\n";
echo $im->format;
?>
--EXPECTF--
100x100
png imagick-3.8.0/tests/010_importimagepixels.phpt 0000664 0001750 0001750 00000002155 14775775503 020312 0 ustar jakub jakub --TEST--
Test importimagepixels
--SKIPIF--
--FILE--
newImage($width, $height, 'gray');
/* Import the pixels into image.
width * height * strlen("RGB") must match count($pixels) */
$im->importImagePixels(0, 0, $width, $height, "RGB", Imagick::PIXEL_CHAR, $pixels);
var_dump($width, $height);
var_dump($im->getImageGeometry());
?>
--EXPECTF--
int(100)
int(100)
array(2) {
["width"]=>
int(100)
["height"]=>
int(100)
} imagick-3.8.0/tests/011_polygon.phpt 0000664 0001750 0001750 00000000744 14775775503 016242 0 ustar jakub jakub --TEST--
Test polygon method arguments
--SKIPIF--
--FILE--
polygon(array(
array('x' => 1, 'y' => 2),
array('x' => 'hello', 'y' => array())
));
echo "pass\n";
} catch (Exception $e) {
echo "fail\n";
}
try {
$draw->polygon(array(array()));
echo "fail\n";
} catch (ImagickDrawException $e) {
echo "pass\n";
}
?>
--EXPECTF--
pass
pass imagick-3.8.0/tests/012-clone-separation.phpt 0000664 0001750 0001750 00000001036 14775775503 017730 0 ustar jakub jakub --TEST--
Testing that cloned object does not affect the original
--SKIPIF--
--FILE--
newImage(100, 100, new ImagickPixel("white"));
$new = clone $im;
$new->thumbnailImage(200, null);
var_dump($im->width, $new->width);
$new2 = $im->clone();
$new2->thumbnailImage(200, null);
var_dump($im->width, $new2->width);
?>
--EXPECTF--
int(100)
int(200)
%s: Imagick::clone method is deprecated and it's use should be avoided in %s on line %d
int(100)
int(200) imagick-3.8.0/tests/013-read-filehandle.phpt 0000664 0001750 0001750 00000000775 14775775503 017503 0 ustar jakub jakub --TEST--
Imagick::readImageFile test
--SKIPIF--
--FILE--
setImageFormat('jpg');
$imagick->writeImage($file);
$imagick->clear();
$handle = fopen($file, 'rb');
$imagick->readImageFile($handle);
@unlink($file);
echo 'success';
?>
--CLEAN--
--EXPECT--
success imagick-3.8.0/tests/013-read-filehandle-memory-stream.phpt 0000664 0001750 0001750 00000001321 14775775503 022266 0 ustar jakub jakub --TEST--
Imagick::readImageFile, in-memory stream test
--SKIPIF--
--XFAIL--
This test was recently added (July 2024), and appears to be failing on multiple
versions of PHP. It should be fixed, but doesn't need to hold up a release.
--FILE--
setImageFormat('jpg');
$imagick->writeImageFile($handle);
$imagick->clear();
rewind($handle);
$imagick->readImageFile($handle);
echo "Width: " . $imagick->getImageWidth() . "\n";
echo "Height: " . $imagick->getImageHeight() . "\n";
echo 'success';
?>
--EXPECT--
Width: 70
Height: 46
success
imagick-3.8.0/tests/013-read-filehandle-file-stream.phpt 0000664 0001750 0001750 00000001240 14775775503 021675 0 ustar jakub jakub --TEST--
Imagick::readImageFile, file stream test
--SKIPIF--
--FILE--
setImageFormat('jpg');
$imagick->writeImageFile($handle);
$imagick->clear();
rewind($handle);
$imagick->readImageFile($handle);
echo "Width: " . $imagick->getImageWidth() . "\n";
echo "Height: " . $imagick->getImageHeight() . "\n";
@unlink($file);
echo 'success';
?>
--CLEAN--
--EXPECT--
Width: 70
Height: 46
success
imagick-3.8.0/tests/014-setresourcelimit.phpt 0000664 0001750 0001750 00000005076 14775775503 020101 0 ustar jakub jakub --TEST--
Imagick::setResourceLimit test
--SKIPIF--
--FILE--
100000000,
// Set maximum amount of disk space in bytes permitted for use by the pixel cache. When this limit is exceeded, the pixel cache is not be created and an error message is returned.
Imagick::RESOURCETYPE_DISK => 100,
//Set maximum number of open pixel cache files. When this limit is exceeded, any subsequent pixels cached to disk are closed and reopened on demand. This behavior permits a large number of images to be accessed simultaneously on disk, but with a speed penalty due to repeated open/close calls.
Imagick::RESOURCETYPE_FILE => 100,
// Set maximum amount of memory map in bytes to allocate for the pixel cache. When this limit is exceeded, the image pixels are cached to disk
Imagick::RESOURCETYPE_MAP => 123 * $m,
// Set maximum amount of memory in bytes to allocate for the pixel cache from the heap. When this limit is exceeded, the image pixels are cached to memory-mapped disk
Imagick::RESOURCETYPE_MEMORY => 234 * $m,
);
if (defined('Imagick::RESOURCETYPE_TIME')) {
$tests[Imagick::RESOURCETYPE_TIME] = 30;
}
if (defined('Imagick::RESOURCETYPE_THROTTLE')) {
$tests[Imagick::RESOURCETYPE_THROTTLE] = 1;
}
if (defined('Imagick::RESOURCETYPE_THREAD')) {
$tests[Imagick::RESOURCETYPE_THREAD] = 1;
}
if (defined('Imagick::RESOURCETYPE_WIDTH')) {
$tests[Imagick::RESOURCETYPE_WIDTH] = 15 * $k;
}
if (defined('Imagick::RESOURCETYPE_HEIGHT')) {
$tests[Imagick::RESOURCETYPE_HEIGHT] = 15 * $k;
}
$reflection_class = new ReflectionClass(Imagick::class);
$constants = $reflection_class->getConstants();
$resource_constants = [];
foreach ($constants as $name => $value) {
if (strpos($name, "RESOURCETYPE") === 0) {
$resource_constants[$value] = $name;
}
}
foreach ($tests as $resourceType => $value) {
Imagick::setResourceLimit($resourceType, $value);
$actualValue = Imagick::getResourceLimit($resourceType);
if ($actualValue != $value) {
$resourceTypeString = $resource_constants[$resourceType];
echo "Error testing $resourceTypeString, value returned $actualValue is not $value \n";
}
}
echo 'success';
?>
--EXPECTF--
success imagick-3.8.0/tests/015-imagickdrawsetresolution.phpt 0000664 0001750 0001750 00000003043 14775775503 021612 0 ustar jakub jakub --TEST--
Test ImagickDraw->setResolution
--SKIPIF--
--FILE--
newImage(1000,1000, "white","png");
$draw = new ImagickDraw();
$draw->setFont (dirname (__FILE__) . '/anonymous_pro_minus.ttf');
$draw->setFontSize(72);
$draw->setResolution(10, 10);
$small = $im->queryFontMetrics($draw, "Hello World");
$draw->setResolution(300, 300);
$large = $im->queryFontMetrics($draw, "Hello World");
if ($small['textWidth'] < $large['textWidth']) {
echo "Small font _is_ smaller than big font.".PHP_EOL;
}
//These will both be one line.
$oneLine = $im->queryFontMetrics($draw, "Hello Hello");
$forceOneLine = $im->queryFontMetrics($draw, "Hello \nHello", false);
//These will both be multiline
$forceMultiLine = $im->queryFontMetrics($draw, "Hello \nHello", true);
$guessLine = $im->queryFontMetrics($draw, "Hello\nHello");
if (abs($oneLine["textHeight"] - $forceOneLine["textHeight"]) > 0.1) {
//Reaching this is bad
echo "One line and forced one line are not the same height.".PHP_EOL;
echo $oneLine["textHeight"]." ".$forceOneLine["textHeight"].PHP_EOL;
}
if ($forceMultiLine["textHeight"] - (2 * $forceOneLine["textHeight"]) + 2 > 0) {
echo "Two lines are 2 times one line.".PHP_EOL;
}
if ($guessLine["textHeight"] - (2 * $forceOneLine["textHeight"]) + 2 > 0) {
echo "Two lines are 2 times one line.".PHP_EOL;
}
echo "OK\n";
?>
--EXPECT--
Small font _is_ smaller than big font.
Two lines are 2 times one line.
Two lines are 2 times one line.
OK
imagick-3.8.0/tests/016-static-methods.phpt 0000664 0001750 0001750 00000000611 14775775503 017417 0 ustar jakub jakub --TEST--
Test static methods
--SKIPIF--
--FILE--
queryFormats ()) . PHP_EOL;
echo gettype (Imagick::queryFonts ()) . PHP_EOL;
echo gettype ($im->queryFonts ()) . PHP_EOL;
echo 'success';
?>
--EXPECT--
array
array
array
array
success imagick-3.8.0/tests/017-clear-destroy.phpt 0000664 0001750 0001750 00000000677 14775775503 017261 0 ustar jakub jakub --TEST--
Clear and destroy aliases
--SKIPIF--
--FILE--
clear ();
$im->destroy ();
$im = new ImagickDraw ();
$im->clear ();
$im->destroy ();
$im = new ImagickPixel ();
$im->clear ();
$im->destroy ();
$magick = new Imagick ('magick:rose');
$im = new ImagickPixelIterator ($magick);
$im->clear ();
$im->destroy ();
echo 'success';
?>
--EXPECT--
success imagick-3.8.0/tests/018-clone-length.phpt 0000664 0001750 0001750 00000001253 14775775503 017053 0 ustar jakub jakub --TEST--
Test clone length, this is expected upstream behaviour
--SKIPIF--
= 0x640 && $v ['versionNumber'] < 0x650)
die ('skip seems to be different in this version of ImageMagick');
?>
--FILE--
setImageFormat ('png');
if ($im->getImageLength()) {
echo "Image created has length" . PHP_EOL;
}
else {
echo "Image created has zero length" . PHP_EOL;
}
$cloned = clone $im;
$cloned->setImageFormat ('png');
var_dump ($cloned->getImageLength ());
?>
--EXPECT--
Image created has length
int(0)
imagick-3.8.0/tests/019-readimages.phpt 0000664 0001750 0001750 00000001651 14775775503 016600 0 ustar jakub jakub --TEST--
Imagick::readImages
--SKIPIF--
--FILE--
readImages (array (
'magick:rose',
'magick:rose',
'magick:rose',
));
echo 'OK readImages' . PHP_EOL;
try{
$imagick->readImages (array (
'magick:rose',
'fail_this_does_not_exist.jpg',
));
echo 'Fail' . PHP_EOL;
} catch (ImagickException $e) {
echo 'OK readImages exception'. PHP_EOL;
}
?>
--EXPECT--
OK construct exception
OK construct
OK readImages
OK readImages exception imagick-3.8.0/tests/020-pixeliterator.phpt 0000664 0001750 0001750 00000003514 14775775503 017362 0 ustar jakub jakub --TEST--
Pixel Iterator tests
--SKIPIF--
--FILE--
rewind();
$pixelRegion->resetIterator();
while($pixelRow = $pixelRegion->current()) {
$row++;
foreach ($pixelRow as $pixel) {
$objects++;
}
$pixelRegion->syncIterator();
$pixelRegion->next();
if (!$pixelRegion->valid()) {
break;
}
}
return $objects;
}
$im = new Imagick ('magick:rose');
$it1 = new ImagickPixelIterator ($im);
$it2 = ImagickPixelIterator::getPixelIterator ($im);
$it3 = $im->getPixelIterator();
$count1 = count_rows ($it1);
$count2 = count_rows ($it2);
$count3 = count_rows ($it3);
if ($count1 != $count2 ||
$count1 != $count3) {
printf(
"Row counts do not match %d %d %d",
$count1,
$count2,
$count3
);
}
if ($count1 != $count2 ||
$count1 != $count3) {
printf(
"Object counts do not match %d %d %d",
$count1,
$count2,
$count3
);
}
$objects = array($it1, $it2, $it3);
foreach ($objects as $object) {
$loop = 0;
$count = count_objects($object);
$countIterator = count_objects_with_iterator($object);
if ($countIterator != $count) {
echo "Counting with iterator doesn't match counting with foreach $loop, $count != $countIterator.";
$loop++;
}
}
$it1->newPixelIterator (new Imagick ('magick:rose'));
echo 'done' . PHP_EOL;
?>
--EXPECTF--
%s: ImagickPixelIterator::newPixelIterator is deprecated. ImagickPixelIterator::getPixelIterator should be used instead in %s on line %d
done imagick-3.8.0/tests/021-countable.phpt 0000664 0001750 0001750 00000000545 14775775503 016445 0 ustar jakub jakub --TEST--
Test countable interface
--SKIPIF--
--FILE--
--EXPECT--
3
done imagick-3.8.0/tests/022-writeimagefileformat.phpt 0000664 0001750 0001750 00000003322 14775775503 020674 0 ustar jakub jakub --TEST--
Test format support in writeImageFile
--SKIPIF--
--FILE--
writeImage (JPEG_FILE);
$im->clear ();
// This is the problematic case, setImageFormat doesn't really
// affect writeImageFile.
// So in this case we want to write PNG but file should come out
// as JPEG
$fp = fopen (PNG_FILE, "w+");
$im->readImage (JPEG_FILE);
$im->setImageFormat ('png');
$im->writeImageFile ($fp);
$im->clear ();
fclose ($fp);
// Output the format
$identify = new Imagick (PNG_FILE);
echo $identify->getImageFormat () . PHP_EOL;
// Lets try again, setting the filename rather than format
// This should cause PNG image to be written
$fp = fopen (PNG_FILE, "w+");
$im->readImage (JPEG_FILE);
$im->setImageFilename ('png:');
$im->writeImageFile ($fp);
$im->clear ();
fclose ($fp);
// If all goes according to plan, on second time we should get PNG
$identify = new Imagick (PNG_FILE);
echo $identify->getImageFormat () . PHP_EOL;
// Lastly, test the newly added format parameter
$fp = fopen (PNG_FILE, "w+");
$im->readImage (JPEG_FILE);
$im->writeImageFile ($fp, 'png');
$im->clear ();
fclose ($fp);
// If all goes according to plan, on second time we should get PNG
$identify = new Imagick (PNG_FILE);
echo $identify->getImageFormat () . PHP_EOL;
unlink (PNG_FILE);
unlink (JPEG_FILE);
echo 'done' . PHP_EOL;
?>
--CLEAN--
--EXPECT--
JPEG
PNG
PNG
done imagick-3.8.0/tests/024-ispixelsimilar.phpt 0000664 0001750 0001750 00000004313 14775775503 017527 0 ustar jakub jakub --TEST--
Test ImagickPixel::isPixelSimilar
--SKIPIF--
isPixelSimilarQuantum($color2Pixel, $testDistance * \Imagick::getquantum());
if ($isSimilar !== $expectation) {
echo "isSimilar failed. Color [$color1] compared to color [$color2] distance $testDistance doesn't meet expected result [$expectation].". PHP_EOL;
}
$isPixelSimilar = $color1Pixel->isPixelSimilar($color2Pixel, $testDistance);
if ($isPixelSimilar !== $expectation) {
echo "isPixelSimilar failed. Color [$color1] compared to color [$color2] distance $testDistance doesn't meet expected result [$expectation].". PHP_EOL;
}
}
echo "success";
} catch (\Exception $e) {
echo "Exception caught in ImagickPixel::isPixelSimilar test: ".$e->getMessage() . PHP_EOL;
}
?>
--EXPECT--
success imagick-3.8.0/tests/025-function-image.phpt 0000664 0001750 0001750 00000000404 14775775503 017374 0 ustar jakub jakub --TEST--
Test functionimage
--SKIPIF--
--FILE--
convolveimage (array (1, 'a', 1));
echo "OK" . PHP_EOL;
?>
--EXPECT--
OK imagick-3.8.0/tests/025-get-color.phpt 0000664 0001750 0001750 00000006523 14775775503 016372 0 ustar jakub jakub --TEST--
Test getColor and getColorQuantum
--SKIPIF--
--FILE--
1
);
$v = Imagick::getVersion();
$versionNumber = $v['versionNumber'];
if (array_key_exists($versionNumber, $troubledVersions)) {
$variance = $troubledVersions[$versionNumber];
}
if (Imagick::getHDRIEnabled()) {
return abs($expectedValue - $actualValue) < (0.01 + $variance);
}
if ($hasVariance) {
$difference = abs($expectedValue - $actualValue);
if ($difference < 1 + $variance) {
return true;
}
echo "difference $difference not < 1 + variance $variance\n";
return false;
}
else if($expectedValue == $actualValue) {
return true;
}
return false;
}
function getExpectedValue($someValue) {
if (Imagick::getHDRIEnabled()) {
return $someValue;
}
$v = Imagick::getVersion();
if ($v['versionNumber'] >= 0x692) {
//this is the new correct behaviour
return (intval(round($someValue, 0, PHP_ROUND_HALF_UP)));
}
else {
//old behaviour had wrong rounding.
return (intval(round($someValue, 0, PHP_ROUND_HALF_DOWN)));
}
}
$tests = array(
array(
'red',
ORIGINAL,
array(
array('r', getExpectedValue(255), 0),
array('a', getExpectedValue(1.0), 0)
),
),
array(
'red',
QUANTUM,
array(
array('r', getExpectedValue(\Imagick::getQuantum()), 0),
array('a', getExpectedValue(\Imagick::getQuantum()), 0)
),
),
array(
'rgb(25%, 25%, 25%)',
QUANTUM,
array(
array('r', getExpectedValue(\Imagick::getQuantum() / 4), 0),
array('a', getExpectedValue(\Imagick::getQuantum()), 0),
)
)
);
$version = Imagick::getVersion();
// The following don't seem stable in lesser versions.
if ($version['versionNumber'] >= 0x687) {
$tests[] = array(
'green',
QUANTUM,
array(
array('g', getExpectedValue(\Imagick::getQuantum() * (128 / 255)), 1),
array('a', getExpectedValue(\Imagick::getQuantum()), 1)
),
);
$tests[] = array(
'rgb(0, 50%, 0)',
QUANTUM,
array(
array('g', getExpectedValue(\Imagick::getQuantum() / 2), 1),
array('a', getExpectedValue(\Imagick::getQuantum()), 0)
),
);
}
foreach ($tests as $test) {
list($colorString, $type, $expectations) = $test;
$pixel = new ImagickPixel($colorString);
switch ($type) {
case(ORIGINAL): {
$color = $pixel->getColor();
break;
}
case(NORMALISED): {
$color = $pixel->getColor(true);
break;
}
case(NORMALISED_INCLUDING_ALPHA): {
$color = $pixel->getColor(2);
break;
}
case(QUANTUM): {
$color = $pixel->getColorQuantum();
break;
}
default:{
echo "Unknown test type $type" . PHP_EOL;
break;
}
}
foreach ($expectations as $test) {
list($key, $expectedValue, $hasVariance) = $test;
if (!checkExpectedValue($expectedValue, $color[$key], $hasVariance)) {
printf(
"%s %s is wrong for colorString '%s': actual %s != expected %s" . PHP_EOL,
$type,
$key, $colorString,
$color[$key], $expectedValue
);
}
}
}
echo "OK" . PHP_EOL;
?>
--EXPECT--
OK imagick-3.8.0/tests/026_phpinfo.phpt 0000664 0001750 0001750 00000000574 14775775503 016225 0 ustar jakub jakub --TEST--
Test Imagick module hasn't broken phpinfo
--SKIPIF--
--FILE--
enabled') !== false) {
echo "Ok";
}
else {
echo "Imagick was not reported as enabled?";
var_dump($contents);
}
?>
--EXPECTF--
Ok imagick-3.8.0/tests/027_Imagick_adaptiveResizeImage_basic.phpt 0000664 0001750 0001750 00000001131 14775775503 023260 0 ustar jakub jakub --TEST--
Test Imagick, adaptiveResizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->adaptiveResizeImage($width, $height, $bestFit);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
adaptiveResizeImage($width, $height, $bestFit) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/028_Imagick_adaptiveSharpenImage_basic.phpt 0000664 0001750 0001750 00000001157 14775775503 023430 0 ustar jakub jakub --TEST--
Test Imagick, adaptiveSharpenImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->adaptiveSharpenImage($radius, $sigma, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
adaptiveSharpenImage($radius, $sigma, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/029_Imagick_adaptiveBlurImage_basic.phpt 0000664 0001750 0001750 00000001143 14775775503 022730 0 ustar jakub jakub --TEST--
Test Imagick, adaptiveBlurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->adaptiveBlurImage($radius, $sigma, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
adaptiveBlurImage($radius, $sigma, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/030_Imagick_adaptiveThresholdImage_basic.phpt 0000664 0001750 0001750 00000001330 14775775503 023746 0 ustar jakub jakub --TEST--
Test Imagick, adaptiveThresholdImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$adaptiveOffsetQuantum = intval($adaptiveOffset * \Imagick::getQuantum());
$imagick->adaptiveThresholdImage($width, $height, $adaptiveOffsetQuantum);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
adaptiveThresholdImage($width, $height, $adaptiveOffset) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/031_Imagick_affineTransformImage_basic.phpt 0000664 0001750 0001750 00000010003 14775775503 023416 0 ustar jakub jakub --TEST--
Test Imagick, affineTransformImage
--SKIPIF--
--XFAIL--
I don't understand what values are returned in which elements of getImageChannelStatistics
--FILE--
newPseudoImage(640, 640, "xc:black");
$draw = new \ImagickDraw();
$angle = deg2rad(45);
//$angle = deg2rad(3);
$draw->setFillColor('white');
$draw->setStrokeColor('white');
$draw->setStrokeWidth(10.0);
$draw->setStrokeLineCap(Imagick::LINECAP_SQUARE);
$draw->setStrokeLineJoin(Imagick::LINEJOIN_BEVEL);
$draw->line(
$start_x = -50,
$start_y = -50,
$end_x = 690,
$end_y = 690
);
$imagick->drawImage($draw);
$draw = new \ImagickDraw();
$affineRotate = array(
"sx" => cos($angle), "sy" => cos($angle),
"rx" => sin($angle), "ry" => -sin($angle),
"tx" => 0, "ty" => 0,
);
$draw->affine($affineRotate);
$imagick->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_BLACK);
$imagick->affineTransformImage($draw);
$imagick->setImagePage($imagick->getimageWidth(), $imagick->getimageheight(), 0, 0);
$imagick->cropImage(
$imagick->getImageWidth() - 40,
$imagick->getImageHeight() - 40,
20,
20
);
$imagick->setImageFormat('png');
$imagick->writeImage(__DIR__ . '/test_031.png');
$lineCheckBlack = clone $imagick;
$blackout = new \ImagickDraw();
$blackout->setStrokeColor('black');
$blackout->setFillColor('black');
$blackout->rectangle(
($lineCheckBlack->getImageWidth() / 2) - 20,
0,
($lineCheckBlack->getImageWidth() / 2) + 20,
$lineCheckBlack->getImageHeight()
);
$lineCheckBlack->drawImage($blackout);
// $lineCheckBlack->writeImage(__DIR__ . '/test_031_blank.png');
$whiteout = new \ImagickDraw();
$lineCheckWhite = clone $imagick;
$whiteout->setStrokeColor('white');
$whiteout->setFillColor('white');
$whiteout->rectangle(
($lineCheckBlack->getImageWidth() / 2) - 4,
0,
0,
$lineCheckBlack->getImageHeight()
);
$whiteout->rectangle(
($lineCheckWhite->getImageWidth() / 2) + 4,
0,
$lineCheckWhite->getImageWidth(),
$lineCheckWhite->getImageHeight()
);
$lineCheckWhite->drawImage($whiteout);
// $lineCheckWhite->writeImage(__DIR__ . '/test_031_white.png');
$channelStatistics = $lineCheckWhite->getImageChannelStatistics();
echo "Checking white\n";
checkAllStatsAreValue($channelStatistics, Imagick::getQuantum());
$channelStatistics = $lineCheckBlack->getImageChannelStatistics();
// var_dump(
// "lineCheckBlack channel stats are:",
// $channelStatistics
// );
echo "Checking black\n";
checkAllStatsAreValue($channelStatistics, 0);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
affineTransformImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Checking white
Stats checked
Checking black
Stats checked
Ok
imagick-3.8.0/tests/032_Imagick_addNoiseImage_basic.phpt 0000664 0001750 0001750 00000002034 14775775503 022026 0 ustar jakub jakub --TEST--
Test Imagick, addNoiseImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->addNoiseImage($noiseType, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "addNoiseImage\n";
}
function addNoiseWithAttenuate($noiseType, $channel) {
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$imagick->addNoiseImageWithAttenuate($noiseType, 1.4, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "addNoiseWithAttenuate\n";
}
addNoiseImage($noiseType, $channel);
addNoiseWithAttenuate($noiseType, $channel);
echo "Ok";
?>
--EXPECTF--
addNoiseImage
addNoiseWithAttenuate
Ok imagick-3.8.0/tests/033_Imagick_autoLevelImage_basic.phpt 0000664 0001750 0001750 00000000716 14775775503 022246 0 ustar jakub jakub --TEST--
Test Imagick, autoLevelImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->autoLevelImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
autoLevelImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/034_Imagick_annotateImage_basic.phpt 0000664 0001750 0001750 00000001750 14775775503 022117 0 ustar jakub jakub --TEST--
Test Imagick, annotateImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$draw = new \ImagickDraw();
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(36);
$text = "Imagick is a native php \nextension to create and \nmodify images using the\nImageMagick API.";
setFontForImagick($imagick);
setFontForImagickDraw($draw);
$imagick->annotateimage($draw, 40, 40, 0, $text);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
annotateImage($strokeColor, $fillColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/035_Imagick_blackThresholdImage_basic.phpt 0000664 0001750 0001750 00000001066 14775775503 023240 0 ustar jakub jakub --TEST--
Test Imagick, blackThresholdImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->blackthresholdimage($thresholdColor);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
blackThresholdImage($thresholdColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/036_Imagick_blueShiftImage_basic.phpt 0000664 0001750 0001750 00000000775 14775775503 022243 0 ustar jakub jakub --TEST--
Test Imagick, blueShiftImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->blueShiftImage($blueShift);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
blueShiftImage($blueShift) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/037_Imagick_blurImage_basic.phpt 0000664 0001750 0001750 00000001102 14775775503 021244 0 ustar jakub jakub --TEST--
Test Imagick, blurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->blurImage($radius, $sigma, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
blurImage($radius, $sigma, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/038_Imagick_brightnessContrastImage_basic.phpt 0000664 0001750 0001750 00000001232 14775775503 024173 0 ustar jakub jakub --TEST--
Test Imagick, brightnessContrastImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->brightnessContrastImage($brightness, $contrast, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
brightnessContrastImage($brightness, $contrast, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/039_Imagick_borderImage_basic.phpt 0000664 0001750 0001750 00000001100 14775775503 021555 0 ustar jakub jakub --TEST--
Test Imagick, borderImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->borderImage($color, $width, $height);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
borderImage($color, $width, $height) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/039_Imagick_borderImage_im7.phpt 0000664 0001750 0001750 00000013305 14775775503 021202 0 ustar jakub jakub --TEST--
Test Imagick, borderImageWithComposite
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->borderImage($color, $width, $height);
if ($blendOption === null) {
$imagick->borderImage($color, $width, $height);
}
else {
$imagick->borderImageWithComposite($color, $width, $height, $blendOption);
}
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) {
echo "Failed to generate image.";
}
return $imagick;
}
$blendOptions = [
"null" => null,
// "COMPOSITE_NO" => Imagick::COMPOSITE_NO,
// //"COMPOSITE_ADD" => Imagick::COMPOSITE_ADD,
"COMPOSITE_ATOP" => Imagick::COMPOSITE_ATOP,
// "COMPOSITE_BLEND" => Imagick::COMPOSITE_BLEND,
// "COMPOSITE_BUMPMAP" => Imagick::COMPOSITE_BUMPMAP,
// "COMPOSITE_CLEAR" => Imagick::COMPOSITE_CLEAR,
// "COMPOSITE_COLORBURN" => Imagick::COMPOSITE_COLORBURN,
// "COMPOSITE_COLORDODGE" => Imagick::COMPOSITE_COLORDODGE,
// "COMPOSITE_COLORIZE" => Imagick::COMPOSITE_COLORIZE,
// "COMPOSITE_COPYBLACK" => Imagick::COMPOSITE_COPYBLACK,
// "COMPOSITE_COPYBLUE" => Imagick::COMPOSITE_COPYBLUE,
// "COMPOSITE_COPY" => Imagick::COMPOSITE_COPY,
// "COMPOSITE_COPYCYAN" => Imagick::COMPOSITE_COPYCYAN,
// "COMPOSITE_COPYGREEN" => Imagick::COMPOSITE_COPYGREEN,
// "COMPOSITE_COPYMAGENTA" => Imagick::COMPOSITE_COPYMAGENTA,
// "COMPOSITE_COPYALPHA" => Imagick::COMPOSITE_COPYALPHA,
// "COMPOSITE_COPYOPACITY" => Imagick::COMPOSITE_COPYOPACITY,
// "COMPOSITE_COPYRED" => Imagick::COMPOSITE_COPYRED,
// "COMPOSITE_COPYYELLOW" => Imagick::COMPOSITE_COPYYELLOW,
// "COMPOSITE_DARKEN" => Imagick::COMPOSITE_DARKEN,
// "COMPOSITE_DSTATOP" => Imagick::COMPOSITE_DSTATOP,
// "COMPOSITE_DST" => Imagick::COMPOSITE_DST,
// "COMPOSITE_DSTIN" => Imagick::COMPOSITE_DSTIN,
// "COMPOSITE_DSTOUT" => Imagick::COMPOSITE_DSTOUT,
// "COMPOSITE_DSTOVER" => Imagick::COMPOSITE_DSTOVER,
// "COMPOSITE_DIFFERENCE" => Imagick::COMPOSITE_DIFFERENCE,
// "COMPOSITE_DISPLACE" => Imagick::COMPOSITE_DISPLACE,
// "COMPOSITE_DISSOLVE" => Imagick::COMPOSITE_DISSOLVE,
// "COMPOSITE_EXCLUSION" => Imagick::COMPOSITE_EXCLUSION,
// "COMPOSITE_HARDLIGHT" => Imagick::COMPOSITE_HARDLIGHT,
// "COMPOSITE_HUE" => Imagick::COMPOSITE_HUE,
// "COMPOSITE_IN" => Imagick::COMPOSITE_IN,
// "COMPOSITE_LIGHTEN" => Imagick::COMPOSITE_LIGHTEN,
// "COMPOSITE_LUMINIZE" => Imagick::COMPOSITE_LUMINIZE,
// //"COMPOSITE_MINUS" => Imagick::COMPOSITE_MINUS,
// "COMPOSITE_MODULATE" => Imagick::COMPOSITE_MODULATE,
// "COMPOSITE_MULTIPLY" => Imagick::COMPOSITE_MULTIPLY,
// "COMPOSITE_OUT" => Imagick::COMPOSITE_OUT,
"COMPOSITE_OVER" => Imagick::COMPOSITE_OVER,
// "COMPOSITE_OVERLAY" => Imagick::COMPOSITE_OVERLAY,
// "COMPOSITE_PLUS" => Imagick::COMPOSITE_PLUS,
// "COMPOSITE_REPLACE" => Imagick::COMPOSITE_REPLACE,
// "COMPOSITE_SATURATE" => Imagick::COMPOSITE_SATURATE,
// "COMPOSITE_SCREEN" => Imagick::COMPOSITE_SCREEN,
// "COMPOSITE_SOFTLIGHT" => Imagick::COMPOSITE_SOFTLIGHT,
// "COMPOSITE_SRCATOP" => Imagick::COMPOSITE_SRCATOP,
// "COMPOSITE_SRC" => Imagick::COMPOSITE_SRC,
// "COMPOSITE_SRCIN" => Imagick::COMPOSITE_SRCIN,
// "COMPOSITE_SRCOUT" => Imagick::COMPOSITE_SRCOUT,
// "COMPOSITE_SRCOVER" => Imagick::COMPOSITE_SRCOVER,
// // "COMPOSITE_SUBTRACT" => Imagick::COMPOSITE_SUBTRACT,
// "COMPOSITE_THRESHOLD" => Imagick::COMPOSITE_THRESHOLD,
// "COMPOSITE_XOR" => Imagick::COMPOSITE_XOR,
// "COMPOSITE_CHANGEMASK" => Imagick::COMPOSITE_CHANGEMASK,
// "COMPOSITE_LINEARLIGHT" => Imagick::COMPOSITE_LINEARLIGHT,
// "COMPOSITE_DIVIDE" => Imagick::COMPOSITE_DIVIDE,
// "COMPOSITE_DISTORT" => Imagick::COMPOSITE_DISTORT,
// //"COMPOSITE_BLUR" => Imagick::COMPOSITE_BLUR,
// "COMPOSITE_PEGTOPLIGHT" => Imagick::COMPOSITE_PEGTOPLIGHT,
// "COMPOSITE_VIVIDLIGHT" => Imagick::COMPOSITE_VIVIDLIGHT,
// "COMPOSITE_PINLIGHT" => Imagick::COMPOSITE_PINLIGHT,
// "COMPOSITE_LINEARDODGE" => Imagick::COMPOSITE_LINEARDODGE,
// "COMPOSITE_LINEARBURN" => Imagick::COMPOSITE_LINEARBURN,
// "COMPOSITE_MATHEMATICS" => Imagick::COMPOSITE_MATHEMATICS,
// "COMPOSITE_MODULUSADD" => Imagick::COMPOSITE_MODULUSADD,
// "COMPOSITE_MODULUSSUBTRACT" => Imagick::COMPOSITE_MODULUSSUBTRACT,
// "COMPOSITE_MINUSDST" => Imagick::COMPOSITE_MINUSDST,
// "COMPOSITE_DIVIDEDST" => Imagick::COMPOSITE_DIVIDEDST,
// "COMPOSITE_DIVIDESRC" => Imagick::COMPOSITE_DIVIDESRC,
// "COMPOSITE_MINUSSRC" => Imagick::COMPOSITE_MINUSSRC,
// "COMPOSITE_DARKENINTENSITY" => Imagick::COMPOSITE_DARKENINTENSITY,
// "COMPOSITE_LIGHTENINTENSITY" => Imagick::COMPOSITE_LIGHTENINTENSITY,
// "COMPOSITE_HARDMIX" => Imagick::COMPOSITE_HARDMIX,
// "COMPOSITE_STEREO" => Imagick::COMPOSITE_STEREO,
// "COMPOSITE_FREEZE" => Imagick::COMPOSITE_FREEZE,
// "COMPOSITE_INTERPOLATE" => Imagick::COMPOSITE_INTERPOLATE,
// "COMPOSITE_NEGATE" => Imagick::COMPOSITE_NEGATE,
// "COMPOSITE_REFLECT" => Imagick::COMPOSITE_REFLECT,
// "COMPOSITE_SOFTBURN" => Imagick::COMPOSITE_SOFTBURN,
// "COMPOSITE_SOFTDODGE" => Imagick::COMPOSITE_SOFTDODGE,
// "COMPOSITE_STAMP" => Imagick::COMPOSITE_STAMP,
// "COMPOSITE_RMSE" => Imagick::COMPOSITE_RMSE,
];
foreach ($blendOptions as $name => $blendOption) {
// echo "name: $name \n";
$imagick = borderImage($color, $width, $height, $blendOption);
$filename = "039_border_" . $name . ".png";
// $imagick->writeImage($filename);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/040_Imagick_charcoalImage_basic.phpt 0000664 0001750 0001750 00000001017 14775775503 022053 0 ustar jakub jakub --TEST--
Test Imagick, charcoalImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->charcoalImage($radius, $sigma);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
charcoalImage($radius, $sigma) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/041_Imagick_chopImage_basic.phpt 0000664 0001750 0001750 00000001124 14775775503 021230 0 ustar jakub jakub --TEST--
Test Imagick, chopImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->chopImage($width, $height, $startX, $startY);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
chopImage($startX, $startY, $width, $height) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/042_Imagick_clutImage_basic.phpt 0000664 0001750 0001750 00000002406 14775775503 021253 0 ustar jakub jakub --TEST--
Test Imagick, clutImage
--SKIPIF--
--FILE--
setStrokeOpacity(0);
$draw->setFillColor('black');
$points = [
['x' => 40 * 3, 'y' => 10 * 5],
['x' => 20 * 3, 'y' => 20 * 5],
['x' => 70 * 3, 'y' => 50 * 5],
['x' => 80 * 3, 'y' => 15 * 5],
];
$draw->polygon($points);
$imagick = new \Imagick();
$imagick->setColorspace(\Imagick::COLORSPACE_GRAY);
$imagick->newPseudoImage(
300, 300,
"xc:white"
);
$imagick->drawImage($draw);
$imagick->blurImage(0, 10);
$draw = new \ImagickDraw();
$draw->setStrokeOpacity(1);
$draw->setFillColor('red');
$draw->point(0, 2);
$draw->setFillColor('yellow');
$draw->rectangle(0, 0, 1, 1);
$gradient = new Imagick();
$gradient->newPseudoImage(1, 5, 'xc:black');
$gradient->drawImage($draw);
$gradient->setImageFormat('png');
$imagick->setImageFormat('png');
// This test is for IM < 7 so setInterpolate not available
// Which probably means the clutImage method isn't usuable...
//$imagick->setInterpolateMethod(Imagick::INTERPOLATE_BILINEAR);
$imagick->clutImage($gradient);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/042_Imagick_clutImage_im7.phpt 0000664 0001750 0001750 00000002277 14775775503 020674 0 ustar jakub jakub --TEST--
Test Imagick, clutImageWithInterpolate
--SKIPIF--
--FILE--
setStrokeOpacity(0);
$draw->setFillColor('black');
$points = [
['x' => 40 * 3, 'y' => 10 * 5],
['x' => 20 * 3, 'y' => 20 * 5],
['x' => 70 * 3, 'y' => 50 * 5],
['x' => 80 * 3, 'y' => 15 * 5],
];
$draw->polygon($points);
$imagick = new \Imagick();
$imagick->setColorspace(\Imagick::COLORSPACE_GRAY);
$imagick->newPseudoImage(
300, 300,
"xc:white"
);
$imagick->drawImage($draw);
$imagick->blurImage(0, 10);
$draw = new \ImagickDraw();
$draw->setStrokeOpacity(1);
$draw->setFillColor('red');
$draw->point(0, 2);
$draw->setFillColor('yellow');
$draw->rectangle(0, 0, 1, 1);
$gradient = new Imagick();
$gradient->newPseudoImage(1, 5, 'xc:black');
$gradient->drawImage($draw);
$imagick->setImageFormat('png');
$imagick->clutImageWithInterpolate($gradient, Imagick::INTERPOLATE_BILINEAR);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
// $imagick->writeImage(__DIR__ . "/feels_bad_man.png");
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/043_Imagick_colorizeImage_basic.phpt 0000664 0001750 0001750 00000002052 14775775503 022130 0 ustar jakub jakub --TEST--
Test Imagick, colorizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$opacity = $opacity / 255.0;
$opacityColor = new \ImagickPixel("rgba(0, 0, 0, $opacity)");
$imagick->colorizeImage($color, $opacityColor);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
colorizeImage($color, $opacity) ;
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$opacity = $opacity / 255.0;
$opacityColor = new \ImagickPixel("rgba(0, 0, 0, $opacity)");
// TODO - legacy mode of setting fraction as transparency needs
// to be removed.
$imagick->colorizeImage($color, 0.5, true);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image for legacy mode.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/044_Imagick_colorMatrixImage_basic.phpt 0000664 0001750 0001750 00000003007 14775775503 022607 0 ustar jakub jakub --TEST--
Test Imagick, colorMatrixImage
--SKIPIF--
--FILE--
1.5,
1 => 0,
2 => 0,
3 => 0,
4 => -0.157,
5 => 0,
6 => 1,
7 => 0.5,
8 => 0,
9 => -0.157,
10 => 0,
11 => 0,
12 => 0.5,
13 => 0,
14 => 0.5,
15 => 0,
16 => 0,
17 => 0,
18 => 1,
19 => 0,
20 => 0,
21 => 0,
22 => 0,
23 => 0,
24 => 1,
);
function colorMatrixImage($colorMatrix) {
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
//$imagick->setImageOpacity(1);
//A color matrix should look like:
// $colorMatrix = [
// 1.5, 0.0, 0.0, 0.0, 0.0, -0.157,
// 0.0, 1.0, 0.5, 0.0, 0.0, -0.157,
// 0.0, 0.0, 1.5, 0.0, 0.0, -0.157,
// 0.0, 0.0, 0.0, 1.0, 0.0, 0.0,
// 0.0, 0.0, 0.0, 0.0, 1.0, 0.0,
// 0.0, 0.0, 0.0, 0.0, 0.0, 1.0
// ];
$background = new \Imagick();
$background->newPseudoImage($imagick->getImageWidth(), $imagick->getImageHeight(), "pattern:checkerboard");
$background->setImageFormat('png');
$imagick->setImageFormat('png');
$imagick->colorMatrixImage($colorMatrix);
$background->compositeImage($imagick, \Imagick::COMPOSITE_ATOP, 0, 0);
$bytes = $background->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
colorMatrixImage($colorMatrix) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/045_Imagick_compositeImage_basic.phpt 0000664 0001750 0001750 00000002052 14775775503 022306 0 ustar jakub jakub --TEST--
Test Imagick, compositeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$img2 = new \Imagick();
$img2->newPseudoImage(640, 480, "magick:logo");
$img2->negateImage(false);
$img2->blurimage(10, 5);
$img1->resizeimage(
$img2->getImageWidth(),
$img2->getImageHeight(),
\Imagick::FILTER_LANCZOS,
1
);
$opacity = new \Imagick();
$opacity->newPseudoImage(
$img1->getImageHeight(),
$img1->getImageWidth(),
"gradient:gray(10%)-gray(90%)"
);
$opacity->rotateimage('black', 90);
$img2->compositeImage($opacity, \Imagick::COMPOSITE_COPYOPACITY, 0, 0);
$img1->compositeImage($img2, \Imagick::COMPOSITE_ATOP, 0, 0);
$bytes = $img1->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
compositeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/046_Imagick_contrastImage_basic.phpt 0000664 0001750 0001750 00000001054 14775775503 022143 0 ustar jakub jakub --TEST--
Test Imagick, contrastImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
if ($contrastType != 2) {
$imagick->contrastImage($contrastType);
}
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
contrastImage($contrastType) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/047_Imagick_convolveImage_6.phpt 0000664 0001750 0001750 00000001553 14775775503 021232 0 ustar jakub jakub --TEST--
Test Imagick, convolveImage
--SKIPIF--
--FILE--
-1,
1 => -1,
2 => -1,
3 => -1,
4 => 8,
5 => -1,
6 => -1,
7 => -1,
8 => -1,
);
function convolveImage($bias, $kernelMatrix) {
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
//$edgeFindingKernel = [-1, -1, -1, -1, 8, -1, -1, -1, -1,];
$imagick->setImageBias($bias * \Imagick::getQuantum());
$imagick->convolveImage($kernelMatrix);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
convolveImage($bias, $kernelMatrix) ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s Imagick::setImageBias() is deprecated in %s
Ok
imagick-3.8.0/tests/047_Imagick_convolveImage_7.phpt 0000664 0001750 0001750 00000001237 14775775503 021232 0 ustar jakub jakub --TEST--
Test Imagick, convolveImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$kernel = ImagickKernel::fromMatrix($kernelMatrix);
$imagick->convolveImage($kernel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
convolveImage($bias, $kernelMatrix) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/048_Imagick_cropImage_basic.phpt 0000664 0001750 0001750 00000001123 14775775503 021250 0 ustar jakub jakub --TEST--
Test Imagick, cropImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->cropImage($width, $height, $startX, $startY);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
cropImage($startX, $startY, $width, $height) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/049_Imagick_deskewImage_basic.phpt 0000664 0001750 0001750 00000003152 14775775503 021574 0 ustar jakub jakub --TEST--
Test Imagick, deskewImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$deskewImagick = clone $imagick;
//This is the only thing required for deskewing.
$deskewImagick->deskewImage($threshold);
//The rest of this example is to make the result obvious - because
//otherwise the result is not obvious.
$trim = 9;
$deskewImagick->cropImage($deskewImagick->getImageWidth() - $trim, $deskewImagick->getImageHeight(), $trim, 0);
$imagick->cropImage($imagick->getImageWidth() - $trim, $imagick->getImageHeight(), $trim, 0);
$deskewImagick->resizeimage($deskewImagick->getImageWidth() / 2, $deskewImagick->getImageHeight() / 2, \Imagick::FILTER_LANCZOS, 1);
$imagick->resizeimage(
(int)($imagick->getImageWidth() / 2),
(int)($imagick->getImageHeight() / 2),
\Imagick::FILTER_LANCZOS,
1
);
$newCanvas = new \Imagick();
$newCanvas->newimage($imagick->getImageWidth() + $deskewImagick->getImageWidth() + 20, $imagick->getImageHeight(), 'red', 'jpg');
$newCanvas->compositeimage($imagick, \Imagick::COMPOSITE_COPY, 5, 0);
$newCanvas->compositeimage($deskewImagick, \Imagick::COMPOSITE_COPY, $imagick->getImageWidth() + 10, 0);
$bytes = $newCanvas->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
deskewImage($threshold) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/050_Imagick_distortImage_Affine.phpt 0000664 0001750 0001750 00000001405 14775775503 022100 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
0, 0,
25, 25,
100, 0,
100, 50
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND );
$imagick->distortImage( \Imagick::DISTORTION_AFFINE, $points, TRUE );
header( "Content-Type: image/jpeg" );
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/051_Imagick_distortImage_Projection.phpt 0000664 0001750 0001750 00000001366 14775775503 023033 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
0.9,0.3,
-0.2,0.7,
20,15
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND );
$imagick->distortImage( \Imagick::DISTORTION_AFFINEPROJECTION, $points, TRUE );
header( "Content-Type: image/jpeg" );
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/052_Imagick_distortImage_Arc.phpt 0000664 0001750 0001750 00000001741 14775775503 021422 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$degrees = array( 180 );
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND );
$imagick->distortImage( \Imagick::DISTORTION_ARC, $degrees, TRUE );
header( "Content-Type: image/jpeg" );
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/053_Imagick_distortImage_RotatedArc.phpt 0000664 0001750 0001750 00000001266 14775775503 022750 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$degrees = array( 180, 45, 100, 20 );
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND );
$imagick->distortImage( \Imagick::DISTORTION_ARC, $degrees, TRUE );
header( "Content-Type: image/jpeg" );
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/054_Imagick_distortImage_Bilinear.phpt 0000664 0001750 0001750 00000001520 14775775503 022437 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
0,0, 25,25, # top left
176,0, 126,0, # top right
0,135, 0,105, # bottom right
176,135, 176,135 # bottum left
);
$imagick->setImageBackgroundColor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND );
$imagick->distortImage( \Imagick::DISTORTION_BILINEAR, $points, TRUE );
header( "Content-Type: image/jpeg" );
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/055_Imagick_distortImage_ScaleRotateTransform.phpt 0000664 0001750 0001750 00000001305 14775775503 025016 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
1.5, # scale 150%
150 # rotate
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND );
$imagick->distortImage( \Imagick::DISTORTION_SCALEROTATETRANSLATE, $points, TRUE );
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/056_Imagick_distortImage_Perspective.phpt 0000664 0001750 0001750 00000002647 14775775503 023220 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
rsiControl->getImagePath()));
$imagick = new \Imagick();
/* Create new checkerboard pattern */
$imagick->newPseudoImage(100, 100, "pattern:checkerboard");
/* Set the image format to png */
$imagick->setImageFormat('png');
/* Fill new visible areas with transparent */
$imagick->setImageVirtualPixelMethod(\Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
/* Activate matte */
$imagick->setImageMatte(true);
/* Control points for the distortion */
$controlPoints = array( 10, 10,
10, 5,
10, $imagick->getImageHeight() - 20,
10, $imagick->getImageHeight() - 5,
$imagick->getImageWidth() - 10, 10,
$imagick->getImageWidth() - 10, 20,
$imagick->getImageWidth() - 10, $imagick->getImageHeight() - 10,
$imagick->getImageWidth() - 10, $imagick->getImageHeight() - 30);
/* Perform the distortion */
$imagick->distortImage(\Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/057_Imagick_distortImage_PerspectiveProjection.phpt 0000664 0001750 0001750 00000001736 14775775503 025254 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
1.945622, 0.071451,
-12.187838, 0.799032,
1.276214, -24.470275, 0.006258, 0.000715
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND);
$imagick->distortImage(\Imagick::DISTORTION_PERSPECTIVEPROJECTION, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/058_Imagick_distortImage_Polynomial.phpt 0000664 0001750 0001750 00000002476 14775775503 023054 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
1.5, //Order 1.5 = special
0, 0, 26, 0,
128,0, 114,23,
128,128, 128,100,
0,128, 0,123
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND);
$imagick->distortImage(\Imagick::DISTORTION_POLYNOMIAL, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/059_Imagick_distortImage_Polar.phpt 0000664 0001750 0001750 00000001455 14775775503 022003 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
0
);
//Only do partial arc
// $points = array(
// 60,20, 0,0, -60,60
// );
// HorizontalTile
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_HORIZONTALTILE);
$imagick->distortImage(\Imagick::DISTORTION_POLAR, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/060_Imagick_distortImage_Polar.phpt 0000664 0001750 0001750 00000001245 14775775503 021770 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
0
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_BACKGROUND);
$imagick->distortImage(\Imagick::DISTORTION_DEPOLAR, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/061_Imagick_distortImage_Barrel.phpt 0000664 0001750 0001750 00000002445 14775775503 022126 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
//0.2, 0.0, 0.0, 1.0
0.4, 0.6, 0.0, 1.0
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_EDGE);
$imagick->distortImage(\Imagick::DISTORTION_BARREL, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/062_Imagick_distortImage_BarrelInverse.phpt 0000664 0001750 0001750 00000001554 14775775503 023463 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
//0.2, 0.0, 0.0, 1.0
0.2, 0.1, 0.0, 1.0
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_EDGE);
$imagick->distortImage(\Imagick::DISTORTION_BARRELINVERSE, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/063_Imagick_distortImage_Shepards.phpt 0000664 0001750 0001750 00000003707 14775775503 022474 0 ustar jakub jakub --TEST--
Test Imagick, distortImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$points = array(
//Setup some control points that don't move
5 * $imagick->getImageWidth() / 100, 5 * $imagick->getImageHeight() / 100,
5 * $imagick->getImageWidth() / 100, 5 * $imagick->getImageHeight() / 100,
5 * $imagick->getImageWidth() / 100, 95 * $imagick->getImageHeight() / 100,
5 * $imagick->getImageWidth() / 100, 95 * $imagick->getImageHeight() / 100,
95 * $imagick->getImageWidth() / 100, 95 * $imagick->getImageHeight() / 100,
95 * $imagick->getImageWidth() / 100, 95 * $imagick->getImageHeight() / 100,
5 * $imagick->getImageWidth() / 100, 5 * $imagick->getImageHeight() / 100,
95 * $imagick->getImageWidth() / 100, 95 * $imagick->getImageHeight() / 100,
// //Move the centre of the image down and to the right
// 50 * $imagick->getImageWidth() / 100, 50 * $imagick->getImageHeight() / 100,
// 60 * $imagick->getImageWidth() / 100, 60 * $imagick->getImageHeight() / 100,
//
// //Move a point near the top-right of the image down and to the left and down
// 90 * $imagick->getImageWidth(), 10 * $imagick->getImageHeight(),
// 80 * $imagick->getImageWidth(), 15 * $imagick->getImageHeight(),
);
$imagick->setimagebackgroundcolor("#fad888");
$imagick->setImageVirtualPixelMethod( \Imagick::VIRTUALPIXELMETHOD_EDGE);
$imagick->distortImage(\Imagick::DISTORTION_SHEPARDS, $points, TRUE);
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/065_Imagick_despeckleImage_basic.phpt 0000664 0001750 0001750 00000000715 14775775503 022251 0 ustar jakub jakub --TEST--
Test Imagick, despeckleImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->despeckleImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
despeckleImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/066_Imagick_embossImage_basic.phpt 0000664 0001750 0001750 00000001007 14775775503 021576 0 ustar jakub jakub --TEST--
Test Imagick, embossImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->embossImage($radius, $sigma);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
embossImage($radius, $sigma) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/067_Imagick_edgeImage_basic.phpt 0000664 0001750 0001750 00000000733 14775775503 021220 0 ustar jakub jakub --TEST--
Test Imagick, edgeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->edgeImage($radius);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
edgeImage($radius) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/068_Imagick_enhanceImage_basic.phpt 0000664 0001750 0001750 00000000705 14775775503 021715 0 ustar jakub jakub --TEST--
Test Imagick, enhanceImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->enhanceImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
enhanceImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/069_Imagick_equalizeImage_case1.phpt 0000664 0001750 0001750 00000000711 14775775503 022044 0 ustar jakub jakub --TEST--
Test Imagick, equalizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->equalizeImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
equalizeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/070_Imagick_equalizeImage_case2.phpt 0000664 0001750 0001750 00000001275 14775775503 022043 0 ustar jakub jakub --TEST--
Test Imagick, equalizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->equalizeImage();
$imagick->extentImage(
$startX, $startY, $width, $height
);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
$startX = 50;
$startY = 50;
$width = 150;
$height = 150;
extentImage($startX, $startY, $width, $height) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/071_Imagick_flipImage_basic.phpt 0000664 0001750 0001750 00000000671 14775775503 021242 0 ustar jakub jakub --TEST--
Test Imagick, flipImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->flipImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
flipImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/072_Imagick_evaluateImage_basic.phpt 0000664 0001750 0001750 00000006026 14775775503 022117 0 ustar jakub jakub --TEST--
Test Imagick, evaluateImage
--SKIPIF--
--FILE--
newPseudoImage(
$size,
$size,
"gradient:$gradientStartColor-$gradientEndColor"
);
$quantumScaledTypes = array(
\Imagick::EVALUATE_ADD,
\Imagick::EVALUATE_AND,
\Imagick::EVALUATE_MAX,
\Imagick::EVALUATE_MIN,
\Imagick::EVALUATE_OR,
\Imagick::EVALUATE_SET,
\Imagick::EVALUATE_SUBTRACT,
\Imagick::EVALUATE_XOR,
\Imagick::EVALUATE_THRESHOLD,
\Imagick::EVALUATE_THRESHOLDBLACK,
\Imagick::EVALUATE_THRESHOLDWHITE,
\Imagick::EVALUATE_ADDMODULUS,
);
$unscaledTypes = array(
\Imagick::EVALUATE_DIVIDE,
\Imagick::EVALUATE_MULTIPLY,
\Imagick::EVALUATE_RIGHTSHIFT,
\Imagick::EVALUATE_LEFTSHIFT,
\Imagick::EVALUATE_POW,
\Imagick::EVALUATE_LOG,
\Imagick::EVALUATE_GAUSSIANNOISE,
\Imagick::EVALUATE_IMPULSENOISE,
\Imagick::EVALUATE_LAPLACIANNOISE,
\Imagick::EVALUATE_MULTIPLICATIVENOISE,
\Imagick::EVALUATE_POISSONNOISE,
\Imagick::EVALUATE_UNIFORMNOISE,
\Imagick::EVALUATE_COSINE,
\Imagick::EVALUATE_SINE,
);
if (in_array($evaluateType, $unscaledTypes)) {
$imagick->evaluateimage($evaluateType, $firstTerm);
}
else if (in_array($evaluateType, $quantumScaledTypes)) {
$imagick->evaluateimage($evaluateType, $firstTerm * \Imagick::getQuantum());
}
else {
throw new \Exception("Evaluation type $evaluateType is not listed as either scaled or unscaled");
}
$imagick->setimageformat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
foreach ($evaluateTypes as $evaluateType) {
evaluateImage($evaluateType, $firstTerm, $gradientStartColor, $gradientEndColor) ;
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/073_Imagick_forwardFourierTransformImage_basic.phpt 0000664 0001750 0001750 00000003432 14775775503 025204 0 ustar jakub jakub --TEST--
Test Imagick, forwardFourierTransformImage
--SKIPIF--
--FILE--
setStrokeOpacity(0);
$draw->setStrokeColor('rgb(255, 255, 255)');
$draw->setFillColor('rgb(255, 255, 255)');
//Draw a circle on the y-axis, with it's centre
//at x, y that touches the origin
$draw->circle(250, 250, 220, 250);
$imagick = new \Imagick();
$imagick->newImage(512, 512, "black");
$imagick->drawImage($draw);
$imagick->gaussianBlurImage(20, 20);
$imagick->autoLevelImage();
return $imagick;
}
function forwardFourierTransformImage() {
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$imagick->resizeimage(512, 512, \Imagick::FILTER_LANCZOS, 1);
$mask = createMask();
$imagick->forwardFourierTransformImage(true);
$imagick->setIteratorIndex(0);
$magnitude = $imagick->getimage();
$imagick->setIteratorIndex(1);
$imagickPhase = $imagick->getimage();
if (true) {
$imagickPhase->compositeImage($mask, \Imagick::COMPOSITE_MULTIPLY, 0, 0);
}
if (false) {
$output = clone $imagickPhase;
$output->setimageformat('png');
$bytes = $output->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
$magnitude->inverseFourierTransformImage($imagickPhase, true);
$magnitude->setimageformat('png');
$bytes = $magnitude->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
forwardFourierTransformImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/074_Imagick_flopImage_basic.phpt 0000664 0001750 0001750 00000000672 14775775503 021254 0 ustar jakub jakub --TEST--
Test Imagick, flopImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->flopImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
flopImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/075_Imagick_floodFillPaintImage_basic.phpt 0000664 0001750 0001750 00000001573 14775775503 023224 0 ustar jakub jakub --TEST--
Test Imagick, floodFillPaintImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->floodFillPaintImage(
$fillColor,
$fuzz * \Imagick::getQuantum(),
$targetColor,
$x, $y,
$inverse,
$channel
);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
floodFillPaintImage($fillColor, $fuzz, $targetColor, $x, $y, $inverse, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/076_Imagick_fxImage_basic.phpt 0000664 0001750 0001750 00000001103 14775775503 020721 0 ustar jakub jakub --TEST--
Test Imagick, fxImage
--SKIPIF--
--FILE--
newPseudoImage(200, 200, "xc:white");
$fx = 'xx=i-w/2; yy=j-h/2; rr=hypot(xx,yy); (.5-rr/140)*1.2+.5';
$fxImage = $imagick->fxImage($fx);
$fxImage->setimageformat('png');
$bytes = $fxImage->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
fxImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/077_Imagick_frameImage_basic.phpt 0000664 0001750 0001750 00000001777 14775775503 021420 0 ustar jakub jakub --TEST--
Test Imagick, frameImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('png');
$width = $width + $innerBevel + $outerBevel;
$height = $height + $innerBevel + $outerBevel;
$imagick->frameimage(
$color,
$width,
$height,
$innerBevel,
$outerBevel
);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) {
echo "Failed to generate image.";
}
return $imagick;
}
$imagick = frameImage($color, $width, $height, $innerBevel, $outerBevel) ;
// $imagick->writeImage("frame_image.png");
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/077_Imagick_frameImage_im7.phpt 0000664 0001750 0001750 00000003163 14775775503 021022 0 ustar jakub jakub --TEST--
Test Imagick, frameImageWithComposite
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$width = $width + $innerBevel + $outerBevel;
$height = $height + $innerBevel + $outerBevel;
if ($blendOption === null) {
$imagick->frameimage(
$color,
$width,
$height,
$innerBevel,
$outerBevel
);
}
else {
$imagick->frameImageWithComposite(
$color,
$width,
$height,
$innerBevel,
$outerBevel,
$blendOption
);
}
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) {
echo "Failed to generate image.";
}
return $imagick;
}
$blendOptions = [
"null" => null,
"COMPOSITE_NO" => Imagick::COMPOSITE_NO,
"COMPOSITE_BLEND" => Imagick::COMPOSITE_BLEND,
"COMPOSITE_COPYRED" => Imagick::COMPOSITE_COPYRED,
"COMPOSITE_ATOP" => Imagick::COMPOSITE_ATOP,
"COMPOSITE_OVER" => Imagick::COMPOSITE_OVER,
];
foreach ($blendOptions as $name => $blendOption) {
$imagick = frameImage($color, $width, $height, $innerBevel, $outerBevel, $blendOption) ;
$filename = "077_frame_" . $name . ".png";
// $imagick->writeImage($filename);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/078_Imagick_gammaImage_basic.phpt 0000664 0001750 0001750 00000001040 14775775503 021370 0 ustar jakub jakub --TEST--
Test Imagick, gammaImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->gammaImage($gamma, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
gammaImage($gamma, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/079_Imagick_getImageGeometry_basic.phpt 0000664 0001750 0001750 00000000663 14775775503 022614 0 ustar jakub jakub --TEST--
Test Imagick, getImageGeometry
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
getImageGeometry() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/080_Imagick_gaussianBlurImage_basic.phpt 0000664 0001750 0001750 00000001142 14775775503 022741 0 ustar jakub jakub --TEST--
Test Imagick, gaussianBlurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->gaussianBlurImage($radius, $sigma, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
gaussianBlurImage($radius, $sigma, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/081_Imagick_getImageHistogram_basic.phpt 0000664 0001750 0001750 00000005557 14775775503 022756 0 ustar jakub jakub --TEST--
Test Imagick, getImageHistogram
--SKIPIF--
--FILE--
getColorValueQuantum($colorChannel);
$color = $histogramElement->getColorValue($colorChannel);
$color = intval($color * 255);
$count = $histogramElement->getColorCount();
if (array_key_exists($color, $colorStatistics)) {
$colorStatistics[$color] += $count;
}
else {
$colorStatistics[$color] = $count;
}
}
ksort($colorStatistics);
return $colorStatistics;
}
function getImageHistogram() {
$backgroundColor = 'black';
$draw = new \ImagickDraw();
$draw->setStrokeWidth(0); //Lines have a wi
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$histogramWidth = 256;
$histogramHeight = 100; // the height for each RGB segment
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
//Resize the image to be small, otherwise PHP tends to run out of memory
//This might lead to bad results for images that are pathologically 'pixelly'
$imagick->adaptiveResizeImage(200, 200, true);
$histogramElements = $imagick->getImageHistogram();
$histogram = new \Imagick();
$histogram->newpseudoimage($histogramWidth, $histogramHeight * 3, 'xc:black');
$histogram->setImageFormat('png');
$getMax = function ($carry, $item) {
if ($item > $carry) {
return $item;
}
return $carry;
};
$colorValues = array(
'red' => getColorStatistics($histogramElements, \Imagick::COLOR_RED),
'lime' => getColorStatistics($histogramElements, \Imagick::COLOR_GREEN),
'blue' => getColorStatistics($histogramElements, \Imagick::COLOR_BLUE),
);
$max = array_reduce($colorValues['red'] , $getMax, 0);
$max = array_reduce($colorValues['lime'] , $getMax, $max);
$max = array_reduce($colorValues['blue'] , $getMax, $max);
$scale = $histogramHeight / $max;
$count = 0;
foreach ($colorValues as $color => $values) {
$draw->setstrokecolor($color);
$offset = ($count + 1) * $histogramHeight;
foreach ($values as $index => $value) {
$draw->line($index, $offset, $index, $offset - ($value * $scale));
}
$count++;
}
$histogram->drawImage($draw);
$bytes = $histogram->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
getImageHistogram();
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/083_Imagick_getPixelIterator_basic.phpt 0000664 0001750 0001750 00000001764 14775775503 022647 0 ustar jakub jakub --TEST--
Test Imagick, getPixelIterator
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = $imagick->getPixelIterator();
/** @noinspection PhpUnusedLocalVariableInspection */
foreach ($imageIterator as $row => $pixels) { /* Loop trough pixel rows */
foreach ($pixels as $column => $pixel) { /* Loop through the pixels in the row (columns) */
/** @var $pixel \ImagickPixel */
if ($column % 2) {
$pixel->setColor("rgba(0, 0, 0, 0)"); /* Paint every second pixel black*/
}
}
$imageIterator->syncIterator(); /* Sync the iterator, this is important to do on each iteration */
}
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
getPixelIterator() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/084_Imagick_getPixelRegionIterator_basic.phpt 0000664 0001750 0001750 00000002036 14775775503 024005 0 ustar jakub jakub --TEST--
Test Imagick, getPixelRegionIterator
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = $imagick->getPixelRegionIterator(100, 100, 200, 200);
/** @noinspection PhpUnusedLocalVariableInspection */
foreach ($imageIterator as $row => $pixels) { /* Loop trough pixel rows */
foreach ($pixels as $column => $pixel) { /* Loop through the pixels in the row (columns) */
/** @var $pixel \ImagickPixel */
if ($column % 2) {
$pixel->setColor("rgba(0, 0, 0, 0)"); /* Paint every second pixel black*/
}
}
$imageIterator->syncIterator(); /* Sync the iterator, this is important to do on each iteration */
}
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
getPixelRegionIterator() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/085_Imagick_haldClutImage_basic.phpt 0000664 0001750 0001750 00000001152 14775775503 022050 0 ustar jakub jakub --TEST--
Test Imagick, haldClutImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagickPalette = new \Imagick();
$imagickPalette->newPseudoImage(640, 480, "magick:NETSCAPE");
$imagickPalette->sepiatoneImage(55);
$imagick->haldClutImage($imagickPalette);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
haldClutImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/086_Imagick_forwardFourierTransformImage_basic.phpt 0000664 0001750 0001750 00000003365 14775775503 025215 0 ustar jakub jakub --TEST--
Test Imagick, forwardFourierTransformImage
--SKIPIF--
--FILE--
setStrokeOpacity(0);
$draw->setStrokeColor('rgb(255, 255, 255)');
$draw->setFillColor('rgb(255, 255, 255)');
//Draw a circle on the y-axis, with it's centre
//at x, y that touches the origin
$draw->circle(250, 250, 220, 250);
$imagick = new \Imagick();
$imagick->newImage(512, 512, "black");
$imagick->drawImage($draw);
$imagick->gaussianBlurImage(20, 20);
$imagick->autoLevelImage();
return $imagick;
}
function forwardFourierTransformImage() {
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$imagick->resizeimage(512, 512, \Imagick::FILTER_LANCZOS, 1);
$mask = createMask();
$imagick->forwardFourierTransformImage(true);
$imagick->setIteratorIndex(0);
$magnitude = $imagick->getimage();
$imagick->setIteratorIndex(1);
$imagickPhase = $imagick->getimage();
if (true) {
$imagickPhase->compositeImage($mask, \Imagick::COMPOSITE_MULTIPLY, 0, 0);
}
if (false) {
$output = clone $imagickPhase;
$output->setimageformat('png');
$bytes = $output->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
$magnitude->inverseFourierTransformImage($imagickPhase, true);
$magnitude->setimageformat('png');
$bytes = $magnitude->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
forwardFourierTransformImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/087_Imagick_levelImage_basic.phpt 0000664 0001750 0001750 00000001227 14775775503 021424 0 ustar jakub jakub --TEST--
Test Imagick, levelImage
--SKIPIF--
--FILE--
newPseudoimage(500, 500, 'gradient:black-white');
$imagick->setFormat('png');
$quantum = $imagick->getQuantum();
$imagick->levelImage($blackPoint / 100 , $gamma, $quantum * $whitePoint / 100);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
levelImage($blackPoint, $gamma, $whitePoint) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/088_Imagick_implodeImage_basic.phpt 0000664 0001750 0001750 00000000714 14775775503 021747 0 ustar jakub jakub --TEST--
Test Imagick, implodeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->implodeImage(0.0001);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
implodeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/088_Imagick_implodeImageWithMethod_basic.phpt 0000664 0001750 0001750 00000001347 14775775503 023747 0 ustar jakub jakub --TEST--
Test Imagick, implodeImageWithMethod
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->implodeImageWithMethod(1.15, $method);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
// $imagick->writeImage(__DIR__ . "/implodeImageWithMethod_$method.png");
}
$methods = [
Imagick::INTERPOLATE_SPLINE,
Imagick::INTERPOLATE_AVERAGE_16,
Imagick::INTERPOLATE_BACKGROUND_COLOR
];
foreach ($methods as $method) {
implodeImage($method);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/089_Imagick_medianFilterImage_basic.phpt 0000664 0001750 0001750 00000001066 14775775503 022723 0 ustar jakub jakub --TEST--
Test Imagick, medianFilterImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
@$imagick->medianFilterImage($radius);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
medianFilterImage($radius) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/090_Imagick_magnifyImage_basic.phpt 0000664 0001750 0001750 00000000705 14775775503 021741 0 ustar jakub jakub --TEST--
Test Imagick, magnifyImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->magnifyImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
magnifyImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/091_Imagick_linearStretchImage_basic.phpt 0000664 0001750 0001750 00000001306 14775775503 023115 0 ustar jakub jakub --TEST--
Test Imagick, linearStretchImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$pixels = $imagick->getImageWidth() * $imagick->getImageHeight();
$imagick->linearStretchImage($blackThreshold * $pixels, $whiteThreshold * $pixels);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
linearStretchImage($blackThreshold, $whiteThreshold) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/092_Imagick_mergeImageLayers_basic.phpt 0000664 0001750 0001750 00000001532 14775775503 022567 0 ustar jakub jakub --TEST--
Test Imagick, mergeImageLayers
--SKIPIF--
--FILE--
newPseudoImage(640, 480, $imageName);
$imagick->addImage($nextImage);
}
$imagick->resetIterator();
$imagick->setImageFormat('png');
$result = $imagick->mergeImageLayers($layerMethodType);
$bytes = $result->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
mergeImageLayers($layerMethodType);
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/093_Imagick_modulateImage_basic.phpt 0000664 0001750 0001750 00000001125 14775775503 022121 0 ustar jakub jakub --TEST--
Test Imagick, modulateImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->modulateImage($brightness, $saturation, $hue);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
modulateImage($hue, $brightness, $saturation) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/094_Imagick_motionBlurImage_basic.phpt 0000664 0001750 0001750 00000001201 14775775503 022435 0 ustar jakub jakub --TEST--
Test Imagick, motionBlurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->motionBlurImage($radius, $sigma, $angle, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
motionBlurImage($radius, $sigma, $angle, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/095_Imagick_normalizeImage_basic.phpt 0000664 0001750 0001750 00000001320 14775775503 022306 0 ustar jakub jakub --TEST--
Test Imagick, normalizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$original = clone $imagick;
$original->cropimage($original->getImageWidth() / 2, $original->getImageHeight(), 0, 0);
$imagick->normalizeImage($channel);
$imagick->compositeimage($original, \Imagick::COMPOSITE_ATOP, 0, 0);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
normalizeImage($channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/096_Imagick_negateImage_basic.phpt 0000664 0001750 0001750 00000001056 14775775503 021560 0 ustar jakub jakub --TEST--
Test Imagick, negateImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->negateImage($grayOnly, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
negateImage($grayOnly, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/097_Imagick_newPseudoImage_basic.phpt 0000664 0001750 0001750 00000000742 14775775503 022270 0 ustar jakub jakub --TEST--
Test Imagick, newPseudoImage
--SKIPIF--
--FILE--
newPseudoImage(300, 300, $canvasType);
$imagick->setImageFormat("png");
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
newPseudoImage($canvasType) ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/098_Imagick_orderedPosterizeImage_basic.phpt 0000664 0001750 0001750 00000001376 14775775503 023655 0 ustar jakub jakub --TEST--
Test Imagick, orderedPosterizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->orderedPosterizeImage($orderedPosterizeType);
$imagick->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
orderedPosterizeImage($orderedPosterizeType) ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s Imagick::orderedPosterizeImage() is deprecated in %S
Ok
imagick-3.8.0/tests/099_Imagick_oilPaintImage_basic.phpt 0000664 0001750 0001750 00000000753 14775775503 022102 0 ustar jakub jakub --TEST--
Test Imagick, oilPaintImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->oilPaintImage($radius);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
oilPaintImage($radius) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/099_Imagick_oilPaintImage_sigma.phpt 0000664 0001750 0001750 00000001001 14775775503 022104 0 ustar jakub jakub --TEST--
Test Imagick, oilPaintImageWithSigma
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->oilPaintImageWithSigma($radius, 2.0);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
oilPaintImage($radius) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/100_Imagick_posterizeImage_basic.phpt 0000664 0001750 0001750 00000001115 14775775503 022317 0 ustar jakub jakub --TEST--
Test Imagick, posterizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->posterizeImage($numberLevels, $posterizeType);
$imagick->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
posterizeImage($posterizeType, $numberLevels) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/101_Imagick_quantizeImage_basic.phpt 0000664 0001750 0001750 00000001241 14775775503 022134 0 ustar jakub jakub --TEST--
Test Imagick, quantizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->quantizeImage($numberColors, $colorSpace, $treeDepth, $dither, false);
$imagick->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
quantizeImage($numberColors, $colorSpace, $treeDepth, $dither) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/102_Imagick_radialBlurImage_basic.phpt 0000664 0001750 0001750 00000001413 14775775503 022357 0 ustar jakub jakub --TEST--
Test Imagick, radialBlurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->radialBlurImage(3);
$imagick->radialBlurImage(5);
$imagick->radialBlurImage(7);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
radialBlurImage() ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s Imagick::radialBlurImage() is deprecated in %s
Deprecated: %s Imagick::radialBlurImage() is deprecated in %s
Deprecated: %s Imagick::radialBlurImage() is deprecated in %s
Ok
imagick-3.8.0/tests/103_Imagick_readImageBlob_basic.phpt 0000664 0001750 0001750 00000002102 14775775503 022005 0 ustar jakub jakub --TEST--
Test Imagick, readImageBlob
--SKIPIF--
--FILE--
readImageBlob($imageBlob);
$bytes = $imageBlob;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
readImageBlob() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/104_Imagick_randomThresholdImage_basic.phpt 0000664 0001750 0001750 00000001373 14775775503 023442 0 ustar jakub jakub --TEST--
Test Imagick, randomThresholdImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->randomThresholdimage(
$lowThreshold * \Imagick::getQuantum(),
$highThreshold * \Imagick::getQuantum(),
$channel
);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
randomThresholdimage($lowThreshold, $highThreshold, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/105_Imagick_raiseImage_basic.phpt 0000664 0001750 0001750 00000001156 14775775503 021410 0 ustar jakub jakub --TEST--
Test Imagick, raiseImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
//x and y do nothing?
$imagick->raiseImage($width, $height, $x, $y, $raise);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
raiseImage($width, $height, $x, $y, $raise) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/106_Imagick_reduceNoiseImage_basic.phpt 0000664 0001750 0001750 00000001105 14775775503 022545 0 ustar jakub jakub --TEST--
Test Imagick, reduceNoiseImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
@$imagick->reduceNoiseImage($reduceNoise);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
reduceNoiseImage($reduceNoise) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/107_Imagick_recolorImage_basic.phpt 0000664 0001750 0001750 00000001133 14775775503 021747 0 ustar jakub jakub --TEST--
Test Imagick, recolorImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$remapColor = array(
1, 0, 0,
0, 0, 1,
0, 1, 0,
);
@$imagick->recolorImage($remapColor);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
recolorImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/108_Imagick_resampleImage_basic.phpt 0000664 0001750 0001750 00000000757 14775775503 022126 0 ustar jakub jakub --TEST--
Test Imagick, resampleImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->resampleImage(200, 200, \Imagick::FILTER_LANCZOS, 1);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
resampleImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/109_Imagick_rollImage_basic.phpt 0000664 0001750 0001750 00000000777 14775775503 021271 0 ustar jakub jakub --TEST--
Test Imagick, rollImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->rollimage($rollX, $rollY);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
rollImage($rollX, $rollY) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/110_Imagick_resizeImage_basic.phpt 0000664 0001750 0001750 00000002460 14775775503 021601 0 ustar jakub jakub --TEST--
Test Imagick, resizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->resizeImage($width, $height, $filterType, $blur, $bestFit);
$cropWidth = $imagick->getImageWidth();
$cropHeight = $imagick->getImageHeight();
if ($cropZoom) {
$newWidth = $cropWidth / 2;
$newHeight = $cropHeight / 2;
$imagick->cropimage(
$newWidth,
$newHeight,
(int)(($cropWidth - $newWidth) / 2),
(int)(($cropHeight - $newHeight) / 2)
);
$imagick->scaleimage(
$imagick->getImageWidth() * 4,
$imagick->getImageHeight() * 4
);
}
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
foreach ($bestFitSettings as $bestFit) {
resizeImage($width, $height, $filterType, $blur, $bestFit, $cropZoom);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/111_Imagick_rotateImage_basic.phpt 0000664 0001750 0001750 00000001027 14775775503 021575 0 ustar jakub jakub --TEST--
Test Imagick, rotateImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->rotateimage($color, $angle);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
rotateImage($angle, $color) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/112_Imagick_roundCorners_basic.phpt 0000664 0001750 0001750 00000001702 14775775503 022020 0 ustar jakub jakub --TEST--
Test Imagick, roundCorners
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setBackgroundColor('red');
$imagick->setbackgroundcolor('pink');
$x_rounding = 40;
$y_rounding = 40;
$stroke_width = 5;
$displace = 0;
$size_correction = 0;
$imagick->roundCornersImage(
$x_rounding,
$y_rounding,
$stroke_width,
$displace,
$size_correction
);
$bytes = $imagick->getImageBlob();
$imagick->setImageFormat('png');
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
// $imagick->writeImage(__DIR__ . "/112_round_corner.png");
}
roundCorners() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/113_Imagick_rotationalBlurImage_basic.phpt 0000664 0001750 0001750 00000001112 14775775503 023275 0 ustar jakub jakub --TEST--
Test Imagick, rotationalBlurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->rotationalBlurImage(3);
$imagick->rotationalBlurImage(5);
$imagick->rotationalBlurImage(7);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
rotationalBlurImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/114_Imagick_scaleImage_basic.phpt 0000664 0001750 0001750 00000001712 14775775503 021372 0 ustar jakub jakub --TEST--
Test Imagick, scaleImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->scaleImage($width, $height, $bestFit);
$imageWidth = $imagick->getImageWidth();
$imageHeight = $imagick->getImageHeight();
$error = false;
if ($imageWidth != $expectedWidth) {
echo "Width $imageWidth does not match expected.\n";
$error = true;
}
if ($imageHeight != $expectedHeight) {
echo "Height $imageHeight does not match expected.\n";
$error = true;
}
if ($error) {
echo "test was ".var_export($test, true)."\n";
};
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/115_Imagick_selectiveBlurImage_basic.phpt 0000664 0001750 0001750 00000001234 14775775503 023113 0 ustar jakub jakub --TEST--
Test Imagick, selectiveBlurImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->selectiveBlurImage($radius, $sigma, $threshold, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
selectiveBlurImage($radius, $sigma, $threshold, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/116_Imagick_separateImageChannel_basic.phpt 0000664 0001750 0001750 00000001042 14775775503 023376 0 ustar jakub jakub --TEST--
Test Imagick, separateImageChannel
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->separateimagechannel($channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
separateImageChannel($channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/117_Imagick_segmentImage_basic.phpt 0000664 0001750 0001750 00000001223 14775775503 021745 0 ustar jakub jakub --TEST--
Test Imagick, segmentImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->segmentImage($colorSpace, $clusterThreshold, $smoothThreshold);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
segmentImage($colorSpace, $clusterThreshold, $smoothThreshold) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/118_Imagick_setImageArtifact_basic.phpt 0000664 0001750 0001750 00000002146 14775775503 022562 0 ustar jakub jakub --TEST--
Test Imagick, setImageArtifact
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$src2 = new \Imagick();
$src2->newPseudoImage(480, 640, "magick:WIZARD");
$compose_args = $src2->getImageArtifact('compose:args');
var_dump($compose_args);
$src2->setImageVirtualPixelMethod(\Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
$src2->setImageArtifact('compose:args', "1,0,-0.5,0.5");
$src1->compositeImage($src2, Imagick::COMPOSITE_MATHEMATICS, 0, 0);
$compose_args = $src2->getImageArtifact('compose:args');
var_dump($compose_args);
$src2->setImageArtifact('compose:args', null);
$compose_args2 = $src2->getImageArtifact('compose:args');
var_dump($compose_args2);
$src1->setImageFormat('png');
$bytes = $src1->getImagesBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setImageArtifact() ;
echo "Ok";
?>
--EXPECTF--
NULL
string(12) "1,0,-0.5,0.5"
NULL
Ok imagick-3.8.0/tests/119_Imagick_sepiaToneImage_basic.phpt 0000664 0001750 0001750 00000000754 14775775503 022244 0 ustar jakub jakub --TEST--
Test Imagick, sepiaToneImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->sepiaToneImage($sepia);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
sepiaToneImage($sepia) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/120_Imagick_setCompressionQuality_basic.phpt 0000664 0001750 0001750 00000001602 14775775503 023721 0 ustar jakub jakub --TEST--
Test Imagick, setCompressionQuality
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick = new \Imagick();
$imagick->setCompressionQuality($quality);
$imagick->newPseudoImage(
$backgroundImagick->getImageWidth(),
$backgroundImagick->getImageHeight(),
'canvas:white'
);
$imagick->compositeImage(
$backgroundImagick,
\Imagick::COMPOSITE_ATOP,
0,
0
);
$imagick->setFormat("jpg");
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setCompressionQuality($quality) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/121_Imagick_setImageBias_basic.phpt 0000664 0001750 0001750 00000001547 14775775503 021701 0 ustar jakub jakub --TEST--
Test Imagick, setImageBias
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$xKernel = array(
-0.70, 0, 0.70,
-0.70, 0, 0.70,
-0.70, 0, 0.70
);
$imagick->setImageBias($bias * \Imagick::getQuantum());
$imagick->convolveImage($xKernel, \Imagick::CHANNEL_ALL);
$imagick->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setImageBias($bias) ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s Imagick::setImageBias() is deprecated in %s
Ok
imagick-3.8.0/tests/122_Imagick_setImageCompressionQuality_basic.phpt 0000664 0001750 0001750 00000001046 14775775503 024670 0 ustar jakub jakub --TEST--
Test Imagick, setImageCompressionQuality
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
//$imagick->setImageCompressionQuality($quality);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setImageCompressionQuality($quality) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/123_Imagick_setImageClipMask_basic.phpt 0000664 0001750 0001750 00000002132 14775775503 022517 0 ustar jakub jakub --TEST--
Test Imagick, setImageClipMask
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$width = $imagick->getImageWidth();
$height = $imagick->getImageHeight();
$clipMask = new \Imagick();
$clipMask->newPseudoImage(
$width,
$height,
"canvas:transparent"
);
$draw = new \ImagickDraw();
$draw->setFillColor('white');
$draw->circle(
$width / 2,
$height / 2,
($width / 2) + ($width / 4),
$height / 2
);
$clipMask->drawImage($draw);
$imagick->setImageClipMask($clipMask);
$imagick->negateImage(false);
$imagick->setFormat("png");
$bytes = $imagick->getImagesBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setImageClipMask() ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s Imagick::setImageClipMask() is deprecated in %s
Ok
imagick-3.8.0/tests/125_Imagick_setImageOrientation_basic.phpt 0000664 0001750 0001750 00000001143 14775775503 023312 0 ustar jakub jakub --TEST--
Test Imagick, setImageOrientation
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageOrientation($orientationType);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setImageOrientation($orientationType) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/126_Imagick_getImageChannelStats_basic.phpt 0000664 0001750 0001750 00000000451 14775775503 023374 0 ustar jakub jakub --TEST--
Test Imagick, getImageChannelStatistics
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$identifyInfo = $imagick->getImageChannelStatistics();
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/127_Imagick_progressMonitor_basic.phpt 0000664 0001750 0001750 00000002174 14775775503 022563 0 ustar jakub jakub --TEST--
Test Imagick, progressMonitor
--SKIPIF--
--FILE--
20) {
$status = "Processing cancelled";
return false;
}
$nowTime = time();
$debug .= "$x: nowTime $nowTime - startTime $startTime".PHP_EOL;
$x++;
if ($nowTime - $startTime > 5) {
$status = "Processing cancelled";
return false;
}
return true;
};
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$imagick->setProgressMonitor($callback);
try {
$imagick->charcoalImage($radius, $sigma);
$bytes = $imagick->getImageBlob();
echo "Progress monitor failed to interrupt.".PHP_EOL;
echo $debug;
}
catch(\Exception $e) {
echo $status.PHP_EOL;
}
?>
--EXPECTF--
Processing cancelled imagick-3.8.0/tests/130_Imagick_setOption_case1.phpt 0000664 0001750 0001750 00000001132 14775775503 021231 0 ustar jakub jakub --TEST--
Test Imagick, setOption
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('jpg');
$imagick->setOption('jpeg:extent', $extent);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
renderJPG($extent) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/131_Imagick_setOption_case2.phpt 0000664 0001750 0001750 00000001003 14775775503 021230 0 ustar jakub jakub --TEST--
Test Imagick, setOption
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('png');
$imagick->setOption('png:format', $format);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
renderPNG($format) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/132_Imagick_setOption_case3.phpt 0000664 0001750 0001750 00000001054 14775775503 021240 0 ustar jakub jakub --TEST--
Test Imagick, setOption
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('png');
$imagick->setOption('png:bit-depth', '16');
$imagick->setOption('png:color-type', 6);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
renderCustomBitDepthPNG() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/133_Imagick_setSamplingFactors_basic.phpt 0000664 0001750 0001750 00000001506 14775775503 023152 0 ustar jakub jakub --TEST--
Test Imagick, setSamplingFactors
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('jpg');
$imagick->setSamplingFactors(array('2x2', '1x1', '1x1'));
$compressed = $imagick->getImageBlob();
$reopen = new \Imagick();
$reopen->readImageBlob($compressed);
$reopen->resizeImage(
$reopen->getImageWidth() * 4,
$reopen->getImageHeight() * 4,
\Imagick::FILTER_POINT,
1
);
$bytes = $reopen->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setSamplingFactors() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/134_Imagick_shadowImage_basic.phpt 0000664 0001750 0001750 00000000717 14775775503 021576 0 ustar jakub jakub --TEST--
Test Imagick, shadowImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->shadowImage(0.4, 10, 50, 5);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
shadowImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/135_Imagick_sharpenImage_basic.phpt 0000664 0001750 0001750 00000001116 14775775503 021744 0 ustar jakub jakub --TEST--
Test Imagick, sharpenImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->sharpenimage($radius, $sigma, $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
sharpenImage($radius, $sigma, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/136_Imagick_shadeImage_basic.phpt 0000664 0001750 0001750 00000000711 14775775503 021371 0 ustar jakub jakub --TEST--
Test Imagick, shadeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->shadeImage(true, 45, 20);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
shadeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/137_Imagick_shearImage_basic.phpt 0000664 0001750 0001750 00000001077 14775775503 021416 0 ustar jakub jakub --TEST--
Test Imagick, shearImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->shearimage($color, $shearX, $shearY);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
shearImage($color, $shearX, $shearY) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/138_Imagick_shaveImage_basic.phpt 0000664 0001750 0001750 00000000704 14775775503 021417 0 ustar jakub jakub --TEST--
Test Imagick, shaveImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->shaveImage(100, 50);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
shaveImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/139_Imagick_sigmoidalContrastImage_basic.phpt 0000664 0001750 0001750 00000001422 14775775503 023776 0 ustar jakub jakub --TEST--
Test Imagick, sigmoidalContrastImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
//Need some stereo image to work with.
$imagick->sigmoidalcontrastimage(
$sharpening, //sharpen
$midpoint,
$sigmoidalContrast * \Imagick::getQuantum()
);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
sigmoidalContrastImage($sharpening, $midpoint, $sigmoidalContrast) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/141_Imagick_sketchImage_basic.phpt 0000664 0001750 0001750 00000001054 14775775503 021563 0 ustar jakub jakub --TEST--
Test Imagick, sketchImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->sketchimage($radius, $sigma, $angle);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
sketchImage($radius, $sigma, $angle) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/142_Imagick_solarizeImage_basic.phpt 0000664 0001750 0001750 00000001062 14775775503 022132 0 ustar jakub jakub --TEST--
Test Imagick, solarizeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->solarizeImage($solarizeThreshold * \Imagick::getQuantum());
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
solarizeImage($solarizeThreshold) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/143_Imagick_spreadImage_basic.phpt 0000664 0001750 0001750 00000000743 14775775503 021566 0 ustar jakub jakub --TEST--
Test Imagick, spreadImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->spreadImage($radius);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
spreadImage($radius) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/143_Imagick_spreadImageWithMethod_basic.phpt 0000664 0001750 0001750 00000001052 14775775503 023555 0 ustar jakub jakub --TEST--
Test Imagick, spreadImageWithMethod
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->spreadImageWithMethod($radius, Imagick::INTERPOLATE_BILINEAR);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
spreadImageWithMethod($radius) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/144_Imagick_spliceImage_basic.phpt 0000664 0001750 0001750 00000001133 14775775503 021562 0 ustar jakub jakub --TEST--
Test Imagick, spliceImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->spliceImage($width, $height, $startX, $startY);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
spliceImage($startX, $startY, $width, $height) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/145_imagickkernel_coverage.phpt 0000664 0001750 0001750 00000011516 14775775503 021242 0 ustar jakub jakub --TEST--
ImagickKernel::fromMatrix test
--SKIPIF--
--FILE--
scale(1, \Imagick::NORMALIZE_KERNEL_VALUE);
$kernel->addUnityKernel(0.50);
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$imagick->morphology(
\Imagick::MORPHOLOGY_CONVOLVE,
1,
$kernel
);
$tests = array();
$tests[] = array(
"Cannot create kernel, matrix is empty.",
array()
);
$tests[] = array(
"Values must be matrix, with the same number of columns in each row.",
array(0, 1, 1)
);
//Should fail, matrix needs to have same number columns in each row
$tests[] = array(
"Values must be matrix, with the same number of columns in each row.",
array(
array(1, 0, 1),
array(1, 0, 1),
array(1, 0),
)
);
//Should fail, value instead of second row
$tests[] = array(
"Values must be matrix, with the same number of columns in each row.",
array(
array(0, 1),
1
)
);
//Should fail, value instead of second row
$tests[] = array(
"Only numbers or false are valid values in a kernel matrix.",
array(
array(0, 1),
array(0, new StdClass),
)
);
$tests[] = array(
"For kernels with even numbered rows or columns, the origin position must be specified.",
array(
array(1, 0),
),
);
foreach ($tests as $test) {
list($expectedMessage, $testValue) = $test;
try {
$kernel = ImagickKernel::fromMatrix($testValue);
echo "Failed to throw exception".PHP_EOL;
}
catch(ImagickKernelException $e) {
if ($e->getMessage() != $expectedMessage) {
echo "Unexpected message ".$e->getMessage()." for test:".PHP_EOL;
var_dump($test);
}
}
}
try {
$kernel = ImagickKernel::fromBuiltin(\Imagick::KERNEL_DIAMOND, "CestNestPasUneKernel");
//echo "builtIn OK".PHP_EOL;
}
catch(Exception $e) {
echo "Unexpected exception: ".$e->getMessage().PHP_EOL;
}
//Test adding unity kernel works.
$matrix1 = array(
array(1, 1, 1),
array(0, 0, 0),
array(-1, -1, -1),
);
$kernel = ImagickKernel::fromMatrix($matrix1);
$kernel->addUnityKernel(0.5);
$matrix = $kernel->getMatrix();
if ($matrix[1][1] != 0.5) {
echo "center point should be 0.5 but is actually ".$matrix[1][1].PHP_EOL;
var_dump($matrix);
}
//echo "Adding unity kernel ok".PHP_EOL;
// Test adding kernel works and you can get the values back
$matrix1 = array(
array(1, 1),
array(0, 0),
);
$matrix2 = array(
array(0, 0),
array(1, 1),
);
$kernel1 = ImagickKernel::fromMatrix($matrix1, array(0, 0));
$kernel2 = ImagickKernel::fromMatrix($matrix2, array(0, 0));
$kernel1->addKernel($kernel2);
$kernelList = $kernel1->separate();
if (count($kernelList) != 2) {
echo "Incorrect number of matrixes returned.";
}
else {
if ($kernelList[0]->getMatrix() != $matrix1) {
echo "Matrix 1 does not match".PHP_EOL;
var_dump($kernelList[0]);
}
if ($kernelList[1]->getMatrix() != $matrix2) {
echo "Matrix 2 does not match".PHP_EOL;
var_dump($kernelList[1]);
}
}
//Test Scaling
$matrixIn = array(
array(-1, 0, -1),
array( 0, 8, 0),
array(-1, 0, -1),
);
$kernel = ImagickKernel::fromMatrix($matrixIn);
$kernel->scale(1, \Imagick::NORMALIZE_KERNEL_VALUE);
$matrixOut = $kernel->getMatrix();
if ($matrixOut[1][1] != 2) {
echo "Matrix was not normalised correctly.";
var_dump($matrixOut);
}
//Test single line kernel works
$matrixIn = array(
array(1, 0),
);
$kernel = ImagickKernel::fromMatrix($matrixIn, array(1, 0));
if ($kernel->getMatrix() != $matrixIn) {
echo "Values do not match for 'Test single line kernel works'".PHP_EOL;
}
//Test even sized kernel works
$matrixIn = array(
array(-1, 0),
array( 0, 1)
);
$kernel = ImagickKernel::fromMatrix($matrixIn, array(0, 1));
if ($kernel->getMatrix() != $matrixIn) {
echo "Values do not match for 'Test even sized kernel works'".PHP_EOL;
}
//Test 'wrong' order matrix is converted correctly.
$matrix = array(
array(0.0, 1.0),
array(0.5, false)
);
$outOfOrderMatrix = array();
$outOfOrderMatrix[1][1] = $matrix[1][1];
$outOfOrderMatrix[1][0] = $matrix[1][0];
$outOfOrderMatrix[0][1] = $matrix[0][1];
$outOfOrderMatrix[0][0] = $matrix[0][0];
$kernel = ImagickKernel::fromMatrix($outOfOrderMatrix, array(0, 0));
$kernelMatrix = $kernel->getMatrix();
if ($kernelMatrix !== $matrix) {
echo "Kernel generated from 'out of order' matrix is incorrect.".PHP_EOL;
var_dump($matrix);
echo "vs".PHP_EOL;
var_dump($kernelMatrix);
}
//Test Scaling, and with null origin
$matrixIn = array(
array(-1, 0, -1),
array( 0, 8, 0),
array(-1, 0, -1),
);
$kernel = ImagickKernel::fromMatrix($matrixIn, null); // <-- line under test
$kernel->scale(1, \Imagick::NORMALIZE_KERNEL_VALUE);
$matrixOut = $kernel->getMatrix();
if ($matrixOut[1][1] != 2) {
echo "Matrix was not normalised correctly.";
var_dump($matrixOut);
}
echo "Complete".PHP_EOL;
?>
--EXPECTF--
Complete
imagick-3.8.0/tests/149_Imagick_sparseColorImage.phpt 0000664 0001750 0001750 00000007720 14775775503 021453 0 ustar jakub jakub --TEST--
Test Imagick, sparseColorImage
--SKIPIF--
--FILE--
newImage($width, $height, "rgba(255, 255, 255, 1)");
$imagick->setImageFormat("png");
$barycentricPoints = array();
foreach ($colorPoints as $colorPoint) {
if ($absolute == true) {
$barycentricPoints[] = $colorPoint[0];
$barycentricPoints[] = $colorPoint[1];
}
else {
$barycentricPoints[] = $colorPoint[0] * $width;
$barycentricPoints[] = $colorPoint[1] * $height;
}
if (is_string($colorPoint[2])) {
$imagickPixel = new \ImagickPixel($colorPoint[2]);
}
else if ($colorPoint[2] instanceof \ImagickPixel) {
$imagickPixel = $colorPoint[2];
}
else{
$errorMessage = sprintf(
"Value %s is neither a string nor an ImagickPixel class. Cannot use as a color.",
$colorPoint[2]
);
throw new \InvalidArgumentException(
$errorMessage
);
}
$red = $imagickPixel->getColorValue(\Imagick::COLOR_RED);
$green = $imagickPixel->getColorValue(\Imagick::COLOR_GREEN);
$blue = $imagickPixel->getColorValue(\Imagick::COLOR_BLUE);
$alpha = $imagickPixel->getColorValue(\Imagick::COLOR_ALPHA);
$barycentricPoints[] = $red;
$barycentricPoints[] = $green;
$barycentricPoints[] = $blue;
$barycentricPoints[] = $alpha;
}
$imagick->sparseColorImage($sparseMethod, $barycentricPoints);
return $imagick;
}
function renderImageBarycentric() {
$points = array(
array(0, 0, 'skyblue'),
array(-1, 1, 'skyblue'),
array(1, 1, 'black'),
);
$imagick = createGradientImage(600, 200, $points, \Imagick::SPARSECOLORMETHOD_BARYCENTRIC);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok".PHP_EOL;
}
function renderImageVoronoi() {
$points = array(
array(0.30, 0.10, 'red'),
array(0.10, 0.80, 'blue'),
array(0.70, 0.60, 'lime'),
array(0.80, 0.20, 'yellow'),
);
$imagick = createGradientImage(500, 500, $points, \Imagick::SPARSECOLORMETHOD_VORONOI);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok".PHP_EOL;
}
function renderImageShepards() {
$points = array(
array(0.30, 0.10, 'red'),
array(0.10, 0.80, "RGBA(0, 255, 0, 0.5)"),
array(0.70, 0.60, "RGBA(0, 255, 0, 1)"),
array(0.80, 0.20, 'yellow'),
);
$imagick = createGradientImage(600, 600, $points, \Imagick::SPARSECOLORMETHOD_SPEPARDS);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok".PHP_EOL;
}
function renderImageBilinear() {
$points = array(
array(0.30, 0.10, 'red'),
array(0.10, 0.80, 'blue'),
array(0.70, 0.60, 'lime'),
array(0.80, 0.20, 'yellow'),
);
$imagick = createGradientImage(500, 500, $points, \Imagick::SPARSECOLORMETHOD_BILINEAR);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok".PHP_EOL;
}
try {
renderImageBilinear() ;
}
catch (\Exception $e) {
echo "renderImageBilinear failed ".$e->getMessage().PHP_EOL;
}
try {
renderImageShepards();
}
catch (\Exception $e) {
echo "renderImageShepards failed ".$e->getMessage().PHP_EOL;
}
try {
renderImageVoronoi();
}
catch (\Exception $e) {
echo "renderImageVoronoi failed ".$e->getMessage().PHP_EOL;
}
try {
renderImageBarycentric();
}
catch (\Exception $e) {
echo "renderImageBarycentric failed ".$e->getMessage().PHP_EOL;
}
?>
--EXPECTF--
Ok
Ok
Ok
Ok imagick-3.8.0/tests/150_Imagick_setregistry.phpt 0000664 0001750 0001750 00000003030 14775775503 020556 0 ustar jakub jakub --TEST--
Test Imagick, setRegistry and getRegistry
--SKIPIF--
--FILE--
getMessage() . "\n";
}
}
?>
--EXPECTF--
Temporary-path was empty at start.
Temporary path was set correctly.
Temporary path was listed correctly.
This is fine.
imagick-3.8.0/tests/151_Imagick_subImageMatch_basic.phpt 0000664 0001750 0001750 00000003121 14775775503 022046 0 ustar jakub jakub --TEST--
Test Imagick, subImageMatch
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->adaptiveResizeImage(100, 100, true);
//This makes the test fall over on some versions of ImageMagick
//$imagick->setImageAlphaChannel(\Imagick::ALPHACHANNEL_DEACTIVATE);
$imagick2 = clone $imagick;
$imagick2->cropimage(25, 25, 50, 50);
$imagick2->setImageFormat('png');
$imagick2->setImagePage(25, 25, 0, 0);
$imagick2->vignetteimage(0.25, 0.75, 3, 3);
$similarity = 'not set';
$bestMatch = 'not st';
$comparison = $imagick->subImageMatch($imagick2, $bestMatch, $similarity);
$comparison->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
$version = Imagick::getVersion();
if ($version['versionNumber'] >= 0x700) {
$expectedValue = 0.7642;
}
else {
$expectedValue = 0.5585;
}
// This doesn't work reliably - the values are not comparable across versions
// if (abs($expectedValue - $similarity) <= 0.005) {
// echo "Similarity in range\n";
// }
// else {
// echo "Similarity is out of range.\n";
// var_dump($similarity);
// }
ksort($bestMatch);
foreach ($bestMatch as $key => $value) {
echo "$key : $value\n";
}
}
subImageMatch() ;
echo "Ok";
?>
--EXPECTF--
height : 25
width : 25
x : 50
y : 50
Ok imagick-3.8.0/tests/152_Imagick_swirlImage_basic.phpt 0000664 0001750 0001750 00000000735 14775775503 021451 0 ustar jakub jakub --TEST--
Test Imagick, swirlImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->swirlImage($swirl);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
swirlImage($swirl) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/152_Imagick_swirlImageWithMethod_basic.phpt 0000664 0001750 0001750 00000001044 14775775503 023440 0 ustar jakub jakub --TEST--
Test Imagick, swirlImageWithMethod
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->swirlImageWithMethod($swirl, Imagick::INTERPOLATE_BILINEAR);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
swirlImageWithMethod($swirl) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/153_Imagick_statisticImage_basic.phpt 0000664 0001750 0001750 00000001305 14775775503 022313 0 ustar jakub jakub --TEST--
Test Imagick, statisticImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->statisticImage(
$statisticType,
$w20,
$h20,
$channel
);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
statisticImage($statisticType, $w20, $h20, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/154_Imagick_textureImage_basic.phpt 0000664 0001750 0001750 00000001164 14775775503 022010 0 ustar jakub jakub --TEST--
Test Imagick, textureImage
--SKIPIF--
--FILE--
newImage(640, 480, new \ImagickPixel('pink'));
$image->setImageFormat("jpg");
$texture = new \Imagick();
$texture->newPseudoImage(640, 480, "magick:logo");
$texture->scaleimage($image->getimagewidth() / 4, $image->getimageheight() / 4);
$image = $image->textureImage($texture);
$bytes = $image;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
textureImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/155_Imagick_thresholdImage_basic.phpt 0000664 0001750 0001750 00000001251 14775775503 022302 0 ustar jakub jakub --TEST--
Test Imagick, thresholdImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->thresholdimage($threshold * \Imagick::getQuantum(), $channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
thresholdimage($threshold, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/156_Imagick_tintImage_basic.phpt 0000664 0001750 0001750 00000001231 14775775503 021263 0 ustar jakub jakub --TEST--
Test Imagick, tintImage
--SKIPIF--
--FILE--
newPseudoImage(400, 400, 'gradient:black-white');
$tint = new \ImagickPixel("rgb($r, $g, $b)");
$opacity = new \ImagickPixel("rgb(128, 128, 128, $a)");
$imagick->tintImage($tint, $opacity);
$imagick->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
tintImage($r, $g, $b, $a) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/157_Imagick_thumbnailImage_basic.phpt 0000664 0001750 0001750 00000001026 14775775503 022273 0 ustar jakub jakub --TEST--
Test Imagick, thumbnailImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setbackgroundcolor('rgb(64, 64, 64)');
$imagick->thumbnailImage(100, 100, true, true);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
thumbnailImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/158_Imagick_transposeImage_basic.phpt 0000664 0001750 0001750 00000000715 14775775503 022333 0 ustar jakub jakub --TEST--
Test Imagick, transposeImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->transposeImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
transposeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/159_Imagick_transformImage_basic.phpt 0000664 0001750 0001750 00000001143 14775775503 022325 0 ustar jakub jakub --TEST--
Test Imagick, transformImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$newImage = $imagick->transformImage("400x600", "200x300");
$bytes = $newImage->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
transformimage() ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s Imagick::transformImage() is deprecated in %s
Ok
imagick-3.8.0/tests/160_Imagick_transparentPaintImage_basic.phpt 0000664 0001750 0001750 00000001442 14775775503 023641 0 ustar jakub jakub --TEST--
Test Imagick, transparentPaintImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
//Need to be in a format that supports transparency
$imagick->setimageformat('png');
$imagick->transparentPaintImage(
$color, $alpha, $fuzz * \Imagick::getQuantum(), false
);
//Not required, but helps tidy up left over pixels
$imagick->despeckleimage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
transparentPaintImage($color, $alpha, $fuzz) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/161_Imagick_transformImageColorspace_basic.phpt 0000664 0001750 0001750 00000001216 14775775503 024332 0 ustar jakub jakub --TEST--
Test Imagick, transformImageColorspace
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->transformimagecolorspace($colorSpace);
$imagick->separateImageChannel($channel);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
transformImageColorspace($colorSpace, $channel) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/162_Imagick_transverseImage_basic.phpt 0000664 0001750 0001750 00000000721 14775775503 022501 0 ustar jakub jakub --TEST--
Test Imagick, transverseImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->transverseImage();
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
transverseImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/163_Imagick_uniqueImageColors_basic.phpt 0000664 0001750 0001750 00000001252 14775775503 022776 0 ustar jakub jakub --TEST--
Test Imagick, uniqueImageColors
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
//Reduce the image to 256 colours nicely.
$imagick->quantizeImage(256, \Imagick::COLORSPACE_YIQ, 0, false, false);
$imagick->uniqueImageColors();
$imagick->scaleimage($imagick->getImageWidth(), $imagick->getImageHeight() * 20);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
uniqueImageColors() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/164_Imagick_trimImage_basic.phpt 0000664 0001750 0001750 00000001115 14775775503 021260 0 ustar jakub jakub --TEST--
Test Imagick, trimImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->borderImage($color, 10, 10);
$imagick->trimImage($fuzz * \Imagick::getQuantum());
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
trimImage($color, $fuzz) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/165_Imagick_unsharpMaskImage_basic.phpt 0000664 0001750 0001750 00000001270 14775775503 022604 0 ustar jakub jakub --TEST--
Test Imagick, unsharpMaskImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->unsharpMaskImage($radius, $sigma, $amount, $unsharpThreshold);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
unsharpMaskImage($radius, $sigma, $amount, $unsharpThreshold) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/166_Imagick_waveImage_basic.phpt 0000664 0001750 0001750 00000001020 14775775503 021244 0 ustar jakub jakub --TEST--
Test Imagick, waveImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->waveImage($amplitude, $length);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
waveImage($amplitude, $length) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/166_Imagick_waveImageWithMethod_basic.phpt 0000664 0001750 0001750 00000001127 14775775503 023251 0 ustar jakub jakub --TEST--
Test Imagick, waveImageWithMethod
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->waveImageWithMethod($amplitude, $length, Imagick::INTERPOLATE_BILINEAR);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
waveImageWithMethod($amplitude, $length) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/167_Imagick_vignetteImage_basic.phpt 0000664 0001750 0001750 00000001137 14775775503 022141 0 ustar jakub jakub --TEST--
Test Imagick, vignetteImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->vignetteImage($blackPoint, $whitePoint, $x, $y);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
vignetteImage($blackPoint, $whitePoint, $x, $y) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/168_Imagick_whiteThresholdImage_basic.phpt 0000664 0001750 0001750 00000001055 14775775503 023311 0 ustar jakub jakub --TEST--
Test Imagick, whiteThresholdImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
//TODO needs a control
$imagick->whiteThresholdImage($color);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
whiteThresholdImage($color) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/169_ImagickPixel_construct_basic.phpt 0000664 0001750 0001750 00000003522 14775775503 022401 0 ustar jakub jakub --TEST--
Test ImagickPixel, construct
--SKIPIF--
--FILE--
setstrokewidth(1.0);
$draw->setStrokeColor($black);
$draw->setFillColor($color);
$offsetX = ($count % $columns) * 50 + 5;
$offsetY = intval($count / $columns) * 50 + 5;
$draw->rectangle(0 + $offsetX, 0 + $offsetY, 40 + $offsetX, 40 + $offsetY);
$count++;
}
$image = new \Imagick();
$image->newImage(350, 350, "blue");
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
construct() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/170_ImagickPixel_setColor_basic.phpt 0000664 0001750 0001750 00000001371 14775775503 022137 0 ustar jakub jakub --TEST--
Test ImagickPixel, setColor
--SKIPIF--
--FILE--
setColor('rgba(100%, 75%, 0%, 1.0)');
$draw->setstrokewidth(3.0);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->rectangle(200, 200, 300, 300);
$image = new \Imagick();
$image->newImage(500, 500, "SteelBlue2");
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setColor() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/171_ImagickPixel_setColorValue_basic.phpt 0000664 0001750 0001750 00000001317 14775775503 023135 0 ustar jakub jakub --TEST--
Test ImagickPixel, setColorValue
--SKIPIF--
--FILE--
setcolorValue(\Imagick::COLOR_RED, 128);
$draw->setstrokewidth(1.0);
$draw->setStrokeColor($color);
$draw->setFillColor($color);
$draw->rectangle(200, 200, 300, 300);
$image->newImage(500, 500, "SteelBlue2");
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setColorValue() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/172_ImagickPixel_setColorValueQuantum_basic.phpt 0000664 0001750 0001750 00000001516 14775775503 024512 0 ustar jakub jakub --TEST--
Test ImagickPixel, setColorValueQuantum
--SKIPIF--
--FILE--
getQuantumRange();
$draw = new \ImagickDraw();
$color = new \ImagickPixel('blue');
$color->setcolorValueQuantum(\Imagick::COLOR_RED, (int)(128 * $quantumRange['quantumRangeLong'] / 256));
$draw->setstrokewidth(1.0);
$draw->setStrokeColor($color);
$draw->setFillColor($color);
$draw->rectangle(200, 200, 300, 300);
$image->newImage(500, 500, "SteelBlue2");
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setColorValueQuantum() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/173_ImagickDraw_bezier_basic.phpt 0000664 0001750 0001750 00000004353 14775775503 021447 0 ustar jakub jakub --TEST--
Test ImagickDraw, bezier
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$smoothPointsSet = array(
array(
array('x' => 10.0 * 5, 'y' => 10.0 * 5),
array('x' => 30.0 * 5, 'y' => 90.0 * 5),
array('x' => 25.0 * 5, 'y' => 10.0 * 5),
array('x' => 50.0 * 5, 'y' => 50.0 * 5),
),
array(
array('x' => 50.0 * 5, 'y' => 50.0 * 5),
array('x' => 75.0 * 5, 'y' => 90.0 * 5),
array('x' => 70.0 * 5, 'y' => 10.0 * 5),
array('x' => 90.0 * 5, 'y' => 40.0 * 5),
),
);
foreach ($smoothPointsSet as $points) {
$draw->bezier($points);
}
$disjointPoints = array(
array(
array('x' => 10 * 5, 'y' => 10 * 5),
array('x' => 30 * 5, 'y' => 90 * 5),
array('x' => 25 * 5, 'y' => 10 * 5),
array('x' => 50 * 5, 'y' => 50 * 5),
),
array(
array('x' => 50 * 5, 'y' => 50 * 5),
array('x' => 80 * 5, 'y' => 50 * 5),
array('x' => 70 * 5, 'y' => 10 * 5),
array('x' => 90 * 5, 'y' => 40 * 5),
)
);
$draw->translate(0, 200);
foreach ($disjointPoints as $points) {
$draw->bezier($points);
}
//Create an image object which the draw commands can be rendered into
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
//Render the draw commands in the ImagickDraw object
//into the image.
$imagick->drawImage($draw);
//Send the image to the browser
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
bezier($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/174_ImagickDraw_affine_basic.phpt 0000664 0001750 0001750 00000004350 14775775503 021415 0 ustar jakub jakub --TEST--
Test ImagickDraw, affine
--SKIPIF--
--FILE--
setStrokeWidth(1);
$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$PI = 3.141592653589794;
$angle = 60 * $PI / 360;
//Scale the drawing co-ordinates.
$affineScale = array("sx" => 1.75, "sy" => 1.75, "rx" => 0, "ry" => 0, "tx" => 0, "ty" => 0);
//Shear the drawing co-ordinates.
$affineShear = array("sx" => 1, "sy" => 1, "rx" => sin($angle), "ry" => -sin($angle), "tx" => 0, "ty" => 0);
//Rotate the drawing co-ordinates. The shear affine matrix
//produces incorrectly scaled drawings.
$affineRotate = array("sx" => cos($angle), "sy" => cos($angle), "rx" => sin($angle), "ry" => -sin($angle), "tx" => 0, "ty" => 0,);
//Translate (offset) the drawing
$affineTranslate = array("sx" => 1, "sy" => 1, "rx" => 0, "ry" => 0, "tx" => 30, "ty" => 30);
//The identiy affine matrix
$affineIdentity = array("sx" => 1, "sy" => 1, "rx" => 0, "ry" => 0, "tx" => 0, "ty" => 0);
$examples = array($affineScale, $affineShear, $affineRotate, $affineTranslate, $affineIdentity,);
$count = 0;
foreach ($examples as $example) {
$draw->push();
$draw->translate(($count % 2) * 250, intval($count / 2) * 250);
$draw->translate(100, 100);
$draw->affine($example);
$draw->rectangle(-50, -50, 50, 50);
$draw->pop();
$count++;
}
//Create an image object which the draw commands can be rendered into
$image = new \Imagick();
$image->newImage(500, 750, $backgroundColor);
$image->setImageFormat("png");
//Render the draw commands in the ImagickDraw object
//into the image.
$image->drawImage($draw);
//Send the image to the browser
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
affine($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/175_ImagickDraw_arc_basic.phpt 0000664 0001750 0001750 00000002412 14775775503 020730 0 ustar jakub jakub --TEST--
Test ImagickDraw, arc
--SKIPIF--
--FILE--
setStrokeWidth(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->arc($startX, $startY, $endX, $endY, $startAngle, $endAngle);
//Create an image object which the draw commands can be rendered into
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
//Render the draw commands in the ImagickDraw object
//into the image.
$image->drawImage($draw);
//Send the image to the browser
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
arc($strokeColor, $fillColor, $backgroundColor, $startX, $startY, $endX, $endY, $startAngle, $endAngle) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/176_ImagickDraw_ellipse_basic.phpt 0000664 0001750 0001750 00000002215 14775775503 021622 0 ustar jakub jakub --TEST--
Test ImagickDraw, ellipse
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->ellipse(125, 70, 100, 50, 0, 360);
$draw->ellipse(350, 70, 100, 50, 0, 315);
$draw->push();
$draw->translate(125, 250);
$draw->rotate(30);
$draw->ellipse(0, 0, 100, 50, 0, 360);
$draw->pop();
$draw->push();
$draw->translate(350, 250);
$draw->rotate(30);
$draw->ellipse(0, 0, 100, 50, 0, 315);
$draw->pop();
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
ellipse($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/177_ImagickDraw_composite_basic.phpt 0000664 0001750 0001750 00000003305 14775775503 022171 0 ustar jakub jakub --TEST--
Test ImagickDraw, composite
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setFillOpacity(1);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(140);
$draw->rectangle(0, 0, 1000, 300);
$draw->setFillColor('white');
$draw->setfillopacity(1);
$draw->annotation(50, 180, "Lorem Ipsum!");
// $imagick = new \Imagick(realpath("../images/TestImage.jpg"));
// $draw->composite(\Imagick::COMPOSITE_MULTIPLY, -500, -200, 2000, 600, $imagick);
//$imagick->compositeImage($draw, 0, 0, 1000, 500);
//$draw->composite(Imagick::COMPOSITE_COLORBURN, -500, -200, 2000, 600, $imagick);
//Create an image object which the draw commands can be rendered into
$imagick = new \Imagick();
$imagick->newImage(1000, 302, $backgroundColor);
$imagick->setImageFormat("png");
//Render the draw commands in the ImagickDraw object
//into the image.
$imagick->drawImage($draw);
//Send the image to the browser
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
composite($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/178_ImagickDraw_circle_basic.phpt 0000664 0001750 0001750 00000002206 14775775503 021430 0 ustar jakub jakub --TEST--
Test ImagickDraw, circle
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->circle($originX, $originY, $endX, $endY);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
circle($strokeColor, $fillColor, $backgroundColor, $originX, $originY, $endX, $endY) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/179_ImagickDraw_line_basic.phpt 0000664 0001750 0001750 00000001540 14775775503 021117 0 ustar jakub jakub --TEST--
Test ImagickDraw, line
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->line(125, 70, 100, 50);
$draw->line(350, 170, 100, 150);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
line($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/180_ImagickDraw_matte_basic.phpt 0000664 0001750 0001750 00000002014 14775775503 021267 0 ustar jakub jakub --TEST--
Test ImagickDraw, matte
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->matte(120, 120, $paintType);
$draw->rectangle(100, 100, 300, 200);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
matte($strokeColor, $fillColor, $backgroundColor, $paintType) ;
echo "Ok";
?>
--EXPECTF--
Deprecated: %s ImagickDraw::matte() is deprecated in %s
Ok
imagick-3.8.0/tests/181_ImagickDraw_pathStart_basic.phpt 0000664 0001750 0001750 00000002766 14775775503 022146 0 ustar jakub jakub --TEST--
Test ImagickDraw, pathStart
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->pathStart();
$draw->pathMoveToAbsolute(50, 50);
$draw->pathLineToAbsolute(100, 50);
$draw->pathLineToRelative(0, 50);
$draw->pathLineToHorizontalRelative(-50);
$draw->pathFinish();
$draw->pathStart();
$draw->pathMoveToAbsolute(50, 50);
$draw->pathMoveToRelative(300, 0);
$draw->pathLineToRelative(50, 0);
$draw->pathLineToVerticalRelative(50);
$draw->pathLineToHorizontalAbsolute(350);
$draw->pathclose();
$draw->pathFinish();
$draw->pathStart();
$draw->pathMoveToAbsolute(50, 300);
$draw->pathCurveToAbsolute(50, 300, 100, 200, 300, 300);
$draw->pathLineToVerticalAbsolute(350);
$draw->pathFinish();
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
pathStart($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/182_ImagickDraw_pathCurveToQuadraticBezierAbsolute_basic.phpt 0000664 0001750 0001750 00000003576 14775775503 027137 0 ustar jakub jakub --TEST--
Test ImagickDraw, pathCurveToQuadraticBezierAbsolute
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->pathStart();
$draw->pathMoveToAbsolute(50,250);
// This specifies a quadratic bezier curve with the current position as the start
// point, the control point is the first two params, and the end point is the last two params.
$draw->pathCurveToQuadraticBezierAbsolute(
150,50,
250,250
);
// This specifies a quadratic bezier curve with the current position as the start
// point, the control point is mirrored from the previous curves control point
// and the end point is defined by the x, y values.
$draw->pathCurveToQuadraticBezierSmoothAbsolute(
450,250
);
// This specifies a quadratic bezier curve with the current position as the start
// point, the control point is mirrored from the previous curves control point
// and the end point is defined relative from the current position by the x, y values.
$draw->pathCurveToQuadraticBezierSmoothRelative(
200,-100
);
$draw->pathFinish();
$imagick = new \Imagick();
$imagick->newImage(700, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
pathCurveToQuadraticBezierAbsolute($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/183_ImagickDraw_pathCurveToQuadraticBezierAbsolute_basic.phpt 0000664 0001750 0001750 00000003576 14775775503 027140 0 ustar jakub jakub --TEST--
Test ImagickDraw, pathCurveToQuadraticBezierAbsolute
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->pathStart();
$draw->pathMoveToAbsolute(50,250);
// This specifies a quadratic bezier curve with the current position as the start
// point, the control point is the first two params, and the end point is the last two params.
$draw->pathCurveToQuadraticBezierAbsolute(
150,50,
250,250
);
// This specifies a quadratic bezier curve with the current position as the start
// point, the control point is mirrored from the previous curves control point
// and the end point is defined by the x, y values.
$draw->pathCurveToQuadraticBezierSmoothAbsolute(
450,250
);
// This specifies a quadratic bezier curve with the current position as the start
// point, the control point is mirrored from the previous curves control point
// and the end point is defined relative from the current position by the x, y values.
$draw->pathCurveToQuadraticBezierSmoothRelative(
200,-100
);
$draw->pathFinish();
$imagick = new \Imagick();
$imagick->newImage(700, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
pathCurveToQuadraticBezierAbsolute($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/184_ImagickDraw_polyline_basic.phpt 0000664 0001750 0001750 00000002013 14775775503 022013 0 ustar jakub jakub --TEST--
Test ImagickDraw, polyline
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(5);
$points = array(
array('x' => 40 * 5, 'y' => 10 * 5),
array('x' => 20 * 5, 'y' => 20 * 5),
array('x' => 70 * 5, 'y' => 50 * 5),
array('x' => 60 * 5, 'y' => 15 * 5)
);
$draw->polyline($points);
$image = new \Imagick();
$image->newImage(500, 300, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
polyline($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/185_ImagickDraw_point_basic.phpt 0000664 0001750 0001750 00000001370 14775775503 021317 0 ustar jakub jakub --TEST--
Test ImagickDraw, point
--SKIPIF--
--FILE--
setFillColor($fillColor);
for ($x = 0; $x < 10000; $x++) {
$draw->point(rand(0, 500), rand(0, 500));
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
point($fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/186_ImagickDraw_polygon_basic.phpt 0000664 0001750 0001750 00000002011 14775775503 021647 0 ustar jakub jakub --TEST--
Test ImagickDraw, polygon
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setStrokeWidth(4);
$draw->setFillColor($fillColor);
$points = array(
array('x' => 40 * 5, 'y' => 10 * 5),
array('x' => 20 * 5, 'y' => 20 * 5),
array('x' => 70 * 5, 'y' => 50 * 5),
array('x' => 60 * 5, 'y' => 15 * 5),
);
$draw->polygon($points);
$image = new \Imagick();
$image->newImage(500, 300, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
polygon($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/187_ImagickDraw_push_basic.phpt 0000664 0001750 0001750 00000002045 14775775503 021147 0 ustar jakub jakub --TEST--
Test ImagickDraw, push
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillModifiedColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->push();
$draw->translate(50, 50);
$draw->rectangle(200, 200, 300, 300);
$draw->pop();
$draw->setFillColor($fillColor);
$draw->rectangle(200, 200, 300, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
push($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/188_ImagickDraw_pushPattern_basic.phpt 0000664 0001750 0001750 00000002753 14775775503 022514 0 ustar jakub jakub --TEST--
Test ImagickDraw, pushPattern
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->pushPattern("MyFirstPattern", 0, 0, 50, 50);
for ($x = 0; $x < 50; $x += 10) {
for ($y = 0; $y < 50; $y += 5) {
$positionX = $x + (($y / 5) % 5);
$draw->rectangle($positionX, $y, $positionX + 5, $y + 5);
}
}
$draw->popPattern();
$draw->setFillOpacity(0);
$draw->rectangle(100, 100, 400, 400);
$draw->setFillOpacity(1);
$draw->setFillOpacity(1);
$draw->push();
$draw->setFillPatternURL('#MyFirstPattern');
$draw->setFillColor('yellow');
$draw->rectangle(100, 100, 400, 400);
$draw->pop();
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
pushPattern($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/189_ImagickDraw_setClipPath_basic.phpt 0000664 0001750 0001750 00000002317 14775775503 022414 0 ustar jakub jakub --TEST--
Test ImagickDraw, setClipPath
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$clipPathName = 'testClipPath';
$draw->pushClipPath($clipPathName);
$draw->rectangle(0, 0, 250, 250);
$draw->popClipPath();
$draw->setClipPath($clipPathName);
$draw->rectangle(100, 100, 400, 400);
$storedPathName = $draw->getClipPath();
if (strcmp($storedPathName, $clipPathName) != 0) {
echo "Error retrieving clipPath: $storedPathName != $clipPathName\n";
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setClipPath($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/190_ImagickDraw_popDefs_basic.phpt 0000664 0001750 0001750 00000001743 14775775503 021566 0 ustar jakub jakub --TEST--
Test ImagickDraw, popDefs
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setstrokeOpacity(1);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->pushDefs();
$draw->setStrokeColor('white');
$draw->rectangle(50, 50, 200, 200);
$draw->popDefs();
$draw->rectangle(300, 50, 450, 200);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
popDefs($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/191_ImagickDraw_push_basic.phpt 0000664 0001750 0001750 00000002045 14775775503 021142 0 ustar jakub jakub --TEST--
Test ImagickDraw, push
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillModifiedColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->push();
$draw->translate(50, 50);
$draw->rectangle(200, 200, 300, 300);
$draw->pop();
$draw->setFillColor($fillColor);
$draw->rectangle(200, 200, 300, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
push($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/192_ImagickDraw_setClipPath_basic.phpt 0000664 0001750 0001750 00000002016 14775775503 022402 0 ustar jakub jakub --TEST--
Test ImagickDraw, setClipPath
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$clipPathName = 'testClipPath';
$draw->pushClipPath($clipPathName);
$draw->rectangle(0, 0, 250, 250);
$draw->popClipPath();
$draw->setClipPath($clipPathName);
$draw->rectangle(100, 100, 400, 400);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setClipPath($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/193_ImagickDraw_pushPattern_basic.phpt 0000664 0001750 0001750 00000002753 14775775503 022510 0 ustar jakub jakub --TEST--
Test ImagickDraw, pushPattern
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->pushPattern("MyFirstPattern", 0, 0, 50, 50);
for ($x = 0; $x < 50; $x += 10) {
for ($y = 0; $y < 50; $y += 5) {
$positionX = $x + (($y / 5) % 5);
$draw->rectangle($positionX, $y, $positionX + 5, $y + 5);
}
}
$draw->popPattern();
$draw->setFillOpacity(0);
$draw->rectangle(100, 100, 400, 400);
$draw->setFillOpacity(1);
$draw->setFillOpacity(1);
$draw->push();
$draw->setFillPatternURL('#MyFirstPattern');
$draw->setFillColor('yellow');
$draw->rectangle(100, 100, 400, 400);
$draw->pop();
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
pushPattern($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/194_ImagickDraw_rectangle_basic.phpt 0000664 0001750 0001750 00000001667 14775775503 022143 0 ustar jakub jakub --TEST--
Test ImagickDraw, rectangle
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$draw->rectangle(200, 200, 300, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
rectangle($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/195_ImagickDraw_rotate_basic.phpt 0000664 0001750 0001750 00000001731 14775775503 021466 0 ustar jakub jakub --TEST--
Test ImagickDraw, rotate
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setStrokeOpacity(1);
$draw->setFillColor($fillColor);
$draw->rectangle(200, 200, 300, 300);
$draw->setFillColor($fillModifiedColor);
$draw->rotate(15);
$draw->rectangle(200, 200, 300, 300);
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
rotate($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/196_ImagickDraw_scale_basic.phpt 0000664 0001750 0001750 00000001732 14775775503 021261 0 ustar jakub jakub --TEST--
Test ImagickDraw, scale
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setStrokeWidth(4);
$draw->setFillColor($fillColor);
$draw->rectangle(200, 200, 300, 300);
$draw->setFillColor($fillModifiedColor);
$draw->scale(1.4, 1.4);
$draw->rectangle(200, 200, 300, 300);
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
scale($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/197_ImagickDraw_roundRectangle_basic.phpt 0000664 0001750 0001750 00000002076 14775775503 023151 0 ustar jakub jakub --TEST--
Test ImagickDraw, roundRectangle
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$draw->roundRectangle($startX, $startY, $endX, $endY, $roundX, $roundY);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
roundRectangle($strokeColor, $fillColor, $backgroundColor, $startX, $startY, $endX, $endY, $roundX, $roundY) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/198_ImagickDraw_setClipPath_basic.phpt 0000664 0001750 0001750 00000002016 14775775503 022410 0 ustar jakub jakub --TEST--
Test ImagickDraw, setClipPath
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$clipPathName = 'testClipPath';
$draw->pushClipPath($clipPathName);
$draw->rectangle(0, 0, 250, 250);
$draw->popClipPath();
$draw->setClipPath($clipPathName);
$draw->rectangle(100, 100, 400, 400);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setClipPath($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/199_ImagickDraw_setClipRule_basic.phpt 0000664 0001750 0001750 00000002553 14775775503 022432 0 ustar jakub jakub --TEST--
Test ImagickDraw, setClipRule
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
//\Imagick::FILLRULE_EVENODD
//\Imagick::FILLRULE_NONZERO
$clipPathName = 'testClipPath';
$draw->pushClipPath($clipPathName);
$draw->setClipRule(\Imagick::FILLRULE_EVENODD);
$draw->rectangle(0, 0, 300, 500);
$draw->rectangle(200, 0, 500, 500);
$draw->popClipPath();
$draw->setClipPath($clipPathName);
$draw->rectangle(200, 200, 300, 300);
$clipRule = $draw->getClipRule();
if ($clipRule != \Imagick::FILLRULE_EVENODD) {
echo "Failed to get correct clipRule $clipRule != \Imagick::FILLRULE_EVENODD \n";
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setClipRule($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/200_ImagickDraw_setClipUnits_basic.phpt 0000664 0001750 0001750 00000002222 14775775503 022575 0 ustar jakub jakub --TEST--
Test ImagickDraw, setClipUnits
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$clipPathName = 'testClipPath';
$draw->setClipUnits(\Imagick::RESOLUTION_PIXELSPERINCH);
$draw->pushClipPath($clipPathName);
$draw->rectangle(0, 0, 250, 250);
$draw->popClipPath();
$draw->setClipPath($clipPathName);
//RESOLUTION_PIXELSPERINCH
//RESOLUTION_PIXELSPERCENTIMETER
$draw->rectangle(200, 200, 300, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setClipUnits($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/201_ImagickDraw_setFillAlpha_basic.phpt 0000664 0001750 0001750 00000001645 14775775503 022530 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFillAlpha
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$draw->rectangle(100, 200, 200, 300);
@$draw->setFillAlpha(0.4);
$draw->rectangle(300, 200, 400, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFillAlpha($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/202_ImagickDraw_setFillColor_basic.phpt 0000664 0001750 0001750 00000001652 14775775503 022560 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFillColor
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeWidth(1.5);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->rectangle(50, 50, 150, 150);
$draw->setFillColor("rgb(200, 32, 32)");
$draw->rectangle(200, 50, 300, 150);
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFillColor($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/203_ImagickDraw_setFillRule_basic.phpt 0000664 0001750 0001750 00000003262 14775775503 022411 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFillRule
--SKIPIF--
--FILE--
setStrokeWidth(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$fillRules = array(\Imagick::FILLRULE_NONZERO, \Imagick::FILLRULE_EVENODD);
$points = 11;
$size = 150;
$draw->translate(175, 160);
for ($x = 0; $x < 2; $x++) {
$draw->setFillRule($fillRules[$x]);
$draw->pathStart();
for ($n = 0; $n < $points * 2; $n++) {
if ($n >= $points) {
$angle = fmod($n * 360 * 4 / $points, 360) * pi() / 180;
}
else {
$angle = fmod($n * 360 * 3 / $points, 360) * pi() / 180;
}
$positionX = $size * sin($angle);
$positionY = $size * cos($angle);
if ($n == 0) {
$draw->pathMoveToAbsolute($positionX, $positionY);
}
else {
$draw->pathLineToAbsolute($positionX, $positionY);
}
}
$draw->pathClose();
$draw->pathFinish();
$draw->translate(325, 0);
}
$image = new \Imagick();
$image->newImage(700, 320, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFillRule($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/204_ImagickDraw_setFillOpacity_basic.phpt 0000664 0001750 0001750 00000001656 14775775503 023120 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFillOpacity
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeOpacity(1);
$draw->setStrokeWidth(2);
$draw->rectangle(100, 200, 200, 300);
$draw->setFillOpacity(0.4);
$draw->rectangle(300, 200, 400, 300);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFillOpacity($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/206_ImagickDraw_setFontSize_basic.phpt 0000664 0001750 0001750 00000002142 14775775503 022433 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFontSize
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$sizes = array(24, 36, 48, 60, 72);
foreach ($sizes as $size) {
$draw->setFontSize($size);
$draw->annotation(50, ($size * $size / 16), "Lorem Ipsum!");
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFontSize($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/207_ImagickDraw_setFontFamily_basic.phpt 0000664 0001750 0001750 00000002634 14775775503 022751 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFontFamily
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
//TODO - actually use setFontFamily
$draw->setStrokeWidth(2);
$draw->setFontSize(24);
$draw->annotation(50, 50, "Lorem Ipsum!");
$draw->setFontSize(36);
$draw->annotation(50, 100, "Lorem Ipsum!");
$draw->setFontSize(48);
$draw->annotation(50, 150, "Lorem Ipsum!");
$draw->setFontSize(60);
$draw->annotation(50, 200, "Lorem Ipsum!");
$draw->setFontSize(72);
$draw->annotation(50, 250, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFontFamily($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/208_ImagickDraw_setFontStretch_basic.phpt 0000664 0001750 0001750 00000002616 14775775503 023145 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFontStretch
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(36);
$fontStretchTypes = array(\Imagick::STRETCH_ULTRACONDENSED, \Imagick::STRETCH_CONDENSED, \Imagick::STRETCH_SEMICONDENSED, \Imagick::STRETCH_SEMIEXPANDED, \Imagick::STRETCH_EXPANDED, \Imagick::STRETCH_EXTRAEXPANDED, \Imagick::STRETCH_ULTRAEXPANDED, \Imagick::STRETCH_ANY);
$offset = 0;
foreach ($fontStretchTypes as $fontStretch) {
$draw->setFontStretch($fontStretch);
$draw->annotation(50, 75 + $offset, "Lorem Ipsum!");
$offset += 50;
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFontStretch($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/209_ImagickDraw_setFontWeight_basic.phpt 0000664 0001750 0001750 00000002354 14775775503 022760 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFontWeight
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(36);
$draw->setFontWeight(100);
$draw->annotation(50, 50, "Lorem Ipsum!");
$draw->setFontWeight(200);
$draw->annotation(50, 100, "Lorem Ipsum!");
$draw->setFontWeight(400);
$draw->annotation(50, 150, "Lorem Ipsum!");
$draw->setFontWeight(800);
$draw->annotation(50, 200, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFontWeight($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/210_ImagickDraw_setFontStyle_basic.phpt 0000664 0001750 0001750 00000002314 14775775503 022615 0 ustar jakub jakub --TEST--
Test ImagickDraw, setFontStyle
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(36);
$draw->setFontStyle(\Imagick::STYLE_NORMAL);
$draw->annotation(50, 50, "Lorem Ipsum!");
$draw->setFontStyle(\Imagick::STYLE_ITALIC);
$draw->annotation(50, 100, "Lorem Ipsum!");
$draw->setFontStyle(\Imagick::STYLE_OBLIQUE);
$draw->annotation(50, 150, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(350, 300, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setFontStyle($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/211_ImagickDraw_setStrokeAntialias_basic.phpt 0000664 0001750 0001750 00000001774 14775775503 023775 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeAntialias
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setStrokeAntialias(false);
$draw->line(100, 100, 400, 105);
$draw->line(100, 140, 400, 185);
$draw->setStrokeAntialias(true);
$draw->line(100, 110, 400, 115);
$draw->line(100, 150, 400, 195);
$image = new \Imagick();
$image->newImage(500, 250, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeAntialias($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/212_ImagickDraw_setGravity_basic.phpt 0000664 0001750 0001750 00000002703 14775775503 022317 0 ustar jakub jakub --TEST--
Test ImagickDraw, setGravity
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(24);
$gravitySettings = array(\Imagick::GRAVITY_NORTHWEST => 'NorthWest', \Imagick::GRAVITY_NORTH => 'North', \Imagick::GRAVITY_NORTHEAST => 'NorthEast', \Imagick::GRAVITY_WEST => 'West', \Imagick::GRAVITY_CENTER => 'Centre', \Imagick::GRAVITY_SOUTHWEST => 'SouthWest', \Imagick::GRAVITY_SOUTH => 'South', \Imagick::GRAVITY_SOUTHEAST => 'SouthEast', \Imagick::GRAVITY_EAST => 'East');
foreach ($gravitySettings as $type => $description) {
$draw->setGravity($type);
$draw->annotation(50, 50, '"' . $description . '"');
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setGravity($fillColor, $strokeColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/213_ImagickDraw_setStrokeAlpha_basic.phpt 0000664 0001750 0001750 00000001717 14775775503 023114 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeAlpha
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(4);
$draw->line(100, 100, 400, 145);
$draw->rectangle(100, 200, 225, 350);
$draw->setStrokeOpacity(0.1);
$draw->line(100, 120, 400, 165);
$draw->rectangle(275, 200, 400, 350);
$image = new \Imagick();
$image->newImage(500, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeAlpha($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/214_ImagickDraw_setStrokeDashOffset_basic.phpt 0000664 0001750 0001750 00000002360 14775775503 024111 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeDashOffset
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(4);
$draw->setStrokeDashArray(array(20, 20));
$draw->setStrokeDashOffset(0);
$draw->rectangle(100, 50, 225, 175);
//Start the dash effect halfway through the solid portion
$draw->setStrokeDashOffset(10);
$draw->rectangle(275, 50, 400, 175);
//Start the dash effect on the space portion
$draw->setStrokeDashOffset(20);
$draw->rectangle(100, 200, 225, 350);
$draw->setStrokeDashOffset(5);
$draw->rectangle(275, 200, 400, 350);
$image = new \Imagick();
$image->newImage(500, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeDashOffset($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/215_ImagickDraw_setStrokeColor_basic.phpt 0000664 0001750 0001750 00000001722 14775775503 023143 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeColor
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(5);
$draw->line(100, 100, 400, 145);
$draw->rectangle(100, 200, 225, 350);
$draw->setStrokeOpacity(0.1);
$draw->line(100, 120, 400, 165);
$draw->rectangle(275, 200, 400, 350);
$image = new \Imagick();
$image->newImage(500, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeColor($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/216_ImagickDraw_setStrokeDashArray_basic.phpt 0000664 0001750 0001750 00000002456 14775775503 023751 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeDashArray
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(4);
$draw->setStrokeDashArray(array(10, 10));
$draw->rectangle(100, 50, 225, 175);
$draw->setStrokeDashArray(array(20, 5, 20, 5, 5, 5,));
$draw->rectangle(275, 50, 400, 175);
$draw->setStrokeDashArray(array(20, 5, 20, 5, 5));
$draw->rectangle(100, 200, 225, 350);
$draw->setStrokeDashArray(array(1, 1, 1, 1, 2, 2, 3, 3, 5, 5, 8, 8, 13, 13, 21, 21, 34, 34, 55, 55, 89, 89, 144, 144, 233, 233, 377, 377, 610, 610, 987, 987, 1597, 1597, 2584, 2584, 4181, 4181,));
$draw->rectangle(275, 200, 400, 350);
$image = new \Imagick();
$image->newImage(500, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeDashArray($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/217_ImagickDraw_setStrokeMiterLimit_basic.phpt 0000664 0001750 0001750 00000002644 14775775503 024152 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeMiterLimit
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setStrokeOpacity(0.6);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(10);
$yOffset = 100;
$draw->setStrokeLineJoin(\Imagick::LINEJOIN_MITER);
for ($y = 0; $y < 3; $y++) {
$draw->setStrokeMiterLimit(40 * $y);
$points = array(
array('x' => 22 * 3, 'y' => 15 * 4 + $y * $yOffset),
array('x' => 20 * 3, 'y' => 20 * 4 + $y * $yOffset),
array('x' => 70 * 5, 'y' => 45 * 4 + $y * $yOffset),
);
$draw->polygon($points);
}
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$image->setImageType(\Imagick::IMGTYPE_PALETTE);
//TODO - this should either be everywhere or nowhere
$image->setImageCompressionQuality(100);
$image->stripImage();
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeMiterLimit($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/218_ImagickDraw_setStrokeLineCap_basic.phpt 0000664 0001750 0001750 00000002101 14775775503 023373 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeLineCap
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(25);
$lineTypes = array(\Imagick::LINECAP_BUTT, \Imagick::LINECAP_ROUND, \Imagick::LINECAP_SQUARE,);
$offset = 0;
foreach ($lineTypes as $lineType) {
$draw->setStrokeLineCap($lineType);
$draw->line(50 + $offset, 50, 50 + $offset, 250);
$offset += 50;
}
$imagick = new \Imagick();
$imagick->newImage(300, 300, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeLineCap($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/219_ImagickDraw_setStrokeLineJoin_basic.phpt 0000664 0001750 0001750 00000002560 14775775503 023601 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeLineJoin
--SKIPIF--
--FILE--
setStrokeWidth(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(20);
$offset = 220;
$lineJoinStyle = array(\Imagick::LINEJOIN_MITER, \Imagick::LINEJOIN_ROUND, \Imagick::LINEJOIN_BEVEL,);
for ($x = 0; $x < count($lineJoinStyle); $x++) {
$draw->setStrokeLineJoin($lineJoinStyle[$x]);
$points = array(
array('x' => 40 * 5, 'y' => 10 * 5 + $x * $offset),
array('x' => 20 * 5, 'y' => 20 * 5 + $x * $offset),
array('x' => 70 * 5, 'y' => 50 * 5 + $x * $offset),
array('x' => 40 * 5, 'y' => 10 * 5 + $x * $offset),
);
$draw->polyline($points);
}
$image = new \Imagick();
$image->newImage(500, 700, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeLineJoin($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/220_ImagickDraw_setStrokeOpacity_basic.phpt 0000664 0001750 0001750 00000002201 14775775503 023462 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeOpacity
--SKIPIF--
--FILE--
setStrokeWidth(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(10);
$draw->setStrokeOpacity(1);
$draw->line(100, 80, 400, 125);
$draw->rectangle(25, 200, 150, 350);
$draw->setStrokeOpacity(0.5);
$draw->line(100, 100, 400, 145);
$draw->rectangle(200, 200, 325, 350);
$draw->setStrokeOpacity(0.2);
$draw->line(100, 120, 400, 165);
$draw->rectangle(375, 200, 500, 350);
$image = new \Imagick();
$image->newImage(550, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeOpacity($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/221_ImagickDraw_setStrokeWidth_basic.phpt 0000664 0001750 0001750 00000001712 14775775503 023140 0 ustar jakub jakub --TEST--
Test ImagickDraw, setStrokeWidth
--SKIPIF--
--FILE--
setStrokeWidth(1);
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->line(100, 100, 400, 145);
$draw->rectangle(100, 200, 225, 350);
$draw->setStrokeWidth(5);
$draw->line(100, 120, 400, 165);
$draw->rectangle(275, 200, 400, 350);
$image = new \Imagick();
$image->newImage(500, 400, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setStrokeWidth($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/222_ImagickDraw_setTextAlignment_basic.phpt 0000664 0001750 0001750 00000002404 14775775503 023454 0 ustar jakub jakub --TEST--
Test ImagickDraw, setTextAlignment
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(36);
$draw->setTextAlignment(\Imagick::ALIGN_LEFT);
$draw->annotation(250, 75, "Lorem Ipsum!");
$draw->setTextAlignment(\Imagick::ALIGN_CENTER);
$draw->annotation(250, 150, "Lorem Ipsum!");
$draw->setTextAlignment(\Imagick::ALIGN_RIGHT);
$draw->annotation(250, 225, "Lorem Ipsum!");
$draw->line(250, 0, 250, 500);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setTextAlignment($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/223_ImagickDraw_setTextAntialias_basic.phpt 0000664 0001750 0001750 00000002303 14775775503 023442 0 ustar jakub jakub --TEST--
Test ImagickDraw, setTextAntialias
--SKIPIF--
--FILE--
setStrokeColor('none');
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(32);
$draw->setTextAntialias(false);
$draw->annotation(5, 30, "Lorem Ipsum!");
$draw->setTextAntialias(true);
$draw->annotation(5, 65, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(220, 80, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
//Scale the image so that people can see the aliasing.
$imagick->scaleImage(220 * 6, 80 * 6);
$imagick->cropImage(640, 480, 0, 0);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setTextAntialias($fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/224_ImagickDraw_setTextUnderColor_basic.phpt 0000664 0001750 0001750 00000002206 14775775503 023614 0 ustar jakub jakub --TEST--
Test ImagickDraw, setTextUnderColor
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->annotation(50, 75, "Lorem Ipsum!");
$draw->setTextUnderColor($textUnderColor);
$draw->annotation(50, 175, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setTextUnderColor($strokeColor, $fillColor, $backgroundColor, $textUnderColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/225_ImagickDraw_setTextDecoration_basic.phpt 0000664 0001750 0001750 00000002114 14775775503 023626 0 ustar jakub jakub --TEST--
Test ImagickDraw, setTextDecoration
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->setTextDecoration($textDecoration);
$draw->annotation(50, 75, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setTextDecoration($strokeColor, $fillColor, $backgroundColor, $textDecoration) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/226_ImagickDraw_setViewBox_basic.phpt 0000664 0001750 0001750 00000002456 14775775503 022267 0 ustar jakub jakub --TEST--
Test ImagickDraw, setViewBox
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
/*
Sets the overall canvas size to be recorded with the drawing vector data. Usually this will be specified using the same size as the canvas image. When the vector data is saved to SVG or MVG formats, the viewbox is use to specify the size of the canvas image that a viewer will render the vector data on.
*/
$draw->circle(250, 250, 250, 0);
$draw->setviewbox(0, 0, 200, 200);
$draw->circle(125, 250, 250, 250);
$draw->translate(250, 125);
$draw->circle(0, 0, 125, 0);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setViewBox($strokeColor, $fillColor, $backgroundColor) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/227_ImagickDraw_skewY_basic.phpt 0000664 0001750 0001750 00000002220 14775775503 021260 0 ustar jakub jakub --TEST--
Test ImagickDraw, skewY
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setStrokeWidth(2);
$draw->setFillColor($fillColor);
$draw->rectangle($startX, $startY, $endX, $endY);
$draw->setFillColor($fillModifiedColor);
$draw->skewY($skew);
$draw->rectangle($startX, $startY, $endX, $endY);
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
skewY($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor,
$startX, $startY, $endX, $endY, $skew);
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/228_ImagickDraw_skewX_basic.phpt 0000664 0001750 0001750 00000002224 14775775503 021264 0 ustar jakub jakub --TEST--
Test ImagickDraw, skewX
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setStrokeWidth(2);
$draw->setFillColor($fillColor);
$draw->rectangle($startX, $startY, $endX, $endY);
$draw->setFillColor($fillModifiedColor);
$draw->skewX($skew);
$draw->rectangle($startX, $startY, $endX, $endY);
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
skewX($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor,
$startX, $startY, $endX, $endY, $skew);
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/229_Tutorial_fxAnalyzeImage_case1.phpt 0000664 0001750 0001750 00000004566 14775775503 022437 0 ustar jakub jakub --TEST--
Test Tutorial, fxAnalyzeImage
--SKIPIF--
--FILE--
getImageWidth();
$sampleHeight = 20;
$graphHeight = 128;
$border = 2;
$imageIterator = new \ImagickPixelIterator($imagick);
$reds = array();
foreach ($imageIterator as $pixels) { /* Loop trough pixel rows */
foreach ($pixels as $pixel) { /* Loop through the pixels in the row (columns) */
/** @var $pixel \ImagickPixel */
$color = $pixel->getColor();
$reds[] = $color['r'];
}
$imageIterator->syncIterator(); /* Sync the iterator, this is important to do on each iteration */
}
$draw = new \ImagickDraw();
$strokeColor = new \ImagickPixel('red');
$fillColor = new \ImagickPixel('none');
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(72);
$draw->setStrokeAntiAlias(true);
$x = 0;
$points = array();
foreach ($reds as $red) {
$pos = $graphHeight - ($red * $graphHeight / 256);
$points[] = array('x' => $x, 'y' => $pos);
$x += 1;
}
$draw->polyline($points);
$plot = new \Imagick();
$plot->newImage($graphWidth, $graphHeight, 'white');
$plot->drawImage($draw);
$outputImage = new \Imagick();
$outputImage->newImage($graphWidth, $graphHeight + $sampleHeight, 'white');
$outputImage->compositeimage($plot, \Imagick::COMPOSITE_ATOP, 0, 0);
$imagick->resizeimage($imagick->getImageWidth(), $sampleHeight, \Imagick::FILTER_LANCZOS, 1);
$outputImage->compositeimage($imagick, \Imagick::COMPOSITE_ATOP, 0, $graphHeight);
$outputImage->borderimage('black', $border, $border);
$outputImage->setImageFormat("png");
$bytes = $outputImage;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
$arguments = array(5, 1, 0.5);
$imagick = new \Imagick();
$imagick->newPseudoImage(200, 200, 'gradient:black-white');
$imagick->functionImage(\Imagick::FUNCTION_POLYNOMIAL, $arguments);
$imagick->setimageformat('png');
fxAnalyzeImage($imagick);
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/234_Tutorial_edgeExtend_basic.phpt 0000664 0001750 0001750 00000003002 14775775503 021650 0 ustar jakub jakub --TEST--
Test Tutorial, edgeExtend
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageVirtualPixelMethod($virtualPixelType);
$imagick->scaleimage(400, 300, true);
$imagick->setbackgroundcolor('pink');
$desiredWidth = 600;
$originalWidth = $imagick->getImageWidth();
//Make the image be the desired width.
$imagick->sampleimage($desiredWidth, $imagick->getImageHeight());
//Now scale, rotate, translate (aka affine project) it
//to be how you want
$points = array(//The x scaling factor is 0.5 when the desired width is double
//the source width
($originalWidth / $desiredWidth), 0, //Don't scale vertically
0, 1, //Offset the image so that it's in the centre
($desiredWidth - $originalWidth) / 2, 0);
$imagick->distortImage(\Imagick::DISTORTION_AFFINEPROJECTION, $points, false);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
//Fyi it may be easier to think of the affine transform by
//how it works for a rotation:
//$affineRotate = array(
// "sx" => cos($angle),
// "sy" => cos($angle),
// "rx" => sin($angle),
// "ry" => -sin($angle),
// "tx" => 0,
// "ty" => 0,
//);
}
edgeExtend($virtualPixelType) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/235_ImagickDraw_translate_basic.phpt 0000664 0001750 0001750 00000002334 14775775503 022160 0 ustar jakub jakub --TEST--
Test ImagickDraw, translate
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->rectangle($startX, $startY, $endX, $endY);
$draw->setFillColor($fillModifiedColor);
$draw->translate($translateX, $translateY);
$draw->rectangle($startX, $startY, $endX, $endY);
$image = new \Imagick();
$image->newImage(500, 500, $backgroundColor);
$image->setImageFormat("png");
$image->drawImage($draw);
$bytes = $image->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
translate($strokeColor, $fillColor, $backgroundColor, $fillModifiedColor,
$startX, $startY, $endX, $endY, $translateX, $translateY);
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/236_Imagick_identify_basic.phpt 0000664 0001750 0001750 00000001607 14775775503 021163 0 ustar jakub jakub --TEST--
Test Imagick, identifyImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('png');
$data = $imagick->identifyimage();
echo "format: " . strtolower($data["format"]) . "\n";
echo "units: " . strtolower($data["units"]) . "\n";
echo "type: " . strtolower($data["type"]) . "\n";
if (array_key_exists('geometry', $data)) {
$geometry = $data['geometry'];
if (array_key_exists('width', $geometry) && array_key_exists('height', $geometry)) {
printf(
"Image geometry %dx%d",
$geometry['width'],
$geometry['height']
);
exit(0);
}
}
echo "Failed get geometry from identifyimage:\n";
var_dump($data);
?>
--EXPECTF--
format: png (portable network graphics)
units: undefined
type: palette
Image geometry 640x480 imagick-3.8.0/tests/237_Tutorial_deconstructGif_basic.phpt 0000664 0001750 0001750 00000003771 14775775503 022577 0 ustar jakub jakub --TEST--
Test Tutorial, deconstructGif
--SKIPIF--
--FILE--
setFormat("gif");
$circleRadius = 20;
$imageFrames = 6;
$imageSize = 200;
$background = new \Imagick();
$background->newpseudoimage($imageSize, $imageSize, "canvas:gray");
$blackWhite = new \Imagick();
$blackWhite->newpseudoimage($imageSize, $imageSize, "gradient:black-white");
$backgroundPalette = clone $background;
$backgroundPalette->quantizeImage(240, \Imagick::COLORSPACE_RGB, 8, false, false);
$blackWhitePalette = clone $blackWhite;
$blackWhitePalette->quantizeImage(16, \Imagick::COLORSPACE_RGB, 8, false, false);
$backgroundPalette->addimage($blackWhitePalette);
for($count=0 ; $count<$imageFrames ; $count++) {
echo "Frame: ".$count."\n";
$drawing = new \ImagickDraw();
$drawing->setFillColor('white');
$drawing->setStrokeColor('rgba(64, 64, 64, 0.8)');
$strokeWidth = 4;
$drawing->setStrokeWidth($strokeWidth);
$distanceToMove = $imageSize + (($circleRadius + $strokeWidth) * 2);
$offset = ($distanceToMove * $count / ($imageFrames -1)) - ($circleRadius + $strokeWidth);
$drawing->translate($offset, ($imageSize / 2) + ($imageSize / 3 * cos(20 * $count / $imageFrames)));
$drawing->circle(0, 0, $circleRadius, 0);
$frame = clone $background;
$frame->drawimage($drawing);
$frame->clutimage($backgroundPalette);
$frame->setImageDelay(10);
$aniGif->addImage($frame);
}
if ($deconstruct == true) {
$aniGif = $aniGif->deconstructImages();
}
$bytes = $aniGif->getImagesBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
makeSimpleGif($deconstruct) ;
echo "Ok";
?>
--EXPECTF--
Frame: 0
Frame: 1
Frame: 2
Frame: 3
Frame: 4
Frame: 5
Ok imagick-3.8.0/tests/239_Tutorial_gradientReflection_basic.phpt 0000664 0001750 0001750 00000002511 14775775503 023415 0 ustar jakub jakub --TEST--
Test Tutorial, gradientReflection
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$reflection = clone $im;
$reflection->flipImage();
$reflection->cropImage($im->getImageWidth(), $im->getImageHeight() * 0.75, 0, 0);
$gradient = new \Imagick();
$gradient->newPseudoImage(
$reflection->getImageWidth(),
$reflection->getImageHeight(),
//Putting spaces in the rgba string is bad
'gradient:rgba(255,0,255,0.6)-rgba(255,255,0,0.99)'
);
$reflection->compositeimage(
$gradient,
\Imagick::COMPOSITE_DSTOUT,
0, 0
);
$canvas = new \Imagick();
$canvas->newImage($im->getImageWidth(), $im->getImageHeight() * 1.75, new \ImagickPixel('rgba(255, 255, 255, 0)'));
$canvas->compositeImage($im, \Imagick::COMPOSITE_BLEND, 0, 0);
$canvas->setImageFormat('png');
$canvas->compositeImage($reflection, \Imagick::COMPOSITE_BLEND, 0, $im->getImageHeight());
$canvas->stripImage();
$canvas->setImageFormat('png');
header('Content-Type: image/png');
$bytes = $canvas;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
gradientReflection() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/240_Tutorial_imagickCompositeGen_basic.phpt 0000664 0001750 0001750 00000010271 14775775503 023520 0 ustar jakub jakub --TEST--
Test Tutorial, imagickCompositeGen
--SKIPIF--
--FILE--
newPseudoImage($height, $overlap, 'gradient:black-white');
$quantum = $imagick->getQuantum();
$imagick->sigmoidalContrastImage(true, $contrast, $midpoint * $quantum);
return $imagick;
}
function mergeImages($outputSize, $overlap, $contrast = 10, $blendMidpoint = 0.5, $horizontal = true) {
$images = array();
$newImageWidth = 0;
$newImageHeight = 0;
if ($horizontal == true) {
$resizeWidth = 0;
$resizeHeight = $outputSize;
}
else {
$resizeWidth = $outputSize;
$resizeHeight = 0;
}
$blendWidth = 0;
$srcImages = array(1, 2, 3);
foreach ($srcImages as $srcImage) {
$nextImage = new \Imagick();
$nextImage->newPseudoImage(640, 480, "magick:logo");
$nextImage->resizeImage($resizeWidth, $resizeHeight, \Imagick::FILTER_LANCZOS, 0.5);
if ($horizontal == true) {
$newImageWidth += $nextImage->getImageWidth();
$blendWidth = $nextImage->getImageHeight();
}
else {
//$newImageWidth = $nextImage->getImageWidth();
$blendWidth = $nextImage->getImageWidth();
$newImageHeight += $nextImage->getImageHeight();
}
$images[] = $nextImage;
}
if ($horizontal == true) {
$newImageWidth -= $overlap * (count($srcImages) - 1);
$newImageHeight = $outputSize;
}
else {
$newImageWidth = $outputSize;
$newImageHeight -= $overlap * (count($srcImages) - 1);
}
if ($blendWidth == 0) {
throw new \Exception("Failed to read source images");
}
$fadeLeftSide = generateBlendImage($blendWidth, $overlap, $contrast, $blendMidpoint);
if ($horizontal == true) {
//We are placing the images horizontally.
$fadeLeftSide->rotateImage('black', -90);
}
//Fade out the left part - need to negate the mask to
//make math correct
$fadeRightSide = clone $fadeLeftSide;
$fadeRightSide->negateimage(false);
//Create a new canvas to render everything in to.
$canvas = new \Imagick();
$canvas->newImage($newImageWidth, $newImageHeight, new \ImagickPixel('black'));
$count = 0;
$imagePositionX = 0;
$imagePositionY = 0;
/** @var $image \Imagick */
foreach ($images as $image) {
$finalBlending = new \Imagick();
$finalBlending->newImage($image->getImageWidth(), $image->getImageHeight(), 'white');
if ($count != 0) {
$finalBlending->compositeImage($fadeLeftSide, \Imagick::COMPOSITE_ATOP, 0, 0);
}
$offsetX = 0;
$offsetY = 0;
if ($horizontal == true) {
$offsetX = $image->getImageWidth() - $overlap;
}
else {
$offsetY = $image->getImageHeight() - $overlap;
}
if ($count != count($images) - 1) {
$finalBlending->compositeImage($fadeRightSide, \Imagick::COMPOSITE_ATOP, $offsetX, $offsetY);
}
$image->compositeImage($finalBlending, \Imagick::COMPOSITE_COPYOPACITY, 0, 0);
$canvas->compositeimage($image, \Imagick::COMPOSITE_BLEND, $imagePositionX, $imagePositionY);
if ($horizontal == true) {
$imagePositionX = $imagePositionX + $image->getImageWidth() - $overlap;
}
else {
$imagePositionY = $imagePositionY + $image->getImageHeight() - $overlap;
}
$count++;
}
return $canvas;
}
function imagickCompositeGen($contrast = 10, $blendMidpoint = 0.5) {
$size = 160;
//Load the images
$output = mergeImages(
$size,
0.2 * $size, //overlap
$contrast,
$blendMidpoint,
true);
//$output = generateBlendImage(200, 200, 5, 0.5);
$output->setImageFormat('png');
$bytes = $output->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
imagickCompositeGen($contrast = 10, $blendMidpoint = 0.5) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/241_Tutorial_psychedelicFont_basic.phpt 0000664 0001750 0001750 00000002245 14775775503 022725 0 ustar jakub jakub --TEST--
Test Tutorial, psychedelicFont
--SKIPIF--
--FILE--
setStrokeOpacity(1);
$draw->setFillColor('black');
$draw->setfontsize(150);
for ($strokeWidth = 25; $strokeWidth > 0; $strokeWidth--) {
$hue = intval(170 + $strokeWidth * 360 / 25);
$draw->setStrokeColor("hsl($hue, 255, 128)");
$draw->setStrokeWidth($strokeWidth * 3);
$draw->annotation(60, 165, $name);
}
//Create an image object which the draw commands can be rendered into
$imagick = new \Imagick();
$imagick->newImage(650, 230, "#eee");
$imagick->setImageFormat("png");
//Render the draw commands in the ImagickDraw object
//into the image.
$imagick->drawImage($draw);
//Send the image to the browser
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
psychedelicFont() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/242_Tutorial_levelizeImage_basic.phpt 0000664 0001750 0001750 00000001773 14775775503 022372 0 ustar jakub jakub --TEST--
Test Tutorial, levelizeImage
--SKIPIF--
--FILE--
newPseudoimage(300, 300, 'gradient:black-white');
$maxQuantum = $imagick->getQuantum();
$imagick->evaluateimage(\Imagick::EVALUATE_POW, 1 / $gamma);
//Adjust the scale from black to white to the new 'distance' between black and white
$imagick->evaluateimage(\Imagick::EVALUATE_MULTIPLY, ($whitePoint - $blackPoint) / 100 );
//Add move the black point to it's new value
$imagick->evaluateimage(\Imagick::EVALUATE_ADD, ($blackPoint / 100) * $maxQuantum);
$imagick->setFormat("png");
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
levelizeImage($blackPoint, $gamma, $whitePoint) ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/243_Tutorial_svgExample_basic.phpt 0000664 0001750 0001750 00000002516 14775775503 021720 0 ustar jakub jakub --TEST--
Test Tutorial, svgExample
--SKIPIF--
--FILE--
END;
$svg = '
';
$image = new \Imagick();
$image->readImageBlob($svg);
$image->setImageFormat("jpg");
$bytes = $image;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
svgExample() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/244_Tutorial_psychedelicFontGif_basic.phpt 0000664 0001750 0001750 00000003641 14775775503 023357 0 ustar jakub jakub --TEST--
Test Tutorial, psychedelicFontGif
--SKIPIF--
--FILE--
setFormat("gif");
$maxFrames = 11;
$scale = 0.25;
for ($frame = 0; $frame < $maxFrames; $frame++) {
$draw = new \ImagickDraw();
setFontForImagickDraw($draw);
$draw->setStrokeOpacity(1);
$draw->setfontsize(150 * $scale);
for ($strokeWidth = 25; $strokeWidth > 0; $strokeWidth--) {
$hue = intval(fmod(($frame * 360 / $maxFrames) + 170 + $strokeWidth * 360 / 25, 360));
$color = "hsl($hue, 255, 128)";
$draw->setStrokeColor($color);
$draw->setFillColor($color);
$draw->setStrokeWidth($strokeWidth * 3 * $scale);
$draw->annotation((int)(60 * $scale), (int)(165 * $scale), $name);
}
$draw->setStrokeColor('none');
$draw->setFillColor('black');
$draw->setStrokeWidth(0);
$draw->annotation(60 * $scale, 165 * $scale, $name);
//Create an image object which the draw commands can be rendered into
$imagick = new \Imagick();
$imagick->newImage((int)(650 * $scale), (int)(230 * $scale), "#eee");
$imagick->setImageFormat("png");
//Render the draw commands in the ImagickDraw object
//into the image.
$imagick->drawImage($draw);
$imagick->setImageDelay(5);
$aniGif->addImage($imagick);
$imagick->destroy();
}
$aniGif->setImageIterations(0); //loop forever
$aniGif->deconstructImages();
$bytes = $aniGif->getImagesBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
psychedelicFontGif($name = 'Danack') ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/245_Tutorial_screenEmbed_basic.phpt 0000664 0001750 0001750 00000002126 14775775503 022020 0 ustar jakub jakub --TEST--
Test Tutorial, screenEmbed
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$overlay = new \Imagick();
$overlay->newPseudoImage(640, 480, "magick:logo");
$overlay->setImageVirtualPixelMethod(\Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
$width = $overlay->getImageWidth();
$height = $overlay->getImageHeight();
$offset = 332.9;
$points = array(
0, 0, 364 - $offset, 51,
$width, 0, 473.4 - $offset, 23,
0, $height, 433.5 - $offset, 182,
$width, $height, 523 - $offset, 119.4
);
$overlay->modulateImage(97, 100, 0);
$overlay->distortImage(\Imagick::DISTORTION_PERSPECTIVE, $points, true);
$imagick->compositeImage($overlay, \Imagick::COMPOSITE_OVER, (int)(364.5 - $offset), 23);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
screenEmbed() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/246_antialias_image.phpt 0000664 0001750 0001750 00000000677 14775775503 017701 0 ustar jakub jakub --TEST--
Test pseudo formats
--SKIPIF--
--FILE--
newPseudoImage(10, 10, "magick:logo");
//On by default
var_export($im->getAntiAlias());
echo PHP_EOL;
//Turn off
$im->setAntiAlias(false);
var_export($im->getAntiAlias());
echo PHP_EOL;
//Turn back on
$im->setAntiAlias(true);
var_export($im->getAntiAlias());
echo PHP_EOL;
?>
--EXPECTF--
true
false
true
imagick-3.8.0/tests/247_ImagickPixelIterator_construct_basic.phpt 0000664 0001750 0001750 00000001730 14775775503 024107 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, construct
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = new \ImagickPixelIterator($imagick);
/* Loop through pixel rows */
foreach ($imageIterator as $pixels) {
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $column => $pixel) {
/** @var $pixel \ImagickPixel */
if ($column % 2) {
/* Paint every second pixel black*/
$pixel->setColor("rgba(0, 0, 0, 0)");
}
}
/* Sync the iterator, this is important to do on each iteration */
$imageIterator->syncIterator();
}
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
construct() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/248_ImagickPixelIterator_clear_basic.phpt 0000664 0001750 0001750 00000001770 14775775503 023156 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, clear
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = $imagick->getPixelRegionIterator(100, 100, 250, 200);
/* Loop trough pixel rows */
foreach ($imageIterator as $pixels) {
/** @var $pixel \ImagickPixel */
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $column => $pixel) {
if ($column % 2) {
/* Paint every second pixel black*/
$pixel->setColor("rgba(0, 0, 0, 0)");
}
}
/* Sync the iterator, this is important to do on each iteration */
$imageIterator->syncIterator();
}
$imageIterator->clear();
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
clear() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/249_ImagickPixelIterator_getNextIteratorRow_basic.phpt 0000664 0001750 0001750 00000002126 14775775503 025705 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, getNextIteratorRow
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = $imagick->getPixelIterator();
$count = 0;
while ($pixels = $imageIterator->getNextIteratorRow()) {
if (($count % 3) == 0) {
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $column => $pixel) {
/** @var $pixel \ImagickPixel */
if ($column % 2) {
/* Paint every second pixel black*/
$pixel->setColor("rgba(0, 0, 0, 0)");
}
}
/* Sync the iterator, this is important to do on each iteration */
$imageIterator->syncIterator();
}
$count += 1;
}
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
getNextIteratorRow() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/250_ImagickPixelIterator_resetIterator_basic.phpt 0000664 0001750 0001750 00000003204 14775775503 024707 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, resetIterator
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = $imagick->getPixelIterator();
/* Loop trough pixel rows */
foreach ($imageIterator as $pixels) {
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $column => $pixel) {
/** @var $pixel \ImagickPixel */
if ($column % 2) {
/* Make every second pixel 25% red*/
$pixel->setColorValue(\Imagick::COLOR_RED, 64);
}
}
/* Sync the iterator, this is important to do on each iteration */
$imageIterator->syncIterator();
}
$imageIterator->resetiterator();
/* Loop trough pixel rows */
foreach ($imageIterator as $pixels) {
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $column => $pixel) {
/** @var $pixel \ImagickPixel */
if ($column % 3) {
$pixel->setColorValue(\Imagick::COLOR_BLUE, 64); /* Make every second pixel a little blue*/
//$pixel->setColor("rgba(0, 0, 128, 0)"); /* Paint every second pixel black*/
}
}
$imageIterator->syncIterator(); /* Sync the iterator, this is important to do on each iteration */
}
$imageIterator->clear();
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
resetIterator() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/251_ImagickPixelIterator_setIteratorRow_basic.phpt 0000664 0001750 0001750 00000002001 14775775503 025043 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, setIteratorRow
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = $imagick->getPixelRegionIterator(200, 100, 200, 200);
for ($x = 0; $x < 20; $x++) {
$imageIterator->setIteratorRow($x * 5);
$pixels = $imageIterator->getCurrentIteratorRow();
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $pixel) {
/** @var $pixel \ImagickPixel */
/* Paint every second pixel black*/
$pixel->setColor("rgba(0, 0, 0, 0)");
}
/* Sync the iterator, this is important to do on each iteration */
$imageIterator->syncIterator();
}
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
setIteratorRow() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/252_ImagickPixelIterator_construct_basic.phpt 0000664 0001750 0001750 00000001731 14775775503 024104 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, construct
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imageIterator = new \ImagickPixelIterator($imagick);
/* Loop through pixel rows */
foreach ($imageIterator as $pixels) {
/* Loop through the pixels in the row (columns) */
foreach ($pixels as $column => $pixel) {
/** @var $pixel \ImagickPixel */
if ($column % 2) {
/* Paint every second pixel black*/
$pixel->setColor("rgba(0, 0, 0, 0)");
}
}
/* Sync the iterator, this is important to do on each iteration */
$imageIterator->syncIterator();
}
$bytes = $imagick;
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
construct() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/064_cropThumbNailImage.phpt 0000664 0001750 0001750 00000003673 14775775503 020301 0 ustar jakub jakub --TEST--
Test for round issues
--SKIPIF--
--FILE--
newPseudoImage($imageWidth, $imageHeight, 'xc:white');
$imagick->cropThumbnailImage(
$desired_width, $desired_height,
$legacy
);
$error = false;
$thumbnailImageWidth = $imagick->getImageWidth();
$thumbnailImageHeight = $imagick->getImageHeight();
if ($thumbnailImageHeight != $desired_height) {
echo "Incorrect height for desired_width $desired_width imageHeight $imageHeight".PHP_EOL;
$error = true;
}
$expectedWidth = $desired_width;
$expectedHeight = $desired_height;
if ($legacy == true &&
$desired_width == 250 &&
$desired_height == 250) {
// Thumbnail size of 249 x 250 does not matched desired size 250 x 250 for source image of 1128 x 1128
$expectedWidth = 249;
}
if ($thumbnailImageWidth != $expectedWidth) {
echo "Incorrect width for desired_width $desired_width imageHeight $imageHeight".PHP_EOL;
$error = true;
}
if ($thumbnailImageHeight != $expectedHeight) {
echo "Incorrect width for desired_width $desired_width imageHeight $imageHeight".PHP_EOL;
$error = true;
}
if ($error) {
printf(
"Thumbnail size of %d x %d does not matched expected size %d x %d for source image of %d x %d. Legacy is %d\n",
$thumbnailImageWidth, $thumbnailImageHeight,
$desired_width, $desired_height,
$imageWidth, $imageHeight,
$legacy
);
}
}
}
echo "Done" . PHP_EOL;
?>
--EXPECTF--
Done imagick-3.8.0/tests/253_getHdri.phpt 0000664 0001750 0001750 00000000624 14775775503 016146 0 ustar jakub jakub --TEST--
Test ImagickPixelIterator, construct
--SKIPIF--
--FILE--
--EXPECTF--
Ok imagick-3.8.0/tests/254_getConfigureOptions.phpt 0000664 0001750 0001750 00000010450 14775775503 020554 0 ustar jakub jakub --TEST--
Test Imagick::getConfigureOptions
--SKIPIF--
--FILE--
// string(3) "gcc"
// ["CFLAGS"]=>
// string(186) "-I/usr/include/libxml2 -I/usr/include/libpng16 -I/usr/include/freetype2 -fopenmp -Wall -g -O2 -mtune=core2 -fexceptions -pthread -DMAGICKCORE_HDRI_ENABLE=1 -DMAGICKCORE_QUANTUM_DEPTH=16"
// ["CODER_PATH"]=>
// string(56) "/usr/local/lib/ImageMagick-7.0.11/modules-Q16HDRI/coders"
// ["CONFIGURE"]=>
// string(155) "./configure '--with-quantum-depth=16' '--with-magick-plus-plus=no' '--without-perl' '--disable-static' '--disable-docs' '--with-jpeg=yes' '--with-png=yes'"
// ["CONFIGURE_PATH"]=>
// string(29) "/usr/local/etc/ImageMagick-7/"
// ["COPYRIGHT"]=>
// string(46) "Copyright (C) 1999-2021 ImageMagick Studio LLC"
// ["CPPFLAGS"]=>
// string(34) "-I/usr/local/include/ImageMagick-7"
// ["CXX"]=>
// string(3) "g++"
// ["CXXFLAGS"]=>
// string(9) " -pthread"
// ["DEFS"]=>
// string(15) "-DHAVE_CONFIG_H"
// ["DELEGATES"]=>
// string(33) "freetype jng jpeg png ps xml zlib"
// ["DISTCHECK_CONFIG_FLAGS"]=>
// string(217) " --disable-deprecated --with-quantum-depth=16 --with-jemalloc=no --with-umem=no --with-autotrace=no --with-fftw=no --with-gslib=no --with-fontpath= --with-jxl=no --with-rsvg=no --with-wmf=no --with-perl=no "
// ["DOCUMENTATION_PATH"]=>
// string(34) "/usr/local/share/doc/ImageMagick-7"
// ["EXEC-PREFIX"]=>
// string(10) "/usr/local"
// ["EXECUTABLE_PATH"]=>
// string(14) "/usr/local/bin"
// ["FEATURES"]=>
// string(22) "DPC HDRI Cipher OpenMP"
// ["FILTER_PATH"]=>
// string(57) "/usr/local/lib/ImageMagick-7.0.11/modules-Q16HDRI/filters"
// ["GIT_REVISION"]=>
// string(24) "18571:309fcfa1c:20210328"
// ["HOST"]=>
// string(19) "x86_64-pc-linux-gnu"
// ["INCLUDE_PATH"]=>
// string(32) "/usr/local/include/ImageMagick-7"
// ["LDFLAGS"]=>
// string(17) "-L/usr/local/lib "
// ["LIB_VERSION"]=>
// string(5) "0x70B"
// ["LIB_VERSION_NUMBER"]=>
// string(8) "7,0,11,6"
// ["LIBRARY_PATH"]=>
// string(33) "/usr/local/lib/ImageMagick-7.0.11"
// ["LIBS"]=>
// string(96) " -lfreetype -ljpeg -lpng16 -lxml2 -lz -lm -lpthread -lgomp"
// ["MAGICK_TEMPORARY_PATH"]=>
// string(4) "/tmp"
// ["NAME"]=>
// string(11) "ImageMagick"
// ["PCFLAGS"]=>
// string(65) "-fopenmp -DMAGICKCORE_HDRI_ENABLE=1 -DMAGICKCORE_QUANTUM_DEPTH=16"
// ["PREFIX"]=>
// string(10) "/usr/local"
// ["QuantumDepth"]=>
// string(2) "16"
// ["RELEASE_DATE"]=>
// string(10) "2021-03-28"
// ["SHARE_PATH"]=>
// string(30) "/usr/local/share/ImageMagick-7"
// ["SHAREARCH_PATH"]=>
// string(48) "/usr/local/lib/ImageMagick-7.0.11/config-Q16HDRI"
// ["TARGET_CPU"]=>
// string(6) "x86_64"
// ["TARGET_OS"]=>
// string(9) "linux-gnu"
// ["TARGET_VENDOR"]=>
// string(2) "pc"
// ["VERSION"]=>
// string(6) "7.0.11"
// ["WEBSITE"]=>
// string(23) "https://imagemagick.org"
//}
// Examples of output on nixos
//array(5) {
// ["DELEGATES"]=>
// string(102) "bzlib cairo djvu fontconfig freetype heic jng jp2 jpeg lcms lzma openexr png rsvg tiff webp x xml zlib"
// ["FEATURES"]=>
// string(28) "Cipher DPC HDRI OpenMP(4.5) "
// ["MAGICK_TEMPORARY_PATH"]=>
// string(4) "/tmp"
// ["NAME"]=>
// string(11) "ImageMagick"
// ["QuantumDepth"]=>
// string(3) "Q16"
//}
if (!(count($optionsStartingWithC) < count($allOptions))) {
echo "";
var_dump($optionsStartingWithC);
var_dump($allOptions);
}
foreach ($optionsStartingWithC as $key => $value) {
$key = strtolower($key);
if (stripos($key, "q") !== 0) {
echo "key $key does not start with c".PHP_EOL;
}
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/255_getFeatures.phpt 0000664 0001750 0001750 00000000476 14775775503 017045 0 ustar jakub jakub --TEST--
Test Imagick::getfeatures
--SKIPIF--
--FILE--
--EXPECTF--
Ok imagick-3.8.0/tests/256_Imagick_exportImagePixels_basic.phpt 0000664 0001750 0001750 00000003231 14775775503 023016 0 ustar jakub jakub --TEST--
Test Imagick, Imagick::exportImagePixels
--SKIPIF--
--FILE--
newPseudoImage(256, 256, "gradient:black-white");
$pixelTypes = array(
Imagick::PIXEL_CHAR => function($v) { return $v / 255; } ,
Imagick::PIXEL_DOUBLE => function($v) { return $v; } ,
Imagick::PIXEL_FLOAT => function($v) { return $v; } ,
Imagick::PIXEL_LONG => function($v) { return $v / 4294967295; },
Imagick::PIXEL_QUANTUM => function($v) { return $v / Imagick::getQuantum(); } ,
Imagick::PIXEL_SHORT => function($v) { return $v / 65535; } ,
// This is not supported as ints close to 64bits are weird in PHP
// Imagick::PIXEL_LONGLONG => function($v) { return $v / (2 << 64 -1 ); } ,
);
$v = Imagick::getVersion();
if ($v['versionNumber'] < 0x700) {
//This test will probably fail on 32bit platforms. If you see this please
//submit a PR that fixes the problem.
$pixelTypes[Imagick::PIXEL_INTEGER] = function($v) { return $v / 4294967295; };
}
foreach ($pixelTypes as $pixelType => $scaleFn) {
try {
$pixels = $imagick->exportImagePixels(0, 0, 1, 256, "R", $pixelType);
for ($i = 0; $i<10 ; $i++) {
$expectedValue = $i / 255;
$scaledActualValue = $scaleFn($pixels[$i]);
if (abs($expectedValue - $scaledActualValue) > 0.0001) {
echo "pixel type $pixelType has incorrect values. They should be 0/255, 1/255, 2/255... 255/255 or the scaled equivalent\n";
var_dump($pixels);
break;
}
}
}
catch (\Exception $e) {
echo "Exception caught for pixelType: $pixelType ";
echo $e->getMessage();
}
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/257_Imagick_setImageChannelMask_basic.phpt 0000664 0001750 0001750 00000001623 14775775503 023214 0 ustar jakub jakub --TEST--
Test Imagick, Imagick::exportImagePixels
--SKIPIF--
--FILE--
newPseudoImage(256, 256, "gradient:black-white");
$initialMask = $imagick->setImageChannelMask(\Imagick::CHANNEL_RED);
$imagick->brightnessContrastImage(-20, 20);
$imagick->setImageFormat("png");
$imagick->writeImage(__DIR__ . "/maskTest.png");
$redMask = $imagick->setImageChannelMask(\Imagick::CHANNEL_DEFAULT);
if ($initialMask != \Imagick::CHANNEL_DEFAULT) {
echo "initialMask is not equal to \Imagick::CHANNEL_DEFAULT but instead is $initialMask\n";
}
if ($redMask != \Imagick::CHANNEL_RED) {
echo "redMask is not equal to \Imagick::CHANNEL_RED but instead is $redMask\n";
}
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/258_Imagick_evaluateImages_basic.phpt 0000664 0001750 0001750 00000001320 14775775503 022300 0 ustar jakub jakub --TEST--
Test Imagick, Imagick::evaluateImages
--SKIPIF--
--FILE--
newPseudoImage(256, 256, "gradient:black-white");
$imagick2 = new \Imagick();
$imagick2->newPseudoImage(256, 256, "gradient:red-white");
$imagick->addImage($imagick2);
$imagick->setImageFormat('png');
$imagick->setIteratorIndex(0);
$evaluated = $imagick->evaluateImages(\Imagick::EVALUATE_MEAN);
$evaluated->setImageFormat('png');
// $evaluated->writeImage("./evaluateTest.png");
$data = $evaluated->getImageBlob();
if (strlen($data) < 50) {
echo "Image data seems too short.";
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/259_Imagick_colorPoints_basic.phpt 0000664 0001750 0001750 00000003207 14775775503 021666 0 ustar jakub jakub --TEST--
Test Imagick, Imagick::evaluateImages
--SKIPIF--
--FILE--
0.0000001) {
echo "Unexpected value of $value for check $count\n";
}
$count++;
}
$imagick = new \Imagick();
$imagick->newPseudoImage(640, 480, "magick:logo");
$imagick->setImageFormat('png');
$v = Imagick::getVersion();
if ($v['versionNumber'] < 0x700) {
$imagick->setImageRedPrimary(0.5, 0.5);
$imagick->setImageGreenPrimary(0.5, 0.5);
$imagick->setImageBluePrimary(0.5, 0.5);
$imagick->setImageWhitePoint(0.5, 0.5);
$color = $imagick->getImageRedPrimary();
im_check($color['x']);im_check($color['y']);
$color = $imagick->getImageGreenPrimary();
im_check($color['x']);im_check($color['y']);
$color = $imagick->getImageBluePrimary();
im_check($color['x']);im_check($color['y']);
$color = $imagick->getImageWhitePoint();
im_check($color['x']);im_check($color['y']);
}
else {
$imagick->setImageRedPrimary(0.5, 0.5, 0.5);
$imagick->setImageGreenPrimary(0.5, 0.5, 0.5);
$imagick->setImageBluePrimary(0.5, 0.5, 0.5);
$imagick->setImageWhitePoint(0.5, 0.5, 0.5);
$color = $imagick->getImageRedPrimary();
im_check($color['x']);im_check($color['y']);im_check($color['z']);
$color = $imagick->getImageGreenPrimary();
im_check($color['x']);im_check($color['y']);im_check($color['z']);
$color = $imagick->getImageBluePrimary();
im_check($color['x']);im_check($color['y']);im_check($color['z']);
$color = $imagick->getImageWhitePoint();
im_check($color['x']);im_check($color['y']);im_check($color['z']);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/260_localContrastImage.phpt 0000664 0001750 0001750 00000000455 14775775503 020333 0 ustar jakub jakub --TEST--
Test localContrastImage
--SKIPIF--
--FILE--
localContrastImage(2, 2);
echo "Ok";
?>
--EXPECT--
Ok imagick-3.8.0/tests/261_compositeImageGravity.phpt 0000664 0001750 0001750 00000001446 14775775503 021075 0 ustar jakub jakub --TEST--
Test compositeImageGravity
--SKIPIF--
= 0x660 && $v ['versionNumber'] < 0x670)
// die ('skip seems to be broken in this version of ImageMagick');
?>
--FILE--
scaleImage(
$im2->getImageWidth() / 2,
$im2->getImageHeight() / 2
);
$im1->compositeImageGravity(
$im2,
\Imagick::COMPOSITE_ATOP,
\Imagick::GRAVITY_NORTHEAST
);
$im1->compositeImageGravity(
$im2,
\Imagick::COMPOSITE_ATOP,
\Imagick::GRAVITY_SOUTH
);
// $im1->setImageFormat('png');
// $im1->writeImage('compositeImageGravity.png');
echo "Ok";
?>
--EXPECT--
Ok imagick-3.8.0/tests/262_autoOrient.phpt 0000664 0001750 0001750 00000000653 14775775503 016713 0 ustar jakub jakub --TEST--
Test autoOrient
--SKIPIF--
= 0x660 && $v ['versionNumber'] < 0x670)
// die ('skip seems to be broken in this version of ImageMagick');
?>
--FILE--
autoOrient();
echo "Ok";
?>
--EXPECT--
Ok imagick-3.8.0/tests/263_autoGammaImage.phpt 0000664 0001750 0001750 00000000520 14775775503 017432 0 ustar jakub jakub --TEST--
Test autoGammaImage
--SKIPIF--
--FILE--
autoGammaImage();
$im = new Imagick("magick:logo");
$im->autoGammaImage(\Imagick::CHANNEL_RED);
echo "Ok";
?>
--EXPECT--
Ok
imagick-3.8.0/tests/264_ImagickDraw_getTextDirection_basic.phpt 0000664 0001750 0001750 00000002743 14775775503 023456 0 ustar jakub jakub --TEST--
Test ImagickDraw, getTextDirection
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(56);
$directions = array(
\Imagick::DIRECTION_LEFT_TO_RIGHT,
\Imagick::DIRECTION_RIGHT_TO_LEFT,
\Imagick::DIRECTION_LEFT_TO_RIGHT,
);
$i = 0;
foreach ($directions as $directionToSet) {
$draw->setTextDirection($directionToSet);
$directionReturned = $draw->getTextDirection();
if ($directionReturned != $directionToSet) {
echo "Direction error for $i \n";
}
$position = 36;
if ($directionToSet == \Imagick::DIRECTION_RIGHT_TO_LEFT) {
$position = 500 - 36;
}
$draw->annotation($position, (72 * $i) + 64, "Lorem Ipsum!");
$i++;
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
$imagick->writeImage(__DIR__ . '/directionTest.png');
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/265_ImagickDraw_getOpacity_basic.phpt 0000664 0001750 0001750 00000002042 14775775503 022272 0 ustar jakub jakub --TEST--
Test ImagickDraw, getOpacity
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$opacityToSet = 0.1;
$draw->setOpacity($opacityToSet);
$opacity = $draw->getOpacity();
$delta = abs($opacity - $opacityToSet);
if ($delta > 0.0001) {
echo "Failed to get correct opacity, it should be $opacityToSet but got $opacity, which is a delta of $delta\n";
}
$draw->line(125, 70, 100, 50);
$draw->line(350, 170, 100, 150);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/266_ImagickDraw_getFontResolution_basic.phpt 0000664 0001750 0001750 00000003474 14775775503 023667 0 ustar jakub jakub --TEST--
Test ImagickDraw, getFontResolution
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$fontResolution = $draw->getFontResolution();
if (isset($fontResolution["x"]) == false || isset($fontResolution["y"]) == false) {
echo "$fontResolution doesn't contain expected values:\n";
var_dump($fontResolution);
}
if ($fontResolution["x"] < 8 || $fontResolution["x"] > 100) {
echo "Font resolution x outside expected range: ".$fontResolution["x"]."\n";
}
if ($fontResolution["y"] < 8 || $fontResolution["y"] > 100) {
echo "Font resolution y outside expected range: ".$fontResolution["y"]."\n";
}
$resolutionToSet = 36;
$draw->setFontResolution($resolutionToSet, $resolutionToSet);
$fontResolution = $draw->getFontResolution();
if (abs($fontResolution["x"] - $resolutionToSet) > 0.0001) {
echo "Font resolution x after set is not $resolutionToSet instead: ".$fontResolution["x"]."\n";
}
if (abs($fontResolution["y"] - $resolutionToSet) > 0.0001) {
echo "Font resolution y after set is not $resolutionToSet instead: ".$fontResolution["y"]."\n";
}
$draw->line(125, 70, 100, 50);
$draw->annotation(50, 32, "Lorem Ipsum!");
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/267_ImagickDraw_getBorderColor_basic.phpt 0000664 0001750 0001750 00000002207 14775775503 023103 0 ustar jakub jakub --TEST--
Test ImagickDraw, getBorderColor
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$opacityToSet = 0.1;
$borderColor = $draw->getBorderColor();
//var_dump($borderColor->getColor());
$draw->setBorderColor("red");
$borderColor = $draw->getBorderColor();
$borderColorElements = $borderColor->getColor();
if ($borderColorElements["r"] != 255 ||
$borderColorElements["g"] != 0 ||
$borderColorElements["b"] != 0) {
echo "Wrong colors after set.";
}
$draw->line(125, 70, 100, 50);
$draw->line(350, 170, 100, 150);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/268_ImagickDraw_getDensity_basic.phpt 0000664 0001750 0001750 00000002043 14775775503 022305 0 ustar jakub jakub --TEST--
Test ImagickDraw, getDensity
--SKIPIF--
--XFAIL--
Expected behaviour is not known :-p
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$opacityToSet = 0.1;
$densitySet = "200";
$draw->setDensity($densitySet);
$densityGet = $draw->getDensity();
if (strcmp($densitySet, $densityGet) !== 0) {
echo "Density retrieved [$densityGet] is not the value set [$densitySet].";
}
$draw->line(125, 70, 100, 50);
$draw->line(350, 170, 100, 150);
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/269_ImagickPixel_setColorFromPixel_basic.phpt 0000664 0001750 0001750 00000001045 14775775503 023774 0 ustar jakub jakub --TEST--
Test ImagickPixel, setColor
--SKIPIF--
--FILE--
setColorFromPixel($red);
$expected = array(
"r" => 255,
"g" => 0,
"b" => 0,
"a" => 1
);
$actualColor = $backgroundColor->getColor();
if ($actualColor != $expected) {
echo "Not as expected :\n";
var_dump($actualColor);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/270_imagick_restoreErrorHandler.phpt 0000664 0001750 0001750 00000001076 14775775503 022240 0 ustar jakub jakub --TEST--
Imagick don't borg the error handler
--SKIPIF--
--FILE--
getMessage();
}
?>
--EXPECTF--
Normal exception
Normal warning is suppressed
imagick-3.8.0/tests/271_imagick_constants.phpt 0000664 0001750 0001750 00000000503 14775775503 020254 0 ustar jakub jakub --TEST--
Imagick::readImage test
--SKIPIF--
--FILE--
getConstants();
$output = '';
foreach ($constants as $key => $value) {
$output .= "$key: $value \n";
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/272_imagick_identifyimagetype.phpt 0000664 0001750 0001750 00000000675 14775775503 021773 0 ustar jakub jakub --TEST--
Test identifyImageType
--SKIPIF--
--FILE--
newPseudoImage(100, 100, "magick:logo");
$type = $im->identifyImageType();
if ($type !== Imagick::IMGTYPE_PALETTE) {
echo "Unexpected type value. Expecting: ".Imagick::IMGTYPE_PALETTE.", but got $type. \n";
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/273_imagick_falsyimage.phpt 0000664 0001750 0001750 00000000460 14775775503 020365 0 ustar jakub jakub --TEST--
Imagick::__construct false
--SKIPIF--
--FILE--
getMessage()."\n";
}
?>
--EXPECTF--
Constructor shouldn't be called with a boolean as the filename imagick-3.8.0/tests/274_imagick_setImageAlpha.phpt 0000664 0001750 0001750 00000003621 14775775503 020753 0 ustar jakub jakub --TEST--
Imagick::setImageAlpha
--SKIPIF--
--FILE--
newPseudoImage(256, 256, 'xc:purple');
$imagick->setImageAlpha(0.5);
$imagick->setImageFormat('png');
$imagick->writeImage(__DIR__ . "/setAlphaTest.png");
$pixelTypes = array(
Imagick::PIXEL_CHAR => array(128, 0, 128, 128),
Imagick::PIXEL_FLOAT => array(0.50196081399918, 0, 0.50196081399918, 0.5),
Imagick::PIXEL_DOUBLE => array(0.50196078431373, 0, 0.50196078431373, 0.5),
Imagick::PIXEL_SHORT => array(32896, 0, 32896, 32768),
);
function getColorError($type, $expected, $actual) {
if ($type == Imagick::PIXEL_CHAR ||
$type == Imagick::PIXEL_SHORT) {
$string = "Expected: " . $actual . "\n";
$string .= "Actual : " . $actual . "\n";
return $string;
}
if ($type == Imagick::PIXEL_FLOAT) {
return float_compare_32($expected, $actual);
}
if ($type == Imagick::PIXEL_DOUBLE) {
return float_compare($expected, $actual);
}
echo "Unknown type: $type \n";
exit(-1);
}
foreach ($pixelTypes as $pixelType => $expectedValues) {
$pixels = $imagick->exportImagePixels(0, 0, 1, 1, "RGBA", $pixelType);
$channelNames = ['R', 'G', 'B', 'A'];
// Loop over the colours
for ($channel = 0; $channel < 4; $channel++) {
$actual = $pixels[$channel];
$expected = $expectedValues[$channel];
if (abs($actual - $expected) > get_epsilon_for_off_by_half_errors()) {
$channelName = $channelNames[$channel];
echo "Pixel values appear incorrect for pixelType $pixelType channel:$channelName\n";
echo getColorError($pixelType, $expected, $actual);
break;
}
}
}
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/275_ImagickPixel_unitializedObjects.phpt 0000664 0001750 0001750 00000004225 14775775503 023046 0 ustar jakub jakub --TEST--
Testing ImagickPixel with unitialized pixel_wand
--SKIPIF--
--FILE--
newInstanceWithoutConstructor();
$methods = $reflectionClass->getMethods();
$methodsAndParams = array(
'clear' => [],
'destroy' => [],
'getColor' => [],
'getColorAsString' => [],
'getColorCount' => [],
'getColorQuantum' => [],
'getColorValue' => [Imagick::COLOR_BLUE],
'getColorValueQuantum' => [Imagick::COLOR_RED],
'getHSL' => [],
'getIndex' => [],
'isPixelSimilar' => ['red', 0.1],
'isPixelSimilarQuantum' => ['red', 100],
'isSimilar' => ['red', 0.1],
'setColor' => ['red'],
'setcolorcount' => [4],
'setColorValue' => [Imagick::COLOR_BLUE, 0.5],
'setColorValueQuantum' => [Imagick::COLOR_BLUE, 1],
'setHSL' => [0.5, 0.5, 0.5],
'setIndex' => [5],
'setcolorfrompixel' => [$instance],
);
$testedMethods = array();
foreach ($methodsAndParams as $methodName => $params) {
if ($reflectionClass->hasMethod($methodName) == false) {
continue;
}
try {
call_user_func_array([$instance, $methodName], $params);
echo "failed to throw an exception.\n";
}
catch (ImagickPixelException $ipe) {
if (strpos($ipe->getMessage(), "Can not process empty ImagickPixel object") === false) {
echo "Incorrect message: " . $ipe->getMessage() . "\n";
}
}
$testedMethods[] = strtolower($methodName);
}
// pretend we tested these.
$testedMethods[] = '__construct';
$testedMethods[] = 'clone';
foreach ($methods as $method) {
$allMethods[] = strtolower($method->getName());
}
// Have we tested all but __construct
$missedMethods = array_diff($allMethods, $testedMethods);
if (count($missedMethods) !== 0) {
echo "We didn't test all of the ImagickPixel methods\n";
var_dump($missedMethods);
}
echo "Ok"
?>
--EXPECTF--
Ok imagick-3.8.0/tests/276_Imagick_artifacts.phpt 0000664 0001750 0001750 00000001176 14775775503 020174 0 ustar jakub jakub --TEST--
Test Imagick::setImageArtifact and Imagick::getImageArtifact
--SKIPIF--
--FILE--
setImageArtifact('compose:args', '1,0,-0.5,0.5'));
var_dump($im->getImageArtifact('compose:args'));
var_dump($im->deleteImageArtifact('compose:args'));
?>
--EXPECT--
bool(true)
string(12) "1,0,-0.5,0.5"
bool(true) imagick-3.8.0/tests/277_Imagick_colorDecisionListImage.phpt 0000664 0001750 0001750 00000001364 14775775503 022607 0 ustar jakub jakub --TEST--
Test Imagick::colorDecisionListImage
--SKIPIF--
--FILE--
0.9 1.2 0.5
0.4 -0.5 0.6
1.0 0.8 1.5
0.85
CCC;
$im->colorDecisionListImage($ccc);
echo "Ok"
?>
--EXPECT--
Ok imagick-3.8.0/tests/278_Imagick_optimaze_gif.phpt 0000664 0001750 0001750 00000004426 14775775503 020674 0 ustar jakub jakub --TEST--
Test Imagick::optimizeimagelayers and Imagick::optimizeimagetransparency
--SKIPIF--
--FILE--
setFormat("gif");
$circleRadius = 20;
$imageFrames = 6;
$imageSize = 200;
$background = new \Imagick();
$background->newpseudoimage($imageSize, $imageSize, "canvas:gray");
$blackWhite = new \Imagick();
$blackWhite->newpseudoimage($imageSize, $imageSize, "gradient:black-white");
$backgroundPalette = clone $background;
$backgroundPalette->quantizeImage(240, \Imagick::COLORSPACE_RGB, 8, false, false);
$blackWhitePalette = clone $blackWhite;
$blackWhitePalette->quantizeImage(16, \Imagick::COLORSPACE_RGB, 8, false, false);
$backgroundPalette->addimage($blackWhitePalette);
for($count=0 ; $count<$imageFrames ; $count++) {
echo "Frame: ".$count."\n";
$drawing = new \ImagickDraw();
$drawing->setFillColor('white');
$drawing->setStrokeColor('rgba(64, 64, 64, 0.8)');
$strokeWidth = 4;
$drawing->setStrokeWidth($strokeWidth);
$distanceToMove = $imageSize + (($circleRadius + $strokeWidth) * 2);
$offset = ($distanceToMove * $count / ($imageFrames -1)) - ($circleRadius + $strokeWidth);
$drawing->translate($offset, ($imageSize / 2) + ($imageSize / 3 * cos(20 * $count / $imageFrames)));
$drawing->circle(0, 0, $circleRadius, 0);
$frame = clone $background;
$frame->drawimage($drawing);
$frame->clutimage($backgroundPalette);
$frame->setImageDelay(10);
$aniGif->addImage($frame);
}
$aniGif = $aniGif->deconstructImages();
$bytes = $aniGif->getImagesBlob();
if (strlen($bytes) <= 0) {
echo "Failed to generate image.";
}
return $aniGif;
}
function optimizeGif($im) {
$im = $im->coalesceImages();
$im->optimizeImageLayers();
$im->optimizeimagetransparency();
}
$simpleGif = makeSimpleGif();
optimizeGif($simpleGif);
echo "Ok"
?>
--EXPECT--
Frame: 0
Frame: 1
Frame: 2
Frame: 3
Frame: 4
Frame: 5
Ok
imagick-3.8.0/tests/279_ImagickDraw_setTextInterlineSpacing.phpt 0000664 0001750 0001750 00000004015 14775775503 023647 0 ustar jakub jakub --TEST--
Test ImagickDraw:: setTextInterlineSpacing
--SKIPIF--
--FILE--
setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(2);
$draw->setFontSize(56);
$draw->setFontSize(16);
$draw->setStrokeAntialias(true);
$draw->setTextAntialias(true);
$draw->setFillColor('#ff0000');
$draw->setTextInterlineSpacing($interlineSpacing);
$imagick = new \Imagick();
$imagick->newImage(600, 600, "rgb(230, 230, 230)");
$imagick->setImageFormat('png');
$imagick->annotateImage($draw, 30, 40, 0, "Line 1\nLine 2\nLine 3");
$imagick->trimImage(0);
$imagick->setImagePage($imagick->getimageWidth(), $imagick->getimageheight(), 0, 0);
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) {
die("Failed to generate image.");
}
$imageHeights[$interlineSpacing] = $imagick->getImageHeight();
$imagick->writeImage(__DIR__ . "/interline_spacing_test_$interlineSpacing.png");
}
$previousHeight = null;
foreach ($imageHeights as $interlineSpacing => $imageHeight) {
if ($previousHeight !== null) {
$differenceFromPrevious = $imageHeight - $previousHeight;
if ($differenceFromPrevious < 15) {
echo "textInterlineSpacing of $interlineSpacing only resulted in extra height of $differenceFromPrevious\n";
}
}
$previousHeight = $imageHeight;
}
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/280_imagickkernel_exception_invalid_origin.phpt 0000664 0001750 0001750 00000004442 14775775503 024522 0 ustar jakub jakub --TEST--
ImagickKernel::fromMatrix exceptions
--SKIPIF--
--FILE--
getMessage();
}
}
foreach ($invalidOrigins as $invalidOrigin) {
try {
$kernel = ImagickKernel::fromMatrix($kernelArray, $invalidOrigin);
echo "Exception wasn't thrown for case: \n";
var_dump($invalidOrigin);
}
catch (\ImagickKernelException $e) {
$message = $e->getMessage();
if (strpos($message, "origin_y for matrix is outside bounds of rows") === 0) {
// this is fine.
}
else if (strpos($message, "origin_x for matrix is outside bounds of columns") === 0) {
// this is fine.
}
else {
echo "Unexpected message: " . $message . "\n";
}
}
}
$flatKernelArray = array(
array(1, 0, -2, 0, 1),
);
try {
$kernel = ImagickKernel::fromMatrix($flatKernelArray, [1, 4]);
echo "Exception wasn't thrown for case: \n";
var_dump($invalidOrigin);
}
catch (\ImagickKernelException $e) {
$message = $e->getMessage();
if (strpos($message, "origin_y for matrix is outside bounds of rows") === 0) {
// this is fine.
}
else {
echo "Unexpected message: " . $message . "\n";
}
}
$tallKernelArray = array(
array(1),
array(0),
array(-2),
array(0),
array(1),
);
try {
$kernel = ImagickKernel::fromMatrix($tallKernelArray, [4, 1]);
echo "Exception wasn't thrown for case: \n";
var_dump($invalidOrigin);
}
catch (\ImagickKernelException $e) {
$message = $e->getMessage();
if (strpos($message, "origin_x for matrix is outside bounds of columns") === 0) {
// this is fine.
}
else {
echo "Unexpected message: " . $message . "\n";
}
}
echo "Complete".PHP_EOL;
?>
--EXPECTF--
Complete
imagick-3.8.0/tests/281_imagick_houghLineImage_basic.phpt 0000664 0001750 0001750 00000001351 14775775503 022271 0 ustar jakub jakub --TEST--
Test Imagick, houghLineImage
--SKIPIF--
--FILE--
readImage($path);
$imagick->setbackgroundcolor('rgb(64, 64, 64)');
$imagick->houghLineImage(20,40, 40);
$imagick->writeImage(__DIR__ . '/houghline_output_image.png');
}
houghLineImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/281_ini_settings_default.phpt 0000664 0001750 0001750 00000001070 14775775503 020760 0 ustar jakub jakub --TEST--
OpenMP segfault hacks
--SKIPIF--
--FILE--
--EXPECTF--
Complete
imagick-3.8.0/tests/282_ini_settings_set_falsy_string.phpt 0000664 0001750 0001750 00000002104 14775775503 022713 0 ustar jakub jakub --TEST--
OpenMP segfault hacks
--INI--
imagick.shutdown_sleep_count=Off
imagick.set_single_thread=0
--SKIPIF--
--FILE--
--EXPECTF--
Complete
imagick-3.8.0/tests/283_ini_settings_set_falsy_zero.phpt 0000664 0001750 0001750 00000001167 14775775503 022375 0 ustar jakub jakub --TEST--
OpenMP segfault hacks
--INI--
imagick.shutdown_sleep_count=0
imagick.set_single_thread=0
--SKIPIF--
--FILE--
--EXPECTF--
Complete
imagick-3.8.0/tests/284_ini_settings_set_truthy_number.phpt 0000664 0001750 0001750 00000001205 14775775503 023121 0 ustar jakub jakub --TEST--
OpenMP segfault hacks
--INI--
imagick.shutdown_sleep_count=20
imagick.set_single_thread=1
--SKIPIF--
--FILE--
--EXPECTF--
Complete
imagick-3.8.0/tests/285_ini_settings_set_truthy_string.phpt 0000664 0001750 0001750 00000001204 14775775503 023137 0 ustar jakub jakub --TEST--
OpenMP segfault hacks
--INI--
imagick.shutdown_sleep_count=On
imagick.set_single_thread=On
--SKIPIF--
--FILE--
--EXPECTF--
Complete
imagick-3.8.0/tests/286_Imagick_setMask_basic.phpt 0000664 0001750 0001750 00000003246 14775775503 020765 0 ustar jakub jakub --TEST--
Test Imagick, setImageMask basic
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$default_mask = $imagick->getImageMask(Imagick::PIXELMASK_READ);
if ($default_mask !== null) {
echo "Default mask is not null but\n";
var_dump($default_mask);
}
$mask = new Imagick();
$mask->newPseudoImage(480, 640, "gradient:black-white");
$mask->transposeImage();
$imagick->setImageMask($mask, Imagick::PIXELMASK_READ);
$mask = $imagick->getImageMask(Imagick::PIXELMASK_READ);
$mask->setImageFormat('png');
//$mask->writeImage(__DIR__ . "/i_am_a_mask.png");
//if ( !== Imagick::PIXELMASK_READ) {
// echo "Failed to set/get Imagick::PIXELMASK_READ";
//};
$imagick->setImageMask($mask, Imagick::PIXELMASK_WRITE);
//$imagick->blurImage(15, 4);
//$imagick->writeImage(__DIR__ . "/mask_test.png");
//if ($imagick->getImageMask() !== Imagick::PIXELMASK_WRITE) {
// echo "Failed to set/get Imagick::PIXELMASK_WRITE";
// };
// This can only be tested MagickLibVersion >= 0x708
// so should probably be in a test by itself, once it's figured out
// what it does.
// $imagick->setImageMask($mask, Imagick::PIXELMASK_COMPOSITE);
//if ($imagick->getImageMask() !== Imagick::PIXELMASK_COMPOSITE) {
// echo "Failed to set/get Imagick::PIXELMASK_COMPOSITE";
//};
$imagick->setImageMask($mask, -1);
// $unknown_result = $imagick->getImageMask(Imagick::PIXELMASK_READ);
// todo echo "not sure what -1 should be: $unknown_result \n";
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/287_Imagick_GetImageChannelRange_basic.phpt 0000664 0001750 0001750 00000003150 14775775503 023301 0 ustar jakub jakub --TEST--
Test Imagick, GetImageChannelRange basic
--SKIPIF--
--XFAIL--
Tests are not stable across ImageMagick versions.
--FILE--
newPseudoImage(640, 480, "gradient:rgb(0,32,32)-rgb(128,255,255)");
$redChannelRange = $imagick->getImageChannelRange(\Imagick::CHANNEL_RED);
$greenChannelRange = $imagick->getImageChannelRange(\Imagick::CHANNEL_GREEN);
$expectedRedMinima = (Imagick::getQuantum() * 0.0) / 255;
$expectedRedMaxima = (Imagick::getQuantum() * 128.0) / 255;
$expectedGreenMinima = (Imagick::getQuantum() * 32.0) / 255;
$expectedGreenMaxima = (Imagick::getQuantum() * 255.0) / 255;
// Floating point math. This is absolutely going to blow up
// on some platforms. But as finding out which would be interesting
// will leave it like this for now.
if ($expectedRedMinima !== $redChannelRange['minima']) {
printf(
"Unexpected red minima. Was expecting %s but have %s\n",
$expectedRedMinima,
$redChannelRange['minima']
);
}
if ($expectedRedMaxima !== $redChannelRange['maxima']) {
printf(
"Unexpected red maxima. Was expecting %s but have %s\n",
$expectedRedMinima,
$redChannelRange['maxima']
);
}
if ($expectedGreenMinima !== $greenChannelRange['minima']) {
printf(
"Unexpected green minima. Was expecting %s but have %s\n",
$expectedGreenMinima,
$greenChannelRange['minima']
);
}
if ($expectedGreenMaxima !== $greenChannelRange['maxima']) {
printf(
"Unexpected green maxima. Was expecting %s but have %s\n",
$expectedGreenMaxima,
$greenChannelRange['maxima']
);
}
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/288_imagick_prevent_zero_size_images.phpt 0000664 0001750 0001750 00000001500 14775775503 023347 0 ustar jakub jakub --TEST--
Prevent zero dimension images and check exception
--SKIPIF--
--FILE--
newPseudoImage(0, 100, "magick:logo");
$im->newPseudoImage(100, 0, "magick:logo");
ini_set("imagick.allow_zero_dimension_images", 1);
$im->newPseudoImage(0, 100, "magick:logo");
echo "Well done, you have a zero dimension image. Now what?\n";
echo "Ok";
?>
--EXPECTF--
Deprecated: Creating images with zero columns is deprecated. If you think you need to do this, please open an issue at https://phpimagick.com/issues in %s on line %d
Deprecated: Creating images with zero rows is deprecated. If you think you need to do this, please open an issue at https://phpimagick.com/issues in %s on line %d
Well done, you have a zero dimension image. Now what?
Ok imagick-3.8.0/tests/289_Imagick_setImageMask_basic.phpt 0000664 0001750 0001750 00000003411 14775775503 021725 0 ustar jakub jakub --TEST--
Test Imagick, medianFilterImage
--SKIPIF--
--FILE--
newPseudoImage(
$canvas->getImageWidth(),
$canvas->getImageHeight(),
'xc:black'
);
$drawing = new ImagickDraw();
$drawing->setBorderColor('black');
$drawing->setFillColor('black');
$drawing->rectangle(0, 0, $mask->getImageWidth(), $mask->getImageHeight());
$drawing->setBorderColor('white');
$drawing->setFillColor('white');
$drawing->circle(
$mask->getImageWidth() / 2,
$mask->getImageHeight() / 2,
2 * $mask->getImageWidth() / 3,
$mask->getImageHeight() / 2
);
$mask->drawImage($drawing);
//$mask->writeImage(__DIR__ . "/test_mask.png");
// This would probably be more useful for users
// but shows the issue with PIXELMASK_COMPOSITE
// $mask->blurImage(10, 2);
$mask_types = array(
\Imagick::PIXELMASK_READ => "PIXELMASK_READ",
\Imagick::PIXELMASK_WRITE => "PIXELMASK_WRITE",
\Imagick::PIXELMASK_COMPOSITE => "PIXELMASK_COMPOSITE",
);
$channel_types = array(
\Imagick::CHANNEL_ALL => "CHANNEL_ALL",
\Imagick::CHANNEL_RED => "CHANNEL_RED",
\Imagick::CHANNEL_ALPHA => "CHANNEL_ALPHA",
\Imagick::CHANNEL_RGBA => "CHANNEL_RGBA",
\Imagick::CHANNEL_BLACK => "CHANNEL_BLACK",
\Imagick::CHANNEL_DEFAULT => "CHANNEL_DEFAULT",
);
foreach ($channel_types as $channel_type => $channel_name) {
foreach ($mask_types as $type => $type_name) {
$output = clone $canvas;
$output->setImageMask($mask, $type);
$output->blurImage(15, 4, $channel_type);
// $output->writeImage(__DIR__ . "/test_canvas" . $type_name . "_" . $channel_name . ".png");
}
}
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/290_imagick_profileimage.phpt 0000664 0001750 0001750 00000000406 14775775503 020706 0 ustar jakub jakub --TEST--
Imagick::profileImage test
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagick->profileImage('*', null);
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/291_reflection.phpt 0000664 0001750 0001750 00000001764 14775775503 016722 0 ustar jakub jakub --TEST--
Test that reflection can get default values
--SKIPIF--
--FILE--
getMethods() as $reflectionMethod) {
$parameters = $reflectionMethod->getParameters();
foreach ($parameters as $parameter) {
if ($parameter->isDefaultValueAvailable() !== true) {
continue;
}
try {
$value = $parameter->getDefaultValue();
}
catch (ReflectionException $re) {
$method_name = $reflectionMethod->getName();
echo "Exception for $class::$method_name : " . $re->getMessage() . "\n";
}
}
}
}
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/292_index_iterator.phpt 0000664 0001750 0001750 00000002402 14775775503 017577 0 ustar jakub jakub --TEST--
Test iterating over images works
--SKIPIF--
--FILE--
newPseudoImage(300, 300, $canvasType);
$canvas->addImage($imagick);
}
$canvas->setImageFormat("png");
foreach ($canvas as $canvasSubImage) {
echo $canvas->getIteratorIndex() . "\n";
echo $canvas->getImageIndex() . "\n";
}
for ($i=0; $i<3; $i+=1) {
$canvas->setImageIndex($i);
echo $canvas->getIteratorIndex() . "\n";
}
for ($i=0; $i<3; $i+=1) {
$canvas->setIteratorIndex($i);
echo $canvas->getImageIndex() . "\n";
}
$canvas->setImageIndex(-1);
if ($canvas->getImageIndex() !== 2) {
echo "Setting image index to -1 did something unexpected. Or at least is a BC break.\n";
}
else {
echo "still " . $canvas->getImageIndex() . " as hasn't changed\n";
}
try {
$canvas->setImageIndex(3);
}
catch (ImagickException $ie) {
echo "Exception: ". $ie->getMessage() . "\n";
}
echo "Ok";
?>
--EXPECTF--
0
0
1
1
2
2
0
1
2
0
1
2
still 2 as hasn't changed
Exception: Unable to set image index
Ok
imagick-3.8.0/tests/294_Imagick_cannyEdgeImage.phpt 0000664 0001750 0001750 00000001151 14775775503 021045 0 ustar jakub jakub --TEST--
Test Imagick, cannyEdgeImage
--SKIPIF--
--FILE--
readImage($path);
$imagick->cannyEdgeImage(10, 4, 0.1, 0.5);
// $imagick->writeImage(__DIR__ . '/cannyEdgeImage_output_image.png');
$imagick->getImageBlob();
}
cannyEdgeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/295_Imagick_setSeed.phpt 0000664 0001750 0001750 00000001146 14775775503 017606 0 ustar jakub jakub --TEST--
Test Imagick, setSeed
--SKIPIF--
--FILE--
newPseudoImage(256, 256, "plasma:tomato-steelblue");
// $imagick->writeImage(__DIR__ . '/cannyEdgeImage_output_image.png');
// $imagick->getImageBlob();
Imagick::setSeed(50);
$imagick = new \Imagick();
$imagick->newPseudoImage(256, 256, "plasma:tomato-steelblue");
// TODO - compare images.
}
setSeed() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/296_Imagick_waveletDenoiseImage.phpt 0000664 0001750 0001750 00000001065 14775775503 022134 0 ustar jakub jakub --TEST--
Test Imagick, waveletDenoiseImage
--SKIPIF--
--FILE--
waveletDenoiseImage(5, 5);
$imagick->writeImage(__DIR__ . '/waveletDenoiseImage_output_image.png');
// $imagick->getImageBlob();
}
waveletDenoiseImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/297_Imagick_meanShiftImage.phpt 0000664 0001750 0001750 00000001040 14775775503 021066 0 ustar jakub jakub --TEST--
Test Imagick, meanShiftImage
--SKIPIF--
--FILE--
meanShiftImage(
10,
10,
5
);
$imagick->writeImage(__DIR__ . '/meanShiftImage_output_image.png');
// $imagick->getImageBlob();
}
meanShiftImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/298_Imagick_kmeansImage.phpt 0000664 0001750 0001750 00000001014 14775775503 020430 0 ustar jakub jakub --TEST--
Test Imagick, kmeansImage
--SKIPIF--
--FILE--
kmeansImage(
128,
10,
5
);
$imagick->writeImage(__DIR__ . '/kmeansImage_output_image.png');
// $imagick->getImageBlob();
}
kmeansImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/299_Imagick_rangeThresholdImage.phpt 0000664 0001750 0001750 00000001115 14775775503 022126 0 ustar jakub jakub --TEST--
Test Imagick, rangeThresholdImage
--SKIPIF--
--FILE--
rangeThresholdImage(
32,
64,
192,
228
);
$imagick->writeImage(__DIR__ . '/rangeThresholdImage_output_image.png');
// $imagick->getImageBlob();
}
rangeThresholdImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/300_Imagick_autoThresholdImage.phpt 0000664 0001750 0001750 00000001105 14775775503 021760 0 ustar jakub jakub --TEST--
Test Imagick, autoThresholdImage
--SKIPIF--
--FILE--
autoThresholdImage(Imagick::AUTO_THRESHOLD_OTSU);
$imagick->writeImage(__DIR__ . '/autoThresholdImage_output_image.png');
// $imagick->getImageBlob();
}
autoThresholdImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/301_Imagick_bilateralBlurImage.phpt 0000664 0001750 0001750 00000001100 14775775503 021713 0 ustar jakub jakub --TEST--
Test Imagick, bilateralBlurImage
--SKIPIF--
--FILE--
bilateralBlurImage(
5,
1,
2,
2
);
$imagick->writeImage(__DIR__ . '/bilateralBlurImage_output_image.png');
// $imagick->getImageBlob();
}
bilateralBlurImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/302_Imagick_claheImage.phpt 0000664 0001750 0001750 00000000702 14775775503 020213 0 ustar jakub jakub --TEST--
Test Imagick, claheImage
--SKIPIF--
--FILE--
claheImage(
10,
10,
8,
2
);
// $imagick->writeImage(__DIR__ . '/claheImage_output_image.png');
$imagick->getImageBlob();
}
claheImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/303_Imagick_averageImages.phpt 0000664 0001750 0001750 00000001427 14775775503 020742 0 ustar jakub jakub --TEST--
Test Imagick, averageImages
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:LOGO");
$imagick2 = new \Imagick();
$imagick2->newPseudoImage(640, 480, "gradient:black-white");
$imagick->addImage($imagick2);
$imagick->setIteratorIndex(0);
$result_imagick = $imagick->averageImages();
$result_imagick->setImageFormat('png');
$result_imagick->writeImage(__DIR__ . '/averageImages_output_image.png');
$result_imagick->getImageBlob();
}
averageImages() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/304_Imagick_is_imagemagick_borked.phpt 0000664 0001750 0001750 00000003404 14775775503 022457 0 ustar jakub jakub --TEST--
Test whether ImageMagick is producing valid images.
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:LOGO");
$transparency = new Imagick();
$transparency->newPseudoImage(640, 480, "xc:rgba(0,0,0,0)");
$draw = new \ImagickDraw();
$draw->setFillColor('white');
$draw->setStrokeColor('white');
$draw->circle(
320,
240,
500,
240
);
$transparency->drawImage($draw);
$transparency->blurImage(50, 15);
$transparency->writeImage(__DIR__ . "/304_output_trans.png");
$checkerboard = new Imagick();
$checkerboard->newPseudoImage(640, 480, "pattern:checkerboard");
$checkerboard->setImageFormat('png');
$output = clone $checkerboard;
$canvas = clone $imagick;
$canvas->compositeImage($transparency, \Imagick::COMPOSITE_COPYOPACITY, 0, 0);
$output->compositeImage($canvas, \Imagick::COMPOSITE_ATOP, 0, 0);
$output->writeImage(__DIR__ . "/304_output_before_softlight.png");
$output = clone $checkerboard;
$gradient = new Imagick();
$gradient->newPseudoImage(640, 480, 'gradient:#979797-#373737');
$canvas->compositeImage($gradient, Imagick::COMPOSITE_SOFTLIGHT, 0, 0);
$output->compositeImage($canvas, \Imagick::COMPOSITE_ATOP, 0, 0);
// TODO - we need to store a known good output and compare
// the result image against that.
// $output->writeImage(__DIR__ . "/304_output_with_softlight.png");
}
testOpacity() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/305_Imagick_complexImages.phpt 0000664 0001750 0001750 00000001217 14775775503 020776 0 ustar jakub jakub --TEST--
Test Imagick, complexImages
--SKIPIF--
--FILE--
newPseudoImage($imagick->getImageWidth(), $imagick->getImageHeight(), "gradient:black-white");
$imagick->addImage($multiply);
$imagick->complexImages(Imagick::COMPLEX_OPERATOR_MULTIPLY);
// $imagick->writeImage(__DIR__ . '/complexImages_output_image.png');
$imagick->getImageBlob();
}
complexImages() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/306_Imagick_interpolativeResizeImage.phpt 0000664 0001750 0001750 00000001037 14775775503 023214 0 ustar jakub jakub --TEST--
Test Imagick, interpolativeResizeImage
--SKIPIF--
--FILE--
interpolativeResizeImage(
320,
200,
Imagick::INTERPOLATE_CATROM
);
// $imagick->writeImage(__DIR__ . '/claheImage_output_image.png');
$imagick->getImageBlob();
}
interpolativeResizeImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/307_Imagick_levelImageColors.phpt 0000664 0001750 0001750 00000001004 14775775503 021431 0 ustar jakub jakub --TEST--
Test Imagick, levelImageColors
--SKIPIF--
--FILE--
levelImageColors(
"rgb(10, 10, 10)",
"rgb(240, 240, 240)",
false
);
// $imagick->writeImage(__DIR__ . '/levelImageColors_output_image.png');
$imagick->getImageBlob();
}
levelImageColors() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/308_Imagick_levelizeImage.phpt 0000664 0001750 0001750 00000000707 14775775503 020771 0 ustar jakub jakub --TEST--
Test Imagick, levelizeImage
--SKIPIF--
--FILE--
levelizeImage(0.1, 2.0, 0.95);
// $imagick->writeImage(__DIR__ . '/claheImage_output_image.png');
$imagick->getImageBlob();
}
levelizeImage();
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/309_Imagick_orderedDitherImage.phpt 0000664 0001750 0001750 00000000733 14775775503 021736 0 ustar jakub jakub --TEST--
Test Imagick, orderedDitherImage
--SKIPIF--
--FILE--
orderedDitherImage("o3x3,6");
// $imagick->writeImage(__DIR__ . '/claheImage_output_image.png');
$imagick->getImageBlob();
}
orderedDitherImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/310_Imagick_whiteBalanceImage.phpt 0000664 0001750 0001750 00000000607 14775775503 021530 0 ustar jakub jakub --TEST--
Test Imagick, whiteBalanceImage
--SKIPIF--
--FILE--
whiteBalanceImage();
$imagick->getImageBlob();
}
whiteBalanceImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/311_Imagick_channelFxImage.phpt 0000664 0001750 0001750 00000001757 14775775503 021060 0 ustar jakub jakub --TEST--
Test Imagick, channelFxImage
--SKIPIF--
--FILE--
exchange two channels (e.g. red<=>blue)
// => transfer a channel to another (e.g. red=>green)
// , separate channel operations (e.g. red, green)
// | read channels from next input image (e.g. red | green)
// ; write channels to next output image (e.g. red; green; blue)
function whiteBalanceImage() {
$imagick = new \Imagick(__DIR__ . '/Biter_500.jpg');
$result = $imagick->channelFxImage("red<=>blue");
// $result->writeImage(__DIR__ . '/complexImages_output_image.png');
$result->getImageBlob();
}
whiteBalanceImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/312_Imagick_colorThresholdImage.phpt 0000664 0001750 0001750 00000001035 14775775503 022133 0 ustar jakub jakub --TEST--
Test Imagick, colorThresholdImage
--SKIPIF--
--FILE--
colorThresholdImage(
"rgb(10, 10, 10)",
"rgb(240, 240, 240)"
);
// $imagick->writeImage(__DIR__ . '/colorThresholdImage_output_image.png');
$imagick->getImageBlob();
}
colorThresholdImage() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/314_Imagick_getBackgroundColor.phpt 0000664 0001750 0001750 00000001365 14775775503 021763 0 ustar jakub jakub --TEST--
Test Imagick, getBackgroundColor
--SKIPIF--
--FILE--
getBackgroundColor();
/** @var $background_color \ImagickPixel */
echo "Color is: " . $background_color->getColorAsString() . "\n";
$imagick->setBackgroundColor('red');
$background_color = $imagick->getBackgroundColor();
/** @var $background_color \ImagickPixel */
echo "Color is now: " . $background_color->getColorAsString() . "\n";
}
getBackgroundColor() ;
echo "Ok";
?>
--EXPECTF--
Color is: srgb(255,255,255)
Color is now: srgb(255,0,0)
Ok
imagick-3.8.0/tests/315_Imagick_getImageArtifacts.phpt 0000664 0001750 0001750 00000002435 14775775503 021570 0 ustar jakub jakub --TEST--
Test Imagick, getImageArtifacts
--SKIPIF--
--FILE--
getImageArtifacts();
// TODO - get a better test image with artifact data in it.
//
// $expectedEntries = [
// "exif:ApertureValue" => false,
// "exif:ColorSpace" => false,
// "exif:CustomRendered" => false,
// "exif:DateTime" => false,
// "exif:DateTimeDigitized" => false,
// "exif:DateTimeOriginal" => false,
// "exif:ExifOffset" => false,
// "exif:ExifVersion" => false,
// ];
//
// foreach ($artifacts as $key => $value) {
// if (array_key_exists($key, $expectedEntries) === true) {
// $expectedEntries[$key] = true;
// }
// }
//
// $any_failed = false;
// foreach ($expectedEntries as $key => $value) {
// if ($value !== true) {
// echo "Expected entry $key was not set\n";
// $any_failed = true;
// }
// }
// if ($any_failed === true) {
// var_dump($artifacts);
// }
$imagick->getImageBlob();
}
getImageArtifacts();
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/316_Imagick_getImageKurtosis.phpt 0000664 0001750 0001750 00000001415 14775775503 021471 0 ustar jakub jakub --TEST--
Test Imagick, getImageKurtosis
--SKIPIF--
--FILE--
getImageKurtosis();
check_value_posibilities(
$values,
"kurtosis",
[-0.9379261035010518, -0.70925995674921]
);
check_value_posibilities(
$values,
"skewness",
[0.4562517200972045, 0.56839010636614]
);
}
getImageKurtosis() ;
echo "Ok";
?>
--EXPECTF--
Value for 'kurtosis' is %f which is close enough to expected %f
Value for 'skewness' is %f which is close enough to expected %f
Ok imagick-3.8.0/tests/317_Imagick_getImageMean.phpt 0000664 0001750 0001750 00000001473 14775775503 020533 0 ustar jakub jakub --TEST--
Test Imagick, getImageMean
--SKIPIF--
--FILE--
getImageMean();
check_value_with_epsilon($values, "mean", 29267.518515000003, 0.2);
check_value_with_epsilon($values, "standard_deviation", 18075.35838235082, 0.2);
}
getImageMean();
echo "Ok";
?>
--EXPECTF--
Value for 'mean' is %f which is close enough to expected %f
Value for 'standard_deviation' is %f which is close enough to expected %f
Ok
imagick-3.8.0/tests/318_Imagick_getImageRange.phpt 0000664 0001750 0001750 00000001176 14775775503 020710 0 ustar jakub jakub --TEST--
Test Imagick, getImageRange
--SKIPIF--
--FILE--
newPseudoImage(320, 240, "gradient:red-blue");
$values = $imagick->getImageRange();
check_value($values, "minima", 0);
check_value($values, "maxima", 65535.0);
}
getImageRange() ;
echo "Ok";
?>
--EXPECTF--
Value for 'minima' is %f which is close enough to expected %f
Value for 'maxima' is %f which is close enough to expected %f
Ok
imagick-3.8.0/tests/319_Imagick_getInterpolateMethod.phpt 0000664 0001750 0001750 00000001315 14775775503 022334 0 ustar jakub jakub --TEST--
Test Imagick, getInterpolateMethod/setInterpolateMethod
--SKIPIF--
--FILE--
getInterpolateMethod();
echo "Interpolate method is " . $value . "\n";
$imagick->newPseudoImage(640, 480, "gradient:red-blue");
$imagick->setInterpolateMethod(Imagick::INTERPOLATE_BILINEAR);
$value = $imagick->getInterpolateMethod();
echo "Interpolate method is now " . $value . "\n";
}
getInterpolateMethod() ;
echo "Ok";
?>
--EXPECTF--
Interpolate method is 0
Interpolate method is now 5
Ok
imagick-3.8.0/tests/320_Imagick_getOptions.phpt 0000664 0001750 0001750 00000001614 14775775503 020332 0 ustar jakub jakub --TEST--
Test Imagick, getOptions
--SKIPIF--
--FILE--
getOptions();
if ($result !== []) {
echo "unexpected contents of options:\n";
var_dump($result);
}
$imagick->setOption("jpeg:preserve", "yes");
$result = $imagick->getOptions();
$expected = ["jpeg:preserve" => "yes"];
if ($result !== $expected) {
echo "unexpected contents of options:\n";
var_dump($result);
}
$imagick->deleteOption("jpeg:preserve");
$result = $imagick->getOptions();
if ($result !== []) {
echo "unexpected contents of options, failed to delete the set one:\n";
var_dump($result);
}
}
getOptions() ;
echo "Ok";
?>
--EXPECTF--
Ok
imagick-3.8.0/tests/321_Imagick_getOrientation.phpt 0000664 0001750 0001750 00000001143 14775775503 021170 0 ustar jakub jakub --TEST--
Test Imagick, getOrientation/setOrientation
--SKIPIF--
--FILE--
getOrientation();
echo "Orientation is $orientation\n";
$imagick->setOrientation(Imagick::ORIENTATION_LEFTBOTTOM);
$orientation = $imagick->getOrientation();
echo "Orientation is now $orientation\n";
}
getOrientation() ;
echo "Ok";
?>
--EXPECTF--
Orientation is 0
Orientation is now 8
Ok
imagick-3.8.0/tests/322_Imagick_getResolution.phpt 0000664 0001750 0001750 00000001241 14775775503 021040 0 ustar jakub jakub --TEST--
Test Imagick, getResolution
--SKIPIF--
--FILE--
getResolution();
echo "x is " . $result['x'] . "\n";
echo "y is " . $result['y'] . "\n";
$imagick->setResolution(120, 60);
$result = $imagick->getResolution();
echo "x is now " . $result['x'] . "\n";
echo "y is now " . $result['y'] . "\n";
$imagick->getImageBlob();
}
getResolution() ;
echo "Ok";
?>
--EXPECTF--
x is 72
y is 72
x is now 120
y is now 60
Ok
imagick-3.8.0/tests/323_Imagick_getType.phpt 0000664 0001750 0001750 00000000570 14775775503 017623 0 ustar jakub jakub --TEST--
Test Imagick, getType
--SKIPIF--
--FILE--
getType();
echo "Type is " . $type . "\n";
}
test_getType() ;
echo "Ok";
?>
--EXPECTF--
Type is 0
Ok
imagick-3.8.0/tests/324_Imagick_polynomialImage.phpt 0000664 0001750 0001750 00000001520 14775775503 021325 0 ustar jakub jakub --TEST--
Test Imagick, polynomialImage
--SKIPIF--
--FILE--
newPseudoImage(
$imagick->getImageWidth(),
$imagick->getImageHeight(),
"gradient:black-white"
);
$imagick->addImage($imagick_gradient);
$terms = [1, 1, 0.1, 0.1];
// is 2 x (number_terms + 1 (the constant).
$imagick->polynomialImage($terms);
$imagick->writeImage(__DIR__ . '/polynomialImage_output_image.png');
$imagick->getImageBlob();
}
polynomialImage() ;
echo "Ok";
?>
--CLEAN--
--EXPECTF--
Ok
imagick-3.8.0/tests/325_Imagick_setDepth.phpt 0000664 0001750 0001750 00000001215 14775775503 017761 0 ustar jakub jakub --TEST--
Test Imagick, setDepth
--SKIPIF--
--FILE--
setDepth(16);
$imagick->newPseudoImage(640, 480, "gradient:red-blue");
echo "Depth is " .$imagick->getImageDepth() . "\n";
// $imagick->getImageBlob();
// TODO - check that the depth has actually worked?
// this could be done by generating a gradient, and counting the unique
// numbers of colours, or by looking at gradient artifacts.
}
setDepth() ;
echo "Ok";
?>
--EXPECTF--
Depth is 16
Ok
imagick-3.8.0/tests/326_Imagick_setExtract.phpt 0000664 0001750 0001750 00000001172 14775775503 020332 0 ustar jakub jakub --TEST--
Test Imagick, setExtract
--SKIPIF--
--FILE--
setExtract("300x200+0+0");
$imagick->readImage(__DIR__ . '/Biter_500.jpg');
// $data = $imagick->getImageBlob();
//
// $new_imagick = new Imagick();
// $new_imagick->readImageBlob($data);
echo "Width is " . $imagick->getImageWidth() . "\n";
echo "Height is " . $imagick->getImageHeight() . "\n";
}
setExtract() ;
echo "Ok";
?>
--EXPECTF--
Width is 300
Height is 200
Ok
imagick-3.8.0/tests/327_Imagick_polaroidImage_basic.phpt 0000664 0001750 0001750 00000001220 14775775503 022114 0 ustar jakub jakub --TEST--
Test Imagick, polaroidImage
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagickDraw = new \ImagickDraw();
$font = findDefaultFont();
$imagickDraw->setFont($font);
$src1->polaroidImage($imagickDraw, 15);
$src1->setImageFormat('png');
$bytes = $src1->getImagesBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
polaroidImage() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/328_Imagick_polaroidImageWithTextAndMethod_basic.phpt 0000664 0001750 0001750 00000001422 14775775503 025406 0 ustar jakub jakub --TEST--
Test Imagick, polaroidWithTextAndMethod
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "magick:logo");
$imagickDraw = new \ImagickDraw();
$font = findDefaultFont();
$imagickDraw->setFont($font);
$src1->polaroidWithTextAndMethod(
$imagickDraw,
15,
"Hello world!",
Imagick::INTERPOLATE_SPLINE
);
$src1->setImageFormat('png');
$bytes = $src1->getImagesBlob();
if (strlen($bytes) <= 0) { echo "Failed to generate image.";}
}
polaroidWithTextAndMethod() ;
echo "Ok";
?>
--EXPECTF--
Ok imagick-3.8.0/tests/329_imagick_getImageBlob_empty.phpt 0000664 0001750 0001750 00000001057 14775775503 022010 0 ustar jakub jakub --TEST--
Imagick::getImageBlob behaviour on invalid images
--SKIPIF--
--FILE--
newPseudoImage(200, 200, "xc:red");
$result = $imagick->getImageBlob();
echo "Imagick failed to throw exception" . PHP_EOL;
} catch (ImagickException $e) {
echo "ImagickException: " . $e->getMessage() . PHP_EOL;
}
echo "Fin.\n";
?>
--EXPECTF--
ImagickException: Failed to get the image contents (empty or invalid image?)
Fin. imagick-3.8.0/tests/330_Imagick_newImage.phpt 0000664 0001750 0001750 00000001075 14775775503 017735 0 ustar jakub jakub --TEST--
Test Imagick, newImage
--SKIPIF--
--FILE--
newImage(100, 100, new ImagickPixel('red'), 'png');
// Image format case changed at some point in IM
echo strtolower($image->getImageFormat());
echo "\n";
$image = new Imagick();
$image->newImage(100, 100, 'blue', null);
try {
$image->getImageFormat();
echo "Failed to throw exception";
}
catch (ImagickException $ie) {
echo $ie->getMessage() . "\n";
}
echo "Ok";
?>
--EXPECTF--
png
Image has no format
Ok
imagick-3.8.0/tests/bug20636.phpt 0000664 0001750 0001750 00000001320 14775775503 015337 0 ustar jakub jakub --TEST--
Test PECL bug #20636
--SKIPIF--
--FILE--
newImage(0, 0, '#dddddd', 'png' );
try {
$image->roundCorners(5, 5);
echo "fail\n";
} catch (ImagickException $e) {
echo "success\n";
}
?>
--EXPECTF--
success
imagick-3.8.0/tests/bug21229.phpt 0000664 0001750 0001750 00000001262 14775775503 015343 0 ustar jakub jakub --TEST--
Test PECL bug #21229
--SKIPIF--
--FILE--
test = $value;
return $this;
}
public function getTestValue() {
return $this->test;
}
}
$test = new ImagickTest("magick:logo");
$test->setTestValue("test value");
echo "Value: " , $test->getTestValue() , PHP_EOL;
var_dump($test->width, $test->height);
echo "OK" , PHP_EOL;
?>
--EXPECTF--
Value: test value
int(112233)
int(%d)
OK imagick-3.8.0/tests/bug59378.phpt 0000664 0001750 0001750 00000002136 14775775503 015364 0 ustar jakub jakub --TEST--
Test PHP bug #59378 writing to php://memory is incomplete
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "LOGO:");
$imagick->setFormat("png");
$fp = fopen("php://memory", 'r+');
$imagick->writeImageFile($fp);
rewind($fp);
$memoryBlob = stream_get_contents($fp);
fclose($fp);
//This test depends on getImageBlob working correctly.
$imageBlob = $imagick->getImageBlob();
//Read the images from the data blobs.
$imageReopened = new Imagick();
$imageReopened->readImageBlob($imageBlob);
$memoryReopened = new Imagick();
$memoryReopened->readImageBlob($memoryBlob);
//Compare to see if they are identical.
$result = $imageReopened->compareImages($memoryReopened, \Imagick::METRIC_MEANABSOLUTEERROR);
if ($result[1] == 0) {
echo "Reopened images are identical.";
}
else {
echo "Error, reopened images have changed.";
var_dump($result);
}
?>
--EXPECTF--
Reopened images are identical.
imagick-3.8.0/tests/bug59378_windows.phpt 0000664 0001750 0001750 00000002206 14775775503 017134 0 ustar jakub jakub --TEST--
Test PHP bug #59378 writing to php://temp is incomplete
--SKIPIF--
--FILE--
newPseudoImage(640, 480, "LOGO:");
$imagick->setFormat("png");
// Although the bug was about php://memory, that isn'--TEST--
// available to use as a filehandle on Windows, so may as well
// just test php://temp instead.
$fp = fopen("php://temp", 'r+');
$imagick->writeImageFile($fp);
rewind($fp);
$memoryBlob = stream_get_contents($fp);
fclose($fp);
//This test depends on getImageBlob working correctly.
$imageBlob = $imagick->getImageBlob();
//Read the images from the data blobs.
$imageReopened = new Imagick();
$imageReopened->readImageBlob($imageBlob);
$memoryReopened = new Imagick();
$memoryReopened->readImageBlob($memoryBlob);
//Compare to see if they are identical.
$result = $imageReopened->compareImages($memoryReopened, \Imagick::METRIC_MEANABSOLUTEERROR);
if ($result[1] == 0) {
echo "Reopened images are identical.";
}
else {
echo "Error, reopened images have changed.";
var_dump($result);
}
?>
--EXPECTF--
Reopened images are identical.
imagick-3.8.0/tests/bug64015.phpt 0000664 0001750 0001750 00000001004 14775775503 015335 0 ustar jakub jakub --TEST--
Test PHP bug #64015
--SKIPIF--
--FILE--
getImageLength());
// Both should return filesize in bytes.
var_dump($im->getImageLength());
var_dump($im->getImageSize());
// All cases below now return 0;
$cloned_im = clone $im;
var_dump($im->getImageLength());
var_dump($im->getImageSize());
echo "OK" , PHP_EOL;
?>
--EXPECTF--
int(2523)
int(2523)
int(2523)
int(2523)
int(2523)
OK imagick-3.8.0/tests/bug_66098.phpt 0000664 0001750 0001750 00000000337 14775775503 015521 0 ustar jakub jakub --TEST--
Bug #66098 Check that there is no segfault from zval_addref_p
--SKIPIF--
foobar;
echo "OK";
?>
--EXPECT--
OK imagick-3.8.0/tests/bug_71742.phpt 0000664 0001750 0001750 00000001761 14775775503 015513 0 ustar jakub jakub --TEST--
Bug #71742 polyline touched by array_walk
--SKIPIF--
--FILE--
2 * $index,
'y' => pow($index, 2)
);
}
$callback = function (&$coordinate) {
$coordinate['y'] = 200 - $coordinate['y'] / 50;
};
array_walk($coordinates, $callback);
$imagick = new Imagick();
$imagick->newImage(200, 200, "white");
$draw = new ImagickDraw ();
$draw->setFillColor("none");
$draw->setStrokeColor("black");
//Fatal error in PHP 7, but not in PHP <= 5.6
$draw->polyline($coordinates);
$draw->translate(0, -20);
////Works in PHP 7
$draw->polyline (array_values($coordinates));
$imagick->drawImage($draw);
//$imagick->writeImage(getcwd()."/test.png");
$imagick->setImageFormat('png');
$bytes = $imagick->getImageBlob();
if (strlen($bytes) <= 0) {
echo "Failed to generate image.";
}
//$imagick->writeImage("./bugTest.png");
echo "Ok";
?>
--EXPECT--
Ok imagick-3.8.0/tests/bug_72226.phpt 0000664 0001750 0001750 00000001044 14775775503 015503 0 ustar jakub jakub --TEST--
Allow Imagick exceptions to be extended.
--SKIPIF--
--FILE--
--EXPECTF--
imagick-3.8.0/tests/bug_73840.phpt 0000664 0001750 0001750 00000002005 14775775503 015504 0 ustar jakub jakub --TEST--
ImagickPixel iterator
--SKIPIF--
--XFAIL--
This needs a significant amount of work to fix. The issue is the iterator object is going out of scope and being freed, but the row object still has a reference to that pixel iterator, internally in ImageMagick. We need to stop the pixeliterator being freed while the row is still active.
--FILE--
newImage(1, 1, 'black');
//
//// This works fine
//$it = $im->getPixelIterator();
//$row = $it->getCurrentIteratorRow();
//$rgb = $row[0]->getColor();
//
//$expected = array (
// "r" => 0,
// "g" => 0,
// "b" => 0,
// "a" => 1,
//);
//
//if ($rgb !== $expected) {
// echo "values are incorrect:\n";
// var_dump($rgb);
//}
//
//// This crashes with SIGABRT
//$row = $im->getPixelIterator()->getCurrentIteratorRow();
//$rgb = $row[0]->getColor();
//
//if ($rgb !== $expected) {
// echo "values are incorrect:\n";
// var_dump($rgb);
//}
echo "Not ok";
?>
--EXPECTF--
Not ok imagick-3.8.0/tests/bug81235.phpt 0000664 0001750 0001750 00000000432 14775775503 015344 0 ustar jakub jakub --TEST--
Bug #81235 (Imagick::newPseudoImage gives open_basedir restriction error)
--SKIPIF--
--FILE--
newPseudoImage(10, 10, "canvas:white");
?>
--EXPECT--
imagick-3.8.0/tests/functions.inc 0000664 0001750 0001750 00000012663 14775775503 016003 0 ustar jakub jakub = 0) {
return true;
}
return false;
}
/**
* On some systems, where the standard fonts aren't available, trying
* to draw any text fails as the ImageMagick default font is null.
*
* This function just find a 'sensible' font to use, either from the
* preferred list, or just the first one from queryFonts(). That 'probably'
* is the right thing to do, as it makes the tests more stable.
*/
function findDefaultFont()
{
$knownFonts = [
'Courier',
'Helvetica',
'Times-Roman',
'Liberation-Mono',
'Utopia',
];
$fontList = \Imagick::queryFonts();
foreach ($knownFonts as $knownFont) {
if (in_array($knownFont, $fontList, true) === true) {
return $knownFont;
}
}
if (count($fontList) !== 0) {
return $fontList[0];
}
throw new \Exception("No fonts available on system, apparently.");
}
// Find and set a font for the Imagick object
function setFontForImagick(\Imagick $imagick)
{
$font = findDefaultFont();
$imagick->setFont($font);
}
// Find and set a font for the ImagickDraw object
function setFontForImagickDraw(\ImagickDraw $imagickDraw)
{
$font = findDefaultFont();
$imagickDraw->setFont($font);
}
/**
* Checks that a named value exists in an array and it matches
* an expected value.
*/
function check_value(array $values, $name, $expected_value)
{
if (array_key_exists($name, $values) !== true) {
$message = "Expected key '$name' not set. Array contains:\n";
$message .= var_export($values, true);
throw new \Exception($message);
}
$value = $values[$name];
$epsilon = 0.01;
if (($value < $expected_value - $epsilon) || ($value > $expected_value + $epsilon)) {
$message = "Value for $name doesn't match expected. Expected: $expected_value, actual: $value";
throw new \Exception($message);
}
echo "Value for '$name' is $value which is close enough to expected $expected_value\n";
}
/**
* Checks that a named value exists in an array and it matches
* one of a number of expected values.
* This function exists because the expected values for Kurtosis can
* change when the underlying maths changes: https://github.com/ImageMagick/ImageMagick/issues/6924
*/
function check_value_posibilities(array $values, $name, array $expected_values)
{
if (array_key_exists($name, $values) !== true) {
$message = "Expected key '$name' not set. Array contains:\n";
$message .= var_export($values, true);
throw new \Exception($message);
}
$value = $values[$name];
$epsilon = 0.01;
foreach ($expected_values as $expected_value) {
if (($value > $expected_value - $epsilon) && ($value < $expected_value + $epsilon)) {
echo "Value for '$name' is $value which is close enough to expected $expected_value\n";
return;
}
}
$expected_string = implode(", ", $expected_values);
$message = "Value for $name doesn't match expected possibilities. Expected one of: $expected_string, actual: $value";
throw new \Exception($message);
}
function check_value_with_epsilon(array $values, $name, $expected_value, $epsilon)
{
if (array_key_exists($name, $values) !== true) {
$message = "Expected key '$name' not set. Array contains:\n";
$message .= var_export($values, true);
throw new \Exception($message);
}
$value = $values[$name];
if (($value < $expected_value - $epsilon) || ($value > $expected_value + $epsilon)) {
$message = "Value for $name doesn't match expected. Expected: $expected_value, actual: $value, epsilon = $epsilon";
throw new \Exception($message);
}
echo "Value for '$name' is $value which is close enough to expected $expected_value\n";
} imagick-3.8.0/tests/github_174.phpt 0000664 0001750 0001750 00000000442 14775775503 016042 0 ustar jakub jakub --TEST--
Imagick::resizeImage prevent 0 width/height images
--SKIPIF--
--FILE--
newPseudoImage(1, 1000, "xc:red");
$i->resizeImage(0, 250, 0, 1);
echo $i->getImageWidth(); // should be 1
?>
--EXPECTF--
1
imagick-3.8.0/tests/houghline_input_image.png 0000664 0001750 0001750 00000003110 14775775503 020334 0 ustar jakub jakub ‰PNG
IHDR ô , e±ú gAMA ±üa cHRM z&