【发布时间】:2020-09-16 09:26:56
【问题描述】:
我正在使用 vips PHP 库。我想在我的图像上添加 svg 路径。我为此实现了下面的代码,但它没有给我预期的输出。问题是如何根据实际图像高度和宽度设置 svg 路径。我尝试使用调整大小和缩略图,但它没有给我预期的输出。我还想在我的实际图像块上填充灰色,就像预期的输出图像一样。
使用 imagick 生成的预期输出图像
$background = Vips\Image::newFromFile($arg[1], ['access' => 'sequential']);
$svg = Vips\Image::svgload_buffer('<svg>
<path
d="M0 200 v-200 h200
a100,100 90 0,1 0,200
a100,100 90 0,1 -200,0
z" stroke="#fff" fill="transparent"/>
</svg>');
// $svg = $svg->resize(2.5);
$svg = $svg->thumbnail_image(700, ['height' => 700, 'size' => 'both']);
$image = $background->composite($svg, 'dest-in');
$image->writeToFile([$arg2], ['background' => [128, 128, 128], 'Q' => 100]);
【问题讨论】: