Imagick::pingImage

(PECL imagick 2.0.0)

Imagick::pingImageFetch basic attributes about the image

Описание

bool Imagick::pingImage ( string $filename )

This method can be used to query image width, height, size, and format without reading the whole image in to memory.

Список параметров

filename

The filename to read the information from.

Возвращаемые значения

В случае успешной работы возвращает TRUE.

Коментарии

Actually the previous example causes file to be loaded twice on Imagick's stack, proper way to do this is:

<?php

$file 
'foo.jpg';
$image = new Imagick();
$image->pingImage($file);
$image_info $image->identifyImage();

?>
2008-05-21 10:12:38
http://php5.kiev.ua/manual/ru/imagick.pingimage.html
Автор:
If you don't sure whether the file exists or not or maybe it's broken, then you should use try - catch construction. It prevents code fails, when code stops execution after call of pingImage (if the file doesn't exist or it's broken).

<?php
$im 
= new Imagick();
try {
   
$im->pingImage('3.jpg');
}
catch(
ImagickException $e) {
    echo 
"image doesn't exist";
}
?>
2012-09-01 18:06:04
http://php5.kiev.ua/manual/ru/imagick.pingimage.html
Just a warning: don't use Eero Niemi's code (identifyImage with pingImage) if you just want to get the image width and height, because it will actually be slower than reading the whole image into memory - about 10x slower!

Correct code should be:

<?php

  $image 
= new Imagick();
 
$image->pingImage($file);
 
$width $image->getImageWidth();
 
$height $image->getImageHeight();

?>

(this is around 15 times faster than reading the image in memory)
2013-08-01 02:41:16
http://php5.kiev.ua/manual/ru/imagick.pingimage.html
Автор:
Also you can do:

$image = new Imagick($file);
$width = $image->getImageWidth();
$height = $image->getImageHeight();

to catch the witdth/height parameters without use pingImage() initialization.
2015-09-18 14:08:43
http://php5.kiev.ua/manual/ru/imagick.pingimage.html

    Поддержать сайт на родительском проекте КГБ