php - 在服务器端将 SVG 转换为 JSON?

标签 php json svg server-side

我们的 Web 应用程序在服务器上存储 SVG 文件,我们希望从服务器端的 SVG 文件获取 JSON 输出。 我调查过PETESAIA's SVG to JSON PHP 程序。 但我得到的输出为 null 或空数组。

<?php
require_once “PeachSVG.php”;
$filename = “filename-2012-03-06.svg”;
$json = PeachSVG::convert($filename, $to_json = true);
//$json = convert($filename, $to_json = true);   //also used this one
var_dump(json_decode($json, true));
?>

此 php 代码、PeachSVG.php 和 svg 文件位于同一目录中。

谁能建议我这个问题哪里错了?

或者在服务器端将 SVG 替换为 JSON

编辑:回应@halfer和他关于为什么我们需要SVG服务器端验证(转换为JSON)的询问。 我们有一个客户端 SVG(RaphaelJs)网络应用程序,用户可以在其中执行某些操作,输出被发送到并保存在我们的服务器上,并发布在网站上。我们希望确保输出文件在发布到网站之前经过验证。为此,我们需要进行服务器端验证,以确保用户不会滥用应用程序中设置的规则。

Raphael.serialize 无法使用,因为它在客户端将 SVG 转换为 JSON,这可能会被用户滥用。因此,我们将 SVG 文档作为字符串发送到服务器端。

最佳答案

如果您可以在服务器上安装 Node.js,您也许可以使用 Fabric.js 解析 SVG,然后将对象导出为 JSON。

https://github.com/kangax/fabric.js

http://kangax.github.com/fabric.js/svg_rendering/

关于php - 在服务器端将 SVG 转换为 JSON?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9788526/

相关文章:

PHP - 格式化字符串输出

php - 随机图像背景更改 PHP CSS

css - svg 悬停时奇怪的蓝色下划线

php - 导入的数据库转储从 latin1 数据库到 utf8 数据库

PHP 5.6.12 - 整数返回不正确

python - 在 Python 中将 CSV 数据转换为嵌套的 JSON

json - Powershell:json 和 dot 包括值变量访问

java - 如何将 JSONObject 转换为字节数组,然后转换此字节数组以取回原始 JSONObject?

javascript - Illustrator/SVG 到 JavaScript 的工作流程? (模板库?)

javascript - 在鼠标悬停时使用 D3.js 显示 svg 外来元素?