繁体   English   中英

使用imagick将svg转换为png

[英]svg to png conversion using imagick

我正在尝试使用imagick将svg转换为png图像,但显示为空白,我的imagick代码是

<?php
$im = new Imagick();
$im->setBackgroundColor(new ImagickPixel('transparent'));
$svg = file_get_contents("new_old.svg");
$im->readImageBlob($svg);

$im->setImageFormat("png32");

header('Content-type: image/png');

echo $im;
?>

和我的SVG图像的代码是

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="282" height="504" xmlns:xlink="http://www.w3.org/1999/xlink">
<image id="4" preserveAspectRatio="none" x="27" y="132" width="238" height="453" xlink:href="http://asia.olympus-imaging.com/products/dslr/e520/sample/images/thumb_01.jpg"/>
</svg>

任何人都可以为这些问题提供解决方案。

快速猜测一下,您必须设置DPI

<?php
$im = new Imagick();
$im->setResolution(300, 300); // for 300 DPI example

更多信息: http : //www.php.net/manual/zh/imagick.setresolution.php#95533

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM