dxf-kit
v1.7.9
Published
DXF 解析、修改、生成工具包
Readme
dxf-kit
🚀 现代 JavaScript DXF 解析 & 写入工具库
支持浏览器 & Node.js
✨ 特性
- ✅ 支持 20+ DXF 实体(LINE / CIRCLE / ARC / SPLINE 等)
- ✅ 解析 DXF → JSON
- ✅ JSON → DXF 写回
- ✅ 按图层分组
- ✅ 浏览器直接下载
📦 安装
npm install dxf-kit
🚀 快速开始
解析 DXF
parseDxf
const data = await parseDxf(dxfString)
console.log(data.entities)
数据结构
{
blocks: 字符串,无需在意
classes: 字符串,无需在意
entities: 一维数组对象[{}]存储了所有图形对象,
grouped: parseDxf函数已经数据处理后,可直接在前端方便使用的json数据
header: 字符串,无需在意
headerVars:存储了dxf头部所有信息
layerDefs: 存储了图层信息
objects: 字符串,无需在意
tables: 字符串,无需在意
}
写回 DXF
------ data必须是整个由parseDxf解析出来的数据 ,
------ 所以你在修改dxf的json数据,从某种意义上来讲,删除新增修改图形操作是在 entities层的数据上进行操作
------ 所以前端在使用 grouped 渲染dxf,操作dxf,需要删除 grouped 内的数据才会有ui效果,同时删除 entities 内对应的那条删除才会在dxf文件内存在删除效果
writeDxf
const dxf = writeDxf(data)
// 下载dxf文件
downloadDxfFile
downloadDxfFile(dxf, fileName.value || '文件名.dxf')
本地运行:
\```bash
cd demo
npm install
npm run dev
\```