动态生成的 SVG
我必须开发一个将生成产品目录的应用程序。我的计划是使用 PHP 和 MySQL 构建一个 Web 应用程序,并以 SVG 格式生成目录页面。我正在考虑使用 RaphaelJS 来生成 SVG 文件。
我不希望从我的应用程序中获得非常流畅的产品目录页面的最终版本。对于精细编辑,客户希望使用 coreldraw。我知道我可以使用 uniconvertor 将 svg 文件转换为 cdr(如果客户坚持要 cdr 文件)。
问题是我不确定这是否是正确的方法。在开始编码之前,我需要一些建议。您认为这是一条好路吗?
I have to develop an application which will generate product catalog. My plan is to build a webapp with PHP and MySQL and the catalog pages to be generated in SVG format. I was thinking to use RaphaelJS for the SVG file generation.
I don't expect to get a very smooth and a final version for the pages of the product catalog from my app. For the fine edits, the client wish to use corel draw. I know that I can convert the svg files to cdr, using the uniconvertor (if the client insist to have cdr file).
The problem is that I'm not sure if this is the right approach. Before I start coding I need some advice. Do you think that this is a good path?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
重申一下问题,您希望用户在 Web 浏览器中创建 SVG 客户端,然后将 SVG 发送到服务器以便与 Corel Draw 一起使用?如果这是正确的,那么我认为你的总体做法是合理的。我个人不会使用 RaphaëlJS,因为我喜欢直接编码到 SVG(没有 Raphaël 的抽象层或旧版 IE 的 VML shim)。
由于我个人不使用 Raphaël,因此对于序列化,我只能提供 此链接,我对此没有个人经验:
如果您最终使用原始 SVG(或者如果您可以访问
Restating the problem, you want the user to create the SVG client-side in the web browser, and then send the SVG to the server later on for use with Corel Draw? If this is correct, then I think your general approach is reasonable. I wouldn't personally use RaphaëlJS, since I like coding directly to SVG (without the abstraction layer of Raphaël or the VML shim for older IE).
Since I don't use Raphaël personally, for serialization I can only provide this link that I have no personal experience with:
If you end up using raw SVG (or if you can access the
<svg>
element from Raphaël) then my answer to another question shows how you can get the serialized SVG from client-side generated data (to send to your server).许多动态 SVG 都是使用 svgweb 完成的。这允许您访问 SVG 元素,并且不会限制您操作它们的能力。它甚至修补 IE 不支持的 JavaScript 方法。
Raphael 目前不支持 (group) 元素。如果您生成通常易于操作的元素组,那么这是一个主要缺点。
A lot of dynamic SVG is done using svgweb. This allows you access to the SVG elements and doesn't limit your ability to manipulate them. It even patches unsupported JavaScript methods for IE.
Raphael doesn't currently support the (group) element. This is a major shortcoming if you are generating generally easy to manipulate groups of elements.