(No version information available, might only be in Git)
Imagick::deskewImage — Elimina la torción de la imagen
$threshold
) : boolEeste método se puede usar para eliminar la torción de, por ejemplo, imágenes escaneadas donde el papel no estaba debidamente colocado en la superfice del escáner. Este método está disponible si Imagick ha sido compilado con la versión 6.4.5 o superior de ImageMagick.
threshold
Umbral de detorción
Ejemplo #1 Imagick::deskewImage()
<?php
function deskewImage($threshold) {
$imagick = new \Imagick(realpath("images/NYTimes-Page1-11-11-1918.jpg"));
$deskewImagick = clone $imagick;
//Esto es lo único que se requiere para eliminar la torción.
$deskewImagick->deskewImage($threshold);
//El resto de este ejemplo es para hacer el resultado obvio, ya que
//de lo contrario no sería obvio.
$trim = 9;
$deskewImagick->cropImage($deskewImagick->getImageWidth() - $trim, $deskewImagick->getImageHeight(), $trim, 0);
$imagick->cropImage($imagick->getImageWidth() - $trim, $imagick->getImageHeight(), $trim, 0);
$deskewImagick->resizeimage($deskewImagick->getImageWidth() / 2, $deskewImagick->getImageHeight() / 2, \Imagick::FILTER_LANCZOS, 1);
$imagick->resizeimage($imagick->getImageWidth() / 2, $imagick->getImageHeight() / 2, \Imagick::FILTER_LANCZOS, 1);
$newCanvas = new \Imagick();
$newCanvas->newimage($imagick->getImageWidth() + $deskewImagick->getImageWidth() + 20, $imagick->getImageHeight(), 'red', 'jpg');
$newCanvas->compositeimage($imagick, \Imagick::COMPOSITE_COPY, 5, 0);
$newCanvas->compositeimage($deskewImagick, \Imagick::COMPOSITE_COPY, $imagick->getImageWidth() + 10, 0);
header("Content-Type: image/jpg");
echo $newCanvas->getImageBlob();
}
?>