在PHP中使用ImagicDraw中的Imagic方法

时间:2016-08-18 08:28:27

标签: php image imagick

我正在使用Imagick库在图像上绘制图像。我需要在图像上绘制一个方框,对于我使用Imagick的打印图像,我要使用ImagickDraw来绘制图像。

使用Imagick打印图像工作正常。而ImagickDraw也工作得很好。

当我在imagick中使用edgeImage方法时,会使图像颜色反转。我可以在edgeImage中使用ImagickDraw方法吗?

这是我的代码:

<?php
$draw = new \ImagickDraw();
$draw->setFillOpacity(0.4);
$draw->setStrokeOpacity(1);
$draw->setStrokeColor("rgba(62,46,45,0.9)");
$draw->setFillColor("rgba(62,46,35,0.9)");
$draw->setStrokeWidth(-2);
$draw->setFontSize(0);
$brightness = "-20";
$contrast = "-20";
$channel = "green";
$draw->pathStart();
$draw->pathMoveToAbsolute (10,0);
$draw->rectangle(0, 0, 170, 300);
$draw->pathFinish();

$imagick = new \Imagick();
$imagick->readImage('images/men2.png');
$imagick->setImageFormat("png32");
$imagick->edgeImage(5);
$imagick->drawImage($draw);
header("Content-Type: image/png");

echo $imagick->getImageBlob();

?>

0 个答案:

没有答案