:octocat: check for loaded extensions

This commit is contained in:
codemasher
2020-11-18 17:09:13 +01:00
parent 6ecb09f01b
commit dcf125a8b9
2 changed files with 33 additions and 1 deletions
+17 -1
View File
@@ -12,7 +12,9 @@
namespace chillerlan\QRCode\Output;
use chillerlan\QRCode\QRCode;
use chillerlan\QRCode\Data\QRMatrix;
use chillerlan\QRCode\{QRCode, QRCodeException};
use chillerlan\Settings\SettingsContainerInterface;
use Exception;
use function array_values, base64_encode, call_user_func, count, imagecolorallocate, imagecolortransparent,
@@ -42,6 +44,20 @@ class QRImage extends QROutputAbstract{
*/
protected $image;
/**
* @inheritDoc
*
* @throws \chillerlan\QRCode\QRCodeException
*/
public function __construct(SettingsContainerInterface $options, QRMatrix $matrix){
if(!extension_loaded('gd')){
throw new QRCodeException('ext-gd not loaded'); // @codeCoverageIgnore
}
parent::__construct($options, $matrix);
}
/**
* @inheritDoc
*/
+16
View File
@@ -12,6 +12,9 @@
namespace chillerlan\QRCode\Output;
use chillerlan\QRCode\Data\QRMatrix;
use chillerlan\QRCode\QRCodeException;
use chillerlan\Settings\SettingsContainerInterface;
use Imagick, ImagickDraw, ImagickPixel;
use function is_string;
@@ -29,6 +32,19 @@ class QRImagick extends QROutputAbstract{
*/
protected $imagick;
/**
* @inheritDoc
* @throws \chillerlan\QRCode\QRCodeException
*/
public function __construct(SettingsContainerInterface $options, QRMatrix $matrix){
if(!extension_loaded('imagick')){
throw new QRCodeException('ext-imagick not loaded'); // @codeCoverageIgnore
}
parent::__construct($options, $matrix);
}
/**
* @inheritDoc
*/