Imagick::deskewImage

(No version information available, might only be in Git)

Imagick::deskewImageRemoves skew from the image

Опис

public bool Imagick::deskewImage ( float $threshold )

This method can be used to remove skew from for example scanned images where the paper was not properly placed on the scanning surface. Цей метод доступний якщо Imagick був зібраний з версією ImageMagick 6.4.5 або новішою.

Параметри

threshold

Deskew threshold

Значення, що повертаються

Приклади

Приклад #1 Imagick::deskewImage()

<?php
function deskewImage($threshold) {
    
$imagick = new \Imagick(realpath("images/NYTimes-Page1-11-11-1918.jpg"));
    
$deskewImagick = clone $imagick;
    
    
//This is the only thing required for deskewing.
    
$deskewImagick->deskewImage($threshold);

    
//The rest of this example is to make the result obvious - because
    //otherwise the result is not obvious.
    
$trim 9;

    
$deskewImagick->cropImage($deskewImagick->getImageWidth() - $trim$deskewImagick->getImageHeight(), $trim0);
    
$imagick->cropImage($imagick->getImageWidth() - $trim$imagick->getImageHeight(), $trim0);
    
$deskewImagick->resizeimage($deskewImagick->getImageWidth() / 2$deskewImagick->getImageHeight() / 2, \Imagick::FILTER_LANCZOS1);
    
$imagick->resizeimage($imagick->getImageWidth() / 2$imagick->getImageHeight() / 2, \Imagick::FILTER_LANCZOS1);
    
$newCanvas = new \Imagick();
    
$newCanvas->newimage($imagick->getImageWidth() + $deskewImagick->getImageWidth() + 20$imagick->getImageHeight(), 'red''jpg');
    
$newCanvas->compositeimage($imagick, \Imagick::COMPOSITE_COPY50);
    
$newCanvas->compositeimage($deskewImagick, \Imagick::COMPOSITE_COPY$imagick->getImageWidth() + 100);

    
header("Content-Type: image/jpg");
    echo 
$newCanvas->getImageBlob();
}

?>

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top