如何使用imagick的writeImage()函数?

TK1*_*123 8 php imagemagick image-processing imagick

如果我将脚本保存在与被操作的图像相同的目录中,则此方法有效.结果图像"foo.jpg"也在同一位置生成.

<?php

$im = new imagick('image.jpg');
$im->thumbnailImage( 200, 0);
$im->writeImage("foo.jpg");

?>
Run Code Online (Sandbox Code Playgroud)

但是,如果脚本位于一个位置并且我希望使用的图像位于另一个位置并且我希望将缩略图保存到的位置在其他位置,如何指定这些路径呢?

做这样的事情不起作用:

$im = new imagick('path/to/image.jpg');
Run Code Online (Sandbox Code Playgroud)

小智 5

可能是一些文件系统问题.首先尝试在php中获取文件指针并检查是否存在任何问题

$fileHandle = fopen("path/to/image.jpg", "w");
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用Imagick功能(版本6.3.6或更新版本);

$im->writeImageFile($filehandle);
Run Code Online (Sandbox Code Playgroud)