Próbuję zmienić rozmiar pliku PDF (który przekonwertowałem z obrazu) i próbuję zmienić rozmiar (zwiększyć) obraz w jego stosunku.
$imagick = new Imagick();
$imagick->readImage($path);
$imagick->resizeImage(595,842,Imagick::FILTER_CUBIC, 1, true);
// and this:
// $imagick->adaptiveResizeImage(595,842, true);
$imagick->setImageFormat("pdf");
$imagick->writeImage($endpath);
Ale obraz robi się niewyraźny. Jednak nie jest to obraz o złej jakości, a obraz może mieć taką wielkość bez zakłóceń. (Na przykład, jeśli pozwolę Twilio to zrobić (za pomocą faksu api), ten sam obraz może dostać się do tej skali).
Próbowałem również z wprowadzeniem parametru rozmycia resizeImage między "1" i "0,1"
Oryginalny pdf (możesz też zobacz tutaj, jeśli chcesz spróbować):
Mój rozmiar pdf (z rozmyciem 1):
Moja "zmieniona adaptacyjnie" pdf:
Odpowiedzi:
0 dla odpowiedzi № 1Zaczynasz od bardzo małego pliku PDF, jeśli zostanie zrasteryzowany i powiększony. To by spowodowało rozmycie. Ale jeśli zwiększysz gęstość wejściową, działa to dobrze dla mnie w ImageMagick jako
convert -density 600 input.pdf -resize 595x842 result.png
Nie znam dobrze Imagicka, ale spróbuj tego. Zmniejsz wartość rozmycia w resizeImage zgodnie z potrzebami, aby było ostrzejsze.
$imagick = new Imagick();
$imagick->readImage($path);
$imagick->Imagick::setImageResolution( 600, 600 );
$imagick->resizeImage(595,842,Imagick::FILTER_CATROM, 1, true);
$imagick->setImageFormat("pdf");
$imagick->writeImage($endpath);