kkFileView CAD在线预览:快速在浏览器查看与批注图纸
【免费下载链接】kkFileViewUniversal File Online Preview Project based on Spring-Boot项目地址: https://gitcode.com/GitHub_Trending/kk/kkFileView
kkFileView 是基于 Spring Boot 的开源文件在线预览服务,把 dwg、dxf 等 CAD 图纸在后台转成 SVG/PDF,你在浏览器里直接打开批注,不用装任何 CAD 软件。
🚀 快速上手:三步打开第一张图纸
- 拉取代码:
git clone https://gitcode.com/GitHub_Trending/kk/kkFileView- 构建并启动:进入 server 目录用 Maven 打包,再运行生成的 jar,具体步骤见 README.cn.md。注意需要 JDK 21 及以上版本。
- 浏览器打开
http://localhost:8012(默认端口 8012),在首页上传 dwg 文件,或用"本地文件预览"指向服务器上的图纸。 - 首次打开会先走异步转换,页面实时显示进度百分比;转完直接出图,二次打开命中缓存,几乎秒开。
支持 dwg、dxf、dwf、iges、igs、ifc、stl、plt 等常见 CAD 格式,上传后不用关心转换细节。
预览模式对比:场景不同选哪种
三种模式由同一个配置项切换,无需改代码:
| 模式 | 特点 | 适合场景 |
|---|---|---|
| svg(默认) | 矢量渲染,放大不失真,细线标注依旧清晰 | 在线评审、核对细节 |
| 按页呈现,支持打印,浏览器自带批注工具 | 打印下发、正式批注 | |
| tif | 整页转图片,体积最小,加载最快 | 超大图纸、弱网环境 |
日常评审用默认的 svg,缩放几百倍图层文字都不糊;需要打印或落档时切 pdf;几百 MB 的重型图纸切 tif,先把图加载出来再说。
想要图层树、红线标记这类专业交互,把cad.conversionmodule切为 2,改用外部 cadviewer 转换包,浏览器里就是完整的图纸查看器,后文配置部分会讲。
✏️ 批注能力详解:直接在图纸上说话
批注能力跟着预览模式走,两种用法都开箱即用:
- PDF 模式:用 pdf.js 查看器的批注工具,墨迹工具自由手绘圈出问题区域,荧光笔高亮关键尺寸,文本注释写下意见,默认配置下批注功能就是打开的。
- cadviewer 模块:内置红线(redline)标记变更线条,便利贴(sticky note)贴文字意见,批注支持保存与重新加载,发给同事打开就能看到。
- svg 模式只读展示,要留批注就先切 pdf。
实际协作里很省事:设计评审会上架构师用墨迹在图上圈出"这根梁的标高改一下",顺手贴一张便利贴写明理由,客户点开同一份 PDF 链接就能看到全部意见;施工交底时把现场冲突点用红线勾出来发给设计院;老师培训时直接加文本注释,学生拿着同一份文件自学。评审链路从"装软件、导文件"压缩成"发一个链接"。
⚙️ 关键配置项速查
CAD 相关配置集中在 application.properties 的"三、CAD文件处理配置"一节:
cad.preview.type = ${KK_CAD_PREVIEW_TYPE:svg} cad.thread = ${KK_CAD_THREAD:5} cad.timeout = ${KK_CAD_TIMEOUT:90} cad.conversionmodule = 1cad.preview.type— 预览模式,看图选 svg,打印批注选 pdf,大图提速选 tifcad.thread— 转换并发数,默认 5,多人同时评审再往上加cad.timeout— 单次转换超时(秒),默认 90,重型图纸建议 180cad.conversionmodule— 转换引擎,1 为内置 aspose-cad,2 为外部 cadviewer(需按其说明部署转换包和字体)
这一节支持动态配置,多数改动改完即生效,不用重启服务。
踩坑与调优
- 中文变方块 → 服务器装好中文字体
- 大图纸转换超时 →
cad.timeout加到 180 - 提示"系统繁忙" →
cad.thread适当调大 - aspose-cad 为商用组件 → 生产环境自行购买授权
- 想留原始图纸 → 关闭
delete.source.file删除开关 - 模式切换不生效 → 刷新缓存重新进入预览页
kkFileView 把 CAD 图纸变成谁都能打开的网页,评审闭环从"装软件"缩短到"开链接"。觉得有用,点个收藏关注吧。
【免费下载链接】kkFileViewUniversal File Online Preview Project based on Spring-Boot项目地址: https://gitcode.com/GitHub_Trending/kk/kkFileView
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考