想象一下:从路径打开文件,调整大小,保存到文件夹

时间:2015-11-05 12:16:52

标签: php image-processing imagemagick imagick

我试图将几张图像合并成一张大图像,但第一道障碍实际上只是让图像打开。

我正在尝试执行以下操作:

  1. 从路径中打开图片
  2. 使用指定的尺寸
  3. 调整尺寸
  4. 将其保存到当前文件夹
  5. 我有以下内容:

    define('WIDTH',  600);
    define('HEIGHT', 800);
    
    $img = new Imagick();
    $img->readImage('dress.jpg');
    $img->writeImage('image1.png');
    

    我可以保存图像,但我不知道在哪里添加WIDTHHEIGHT定义?

    我尝试了以下操作:

    $img->newImage(WIDTH, HEIGHT, $img);
    

1 个答案:

答案 0 :(得分:0)

$img = new Imagick();
$img->readImage('dress.jpg');

$img->resizeImage(WIDTH, HEIGHT, Imagick::FILTER_LANCZOS, 1);

$img->writeImage('image1.png');

使用new Imagick()“创建”图像资源后,您正在该资源中“正常工作”。 readImage()读取当前存在于资源中的图像 - 之后,您可以调整资源大小并在工作完成后将其写出。

有关详细信息,请参阅文档Imagick::resizeImage()

使用new Imagick(WIDTH, HEIGHT)创建一个具有给定大小的空画布的图像资源。