Файловый менеджер - Редактировать - /var/www/html/libraries/foundry/vendor/intervention/image/src/Intervention/Image/Imagick/Decoder.php
Ðазад
<?php /** * @package Foundry * @copyright Copyright (C) Stack Ideas Sdn Bhd. All rights reserved. * @license GNU/GPL, see LICENSE.php * Foundry is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * See COPYRIGHT.php for copyright notices and details. */ namespace Intervention\Image\Imagick; defined('_JEXEC') or die('Unauthorized Access'); use Intervention\Image\AbstractDecoder; use Intervention\Image\Exception\NotReadableException; use Intervention\Image\Exception\NotSupportedException; use Intervention\Image\Image; class Decoder extends AbstractDecoder { /** * Initiates new image from path in filesystem * * @param string $path * @return \Intervention\Image\Image */ public function initFromPath($path) { $core = new \Imagick; try { $core->setBackgroundColor(new \ImagickPixel('transparent')); $core->readImage($path); $core->setImageType(defined('\Imagick::IMGTYPE_TRUECOLORALPHA') ? \Imagick::IMGTYPE_TRUECOLORALPHA : \Imagick::IMGTYPE_TRUECOLORMATTE); } catch (\ImagickException $e) { throw new \Intervention\Image\Exception\NotReadableException( "Unable to read image from path ({$path}).", 0, $e ); } // build image $image = $this->initFromImagick($core); $image->setFileInfoFromPath($path); return $image; } /** * Initiates new image from GD resource * * @param Resource $resource * @return \Intervention\Image\Image */ public function initFromGdResource($resource) { throw new NotSupportedException( 'Imagick driver is unable to init from GD resource.' ); } /** * Initiates new image from Imagick object * * @param Imagick $object * @return \Intervention\Image\Image */ public function initFromImagick(\Imagick $object) { // currently animations are not supported // so all images are turned into static $object = $this->removeAnimation($object); // reset image orientation $object->setImageOrientation(\Imagick::ORIENTATION_UNDEFINED); return new Image(new Driver, $object); } /** * Initiates new image from binary data * * @param string $data * @return \Intervention\Image\Image */ public function initFromBinary($binary) { $core = new \Imagick; try { $core->setBackgroundColor(new \ImagickPixel('transparent')); $core->readImageBlob($binary); } catch (\ImagickException $e) { throw new NotReadableException( "Unable to read image from binary data.", 0, $e ); } // build image $image = $this->initFromImagick($core); $image->mime = finfo_buffer(finfo_open(FILEINFO_MIME_TYPE), $binary); return $image; } /** * Turns object into one frame Imagick object * by removing all frames except first * * @param Imagick $object * @return Imagick */ private function removeAnimation(\Imagick $object) { $imagick = new \Imagick; foreach ($object as $frame) { $imagick->addImage($frame->getImage()); break; } $object->destroy(); return $imagick; } }
| ver. 1.1 | |
.
| PHP 8.4.18 | Ð“ÐµÐ½ÐµÑ€Ð°Ñ†Ð¸Ñ Ñтраницы: 0 |
proxy
|
phpinfo
|
ÐаÑтройка