0

我一直在修改 svg-edit 以保存到服务器。在以前的版本中,我可以使用保存到服务器扩展 - 但是当我尝试在这个版本上实现它时 - 创建的保存链接没有响应。

1 - 在 2.8.1 中调用扩展的方式是否有新的变化?2 - 那里是否有可行的工作样本

如果不是 - 我会非常感谢高水平 - 如何着手构建此功能。

哦,我的服务器是 php。

4

1 回答 1

1

我正在尝试做同样的事情,我找到了这个旧文档:

http://binoyav.blogspot.com.au/2011/11/svg-edit-saving-files-to-server.html

我也会在这里发布(以防链接失效!)

如果您想尝试使其正常工作,我已经创建了一个 github 存储库用于测试。 https://github.com/zeigerpuppy/Sandstorm-Method-Draw

说明如下,但他们还没有工作!

SVG 编辑:将文件保存到服务器

SVG-edit 是一个快速的、基于网络的、Javascript 驱动的 SVG 编辑器,可以在任何现代浏览器中工作。要了解有关 SVG 编辑的更多信息,请单击此处。默认情况下,当点击菜单中给出的保存链接时,图像会在新窗口中打开,用户必须手动将图像保存到用户的机器上。SVG-edit(2.5.1 版)提供了将文件下载到用户机器的扩展。

下载文件

打开 svg-editor.js

在 curConfig 对象中,将“ext-server_opensave.js”添加到扩展数组的末尾。确保 ext-server_opensave.js 、 fileopen.php 和 filesave.php 存在于 svg/extensions 目录中

将文件保存到服务器

执行上述步骤。

打开 extensions/filesave.php 并注释掉下面的代码

header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=" . $file);
header("Content-Type: " . $mime);
header("Content-Transfer-Encoding: binary");
echo $contents;

并在最后添加以下代码

define('DIR_PATH', 'path to the directory with trailing slash');
$fp = fopen(DIR_PATH . $file, 'w+');
fwrite($fp, $contents);
fclose($fp);

为 DIR_PATH 常量提供正确的目录路径,并为该文件夹提供必要的权限

于 2016-04-03T04:13:11.603 回答