我正在使用以下脚本生成 SVG 的放大 PNG 版本。
<img src="barrington.svg" width="418" height="188"/> //comparison
<?php
$im = new Imagick();
$im->setBackgroundColor(new ImagickPixel('transparent'));
$svg = file_get_contents("barrington.svg");
$im->setresolution(144,144);
$im->readImageBlob($svg);
$im->setImageFormat("png32");
echo '<img src="data:image/png32;base64,' . base64_encode($im) . '" />'
?>
当以相同大小显示/与 SVG 版本比较时,PNG 在某些图像周围有锯齿状边缘。
(参见此处的图片:http: //i.stack.imgur.com/WGKIH.png)
我正在使用 ImageMagick(如果还不是很明显)并且想解决这个问题。
编辑: 澄清一下,为了我的目的,我需要一个 PNG 而不是 SVG。这不是修复浏览器或其他东西的兼容性问题。