Server IP : 23.254.227.96 / Your IP : 216.73.216.120 Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64 User : viralblo ( 1001) PHP Version : 8.1.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/viralblo/instantblog/vendor/intervention/image/src/Intervention/Image/Gd/ |
Upload File : |
<?php namespace Intervention\Image\Gd; use Intervention\Image\Exception\NotSupportedException; use Intervention\Image\Image; class Driver extends \Intervention\Image\AbstractDriver { /** * Creates new instance of driver * * @param Decoder $decoder * @param Encoder $encoder */ public function __construct(Decoder $decoder = null, Encoder $encoder = null) { if ( ! $this->coreAvailable()) { throw new NotSupportedException( "GD Library extension not available with this PHP installation." ); } $this->decoder = $decoder ? $decoder : new Decoder; $this->encoder = $encoder ? $encoder : new Encoder; } /** * Creates new image instance * * @param int $width * @param int $height * @param mixed $background * @return \Intervention\Image\Image */ public function newImage($width, $height, $background = null) { // create empty resource $core = imagecreatetruecolor($width, $height); $image = new Image(new static, $core); // set background color $background = new Color($background); imagefill($image->getCore(), 0, 0, $background->getInt()); return $image; } /** * Reads given string into color object * * @param string $value * @return AbstractColor */ public function parseColor($value) { return new Color($value); } /** * Checks if core module installation is available * * @return boolean */ protected function coreAvailable() { return (extension_loaded('gd') && function_exists('gd_info')); } /** * Returns clone of given core * * @return mixed */ public function cloneCore($core) { $width = imagesx($core); $height = imagesy($core); $clone = imagecreatetruecolor($width, $height); imagealphablending($clone, false); imagesavealpha($clone, true); $transparency = imagecolorallocatealpha($clone, 0, 0, 0, 127); imagefill($clone, 0, 0, $transparency); imagecopy($clone, $core, 0, 0, 0, 0, $width, $height); return $clone; } }