⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.19
Server IP:
178.33.27.10
Server:
Linux cpanel.dev-unit.com 3.10.0-1160.108.1.el7.x86_64 #1 SMP Thu Jan 25 16:17:31 UTC 2024 x86_64
Server Software:
Apache/2.4.57 (Unix) OpenSSL/1.0.2k-fips
PHP Version:
8.2.11
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
proc
/
self
/
root
/
usr
/
local
/
src
/
imagick
/
tests
/
View File Name :
234_Tutorial_edgeExtend_basic.phpt
--TEST-- Test Tutorial, edgeExtend --SKIPIF-- <?php $imageMagickRequiredVersion=0x675; require_once(dirname(__FILE__) . '/skipif.inc'); ?> --FILE-- <?php $virtualPixelType = 5; function edgeExtend($virtualPixelType) { $imagick = new \Imagick(); $imagick->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