Merge branch 'OutputImageException' into development
This commit is contained in:
@@ -46,7 +46,13 @@ $image = BASE . LAYOUT . CONTENT_PATH . IMAGES . 'no_picture_square.jpg';
|
||||
$cache_folder = BASE . LAYOUT . CONTENT_PATH . CACHE . IMAGES;
|
||||
$web_folder = LAYOUT . CACHE . IMAGES;
|
||||
// rotate image first
|
||||
$_image->correctImageOrientation($image);
|
||||
try {
|
||||
$_image->correctImageOrientation($image);
|
||||
} catch (\UnexpectedValueException $e) {
|
||||
print "Message:<br>" . $e->getMessage() . "<br>" . $e . "<br>";
|
||||
} catch (\RuntimeException $e) {
|
||||
print "Message:<br>" . $e->getMessage() . "<br>" . $e . "<br>";
|
||||
}
|
||||
// thumbnail tests
|
||||
echo "<div>CLASS->CREATETHUMBNAILSIMPLE: "
|
||||
. basename($image) . ": WIDTH: $thumb_width<br><img src="
|
||||
@@ -54,7 +60,13 @@ echo "<div>CLASS->CREATETHUMBNAILSIMPLE: "
|
||||
// static
|
||||
$image = BASE . LAYOUT . CONTENT_PATH . IMAGES . 'no_picture.jpg';
|
||||
// rotate image first
|
||||
$image_class::correctImageOrientation($image);
|
||||
try {
|
||||
$image_class::correctImageOrientation($image);
|
||||
} catch (\UnexpectedValueException $e) {
|
||||
print "Message:<br>" . $e->getMessage() . "<br>" . $e . "<br>";
|
||||
} catch (\RuntimeException $e) {
|
||||
print "Message:<br>" . $e->getMessage() . "<br>" . $e . "<br>";
|
||||
}
|
||||
// thumbnail tests
|
||||
echo "<div>S::CREATETHUMBNAILSIMPLE: "
|
||||
. basename($image) . ": WIDTH: $thumb_width<br><img src="
|
||||
@@ -87,7 +99,13 @@ foreach ($images as $image) {
|
||||
echo "<div><b>IMAGE INFO</b>: " . $height . "x" . $width . ", TYPE: "
|
||||
. \CoreLibs\Debug\Support::dumpVar($img_type) . " [" . $finfo->file($image) . "]</div>";
|
||||
// rotate image first
|
||||
Image::correctImageOrientation($image);
|
||||
try {
|
||||
Image::correctImageOrientation($image);
|
||||
} catch (\UnexpectedValueException $e) {
|
||||
print "Message:<br>" . $e->getMessage() . "<br>" . $e . "<br>";
|
||||
} catch (\RuntimeException $e) {
|
||||
print "Message:<br>" . $e->getMessage() . "<br>" . $e . "<br>";
|
||||
}
|
||||
// thumbnail tests
|
||||
echo "<div>" . basename($image) . ": WIDTH: $thumb_width<br><img src="
|
||||
. Image::createThumbnailSimple($image, $thumb_width, 0, $cache_folder, $web_folder) . "></div>";
|
||||
|
||||
@@ -470,12 +470,20 @@ class Image
|
||||
*
|
||||
* @param string $filename path + filename to rotate. This file must be writeable
|
||||
* @return void
|
||||
* @throws \RuntimeException if exit_read_data is not found
|
||||
* @throws \UnexpectedValueException if file name not writeable or file name not found
|
||||
*/
|
||||
public static function correctImageOrientation(string $filename): void
|
||||
{
|
||||
// function exists & file is writeable, else do nothing
|
||||
if (!function_exists('exif_read_data') || !is_writeable($filename)) {
|
||||
return;
|
||||
if (!function_exists('exif_read_data')) {
|
||||
throw new \RuntimeException('Function \'exit_read_data\' does not exist');
|
||||
}
|
||||
if (!file_exists($filename) || !is_file($filename)) {
|
||||
throw new \UnexpectedValueException('Missing image file: ' . $filename);
|
||||
}
|
||||
if (!is_writeable($filename)) {
|
||||
throw new \UnexpectedValueException('File name is not writeable: ' . $filename);
|
||||
}
|
||||
[$inc_width, $inc_height, $img_type] = getimagesize($filename) ?: [0, 0, null];
|
||||
// add @ to avoid "file not supported error"
|
||||
|
||||
Reference in New Issue
Block a user