Imagick::writeImageFile()函数是PHP中的内置函数,用于将图像序列写入打开的文件句柄。必须使用fopen打开手柄。
用法:
bool Imagick::writeImageFile( resource $filehandle, string $format )
参数:该函数接受上述和以下描述的两个参数:
$filehandle:它指定文件句柄。
$format (Optional):它指定图像的格式。默认值从句柄的文件名中获取。
返回值:成功时此函数返回TRUE。
异常:该函数在错误时引发ImagickException。
下面给出的程序说明了PHP中的Imagick::writeImageFile()函数:
程序1:
// Create a new imagick object
$imagick = new Imagick(
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png');
// Create a file handle with read/write access
$myfile = 'writeimagefile.png';
$handle = fopen($myfile, 'w+');
// Write image to filehandle without format
$imagick->writeImageFile($handle);
// Get image from filehandle
$newImage = new Imagick();
$newImage->readImageFile($handle);
header("Content-Type:image/png");
echo $newImage->getImageBlob();
?>
输出:
程序2:
// Create a new imagick object
$imagick = new Imagick(
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png');
// Add floodfillPaintImage
$imagick->floodfillPaintImage("green", 1, "white", 1, 1, false);
// Create a file handle
$myfile = 'writeimagefile2';
$handle = fopen($myfile, 'w+');
// Write image to filehandle with png format
$imagick->writeImageFile($handle, 'png');
// Get image from filehandle
$newImage = new Imagick();
$newImage->readImageFile($handle);
header("Content-Type:image/png");
echo $newImage->getImageBlob();
?>
输出: