Я использую PHP-библиотеку vips. Я хочу добавить путь 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]);
Ниже приведено изображение, на которое я добавил свой путь svg