svgedit

svgedit

Web浏览器中的开源SVG绘图编辑工具

SVGEdit是一个开源的Web SVG绘图编辑器,支持在主流浏览器中运行。该项目基于@svgedit/svgcanvas开发,具备完善的绘图功能和易用的操作界面。SVGEdit提供在线使用、本地部署和Web应用集成等多种使用方式,适应不同场景的需求。作为一个长期维护的开源项目,SVGEdit持续得到社区的支持和改进。

SVGEditSVG编辑器Web应用开源项目JavaScriptGithub
<img src="https://yellow-cdn.veclightyear.com/835a84d5/4a33187e-0adb-4380-8a22-aee35e386ae1.svg" width="50" height="50" />

SVGEdit

npm Actions Status Known Vulnerabilities Total Alerts Code Quality: Javascript

SVGEdit 是一个快速、基于网络、由JavaScript驱动的SVG绘图编辑器,可在任何现代浏览器中运行。SVGEdit 基于强大的SVG画布 @svgedit/svgcanvas

截图

贡献

SVGEdit是最受欢迎的开源SVG编辑器。它由一个出色的开发团队在13年多前创建。不幸的是,该产品很长一段时间没有得到维护。我们决定通过更新许多方面来给这个工具一个新的生命。

如果您希望做出贡献,请通过创建问题或讨论来告诉我们。

我想使用SVGEdit

感谢 Netlify,您可以从您喜欢的浏览器访问以下版本:

V7之前的版本:

我们建议使用V7版本,但对于较旧的浏览器或一些废弃的功能,您可能需要访问SVGEdit的旧版本。

额外提示:您可以使用unpkg尝试在NPM上发布的版本,例如版本3.2.0

我想在我的环境中托管SVGEdit

如果您想托管SVGEdit的本地版本,请按以下说明操作:

  1. 从GitHub克隆或复制存储库内容
  2. 运行npm i安装依赖项
  3. 运行npm run build --workspace @svgedit/svgcanvas在本地构建svgcanvas依赖项
  4. 要测试,您可以运行npm run start启动本地服务器
  5. 并使用支持的浏览器访问http://localhost:8000/src/editor/index.html
  6. 运行npm run build构建一个可以从您自己的Web服务器提供服务的包

我想为SVGEdit做贡献

谢谢!

SVGEdit由两个主要组件组成:

  1. "svgcanvas"负责底层svg编辑器。它可以用来构建您自己的编辑器
  2. "editor"负责编辑器UI(菜单、按钮等)

您应该在GitHub环境中fork SVGEdit,并按上述说明在本地安装SVGEdit。

在提交PR之前,请确保在本地运行:

  1. npm run lint检查您是否遵循standardjs规则(https://standardjs.com/rules)
  2. npm run test运行一套Cypress测试(https://www.cypress.io/)

如果您打算定期贡献,请告诉我们,以便我们将您添加到维护团队中。

我想将SVGEdit集成到我自己的Web应用程序中

V7显著改变了集成和自定义SVGEdit的方式。您可以查看index.html,了解如何将div元素插入到HTML代码中,并将编辑器注入到div中。

警告:这个div可以放置在DOM中的任何位置,但它必须具有数字宽度和数字高度(即不是'auto',这种情况发生在div被隐藏时)

<head> <!-- 您需要在应用程序中的某个地方包含SVGEdit的CSS --> <link href="./svgedit.css" rel="stylesheet" media="all"></link> </head> <body> <!-- svgedit容器可以放置在DOM中的任何位置 但它必须有宽度和高度 --> <div id="container" style="width:100%;height:100vh"></div> </body> <script type="module"> /* 您需要调用Editor并将其加载到<div>中 */ import Editor from './Editor.js' /* 有关可用选项,请参见文件`docs/tutorials/ConfigOptions.md` */ const svgEditor = new Editor(document.getElementById('container')) /* 初始化Editor */ svgEditor.init() /* 设置配置 */ svgEditor.setConfig({ allowInitialUserOverride: true, extensions: [], noDefaultExtensions: false, userExtensions: [] }) </script> </html>

我想构建自己的svg编辑器

您可以直接使用底层画布,并在您的应用程序中使用您喜欢的框架。 请参见demos文件夹中的示例或svg-edit-react存储库。

安装画布:

npm i -s '@svgedit/svgcanvas'

然后您可以在应用程序中导入它:

import svgCanvas from '@svgedit/svgcanvas'

支持的浏览器

开发和持续集成是在 Chrome 环境中完成的。支持Chrome、FireFox和Safari的最新版本(意味着我们会尝试修复这些浏览器的错误)。

要支持旧浏览器,您可能需要使用较旧版本的软件包。但是,如果您需要支持特定版本的浏览器,请开启一个问题,以便项目团队可以决定是否应在SVGEdit的最新版本中支持它。

基于React的示例扩展

一个示例React组件被用来构建SVGEdit扩展。

激活方法:

  • 从扩展文件夹"src/editor/react-extensions/react-test"运行"npm run build",以创建扩展的捆绑包。
  • 修改"index.html"以将扩展激活为userExtensions
svgEditor.setConfig({ allowInitialUserOverride: true, extensions: [], noDefaultExtensions: false, userExtensions: ['./react-extensions/react-test/dist/react-test.js'] })

进一步阅读和更多信息

托管

SVGEdit版本部署到:

Deploys by Netlify


⇈ 返回顶部

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多