我正在尝试使用PHP代码生成SVG文件。我已尝试在此页面上实施技术#1:
http://www.devx.com/webdev/Article/37004
这是PHP代码:
<?php header("Content-type: image/svg+xml"); ?>
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/ REC-SVG-20010904/DTD/svg10.dtd">
<svg width="310" height="140" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g style="stroke:black;fill:lightgreen" transform="translate(30,30)">
<rect x="10" y="10" width="100" height="30" style="stroke-width:4"/>
<circle cx="170" cy="25" r="20" style="stroke-width:4"/>
<line x1="265" y1="10" x2="200" y2="70" style="stroke-width:4"/>
<text x="80" y="90" style="font:size: 8"> Basic shapes</text>
</g>
</svg>
然而,当我这样做时,我的服务器以http错误500响应。请参阅:
http://isometricland.net/keyboard/test-svg.php
我该如何解决这个问题?感谢。
[编辑]
我在日志中收到此错误:
PHP Parse error: syntax error, unexpected 'version' (T_STRING) in /home/isometr1/public_html/keyboard/test-svg.php on line 2
答案 0 :(得分:1)
尝试:
<?php header("Content-type: image/svg+xml"); ?>
<?php print '<?xml version="1.0" encoding="iso-8859-1"?>'; ?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/ REC-SVG-20010904/DTD/svg10.dtd">
<svg width="310" height="140" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g style="stroke:black;fill:lightgreen" transform="translate(30,30)">
<rect x="10" y="10" width="100" height="30" style="stroke-width:4"/>
<circle cx="170" cy="25" r="20" style="stroke-width:4"/>
<line x1="265" y1="10" x2="200" y2="70" style="stroke-width:4"/>
<text x="80" y="90" style="font:size: 8"> Basic shapes</text>
</g>
</svg>