DOCS / 02 · SVG EXTRACTION & RENDERING
SVG 提取与渲染
SVG 提取是标准转换流程的一部分,默认 candidate 模式:每个 run 在 <run>/svg-candidates/ 生成三个产物——symbols.sqlite3、correspondence.json、correspondence.html。候选不自动应用到交付 QML 或 GIS 业务数据;reviewed 模式尚未开放。
本页画廊的 759 个 SVG 全部来自真实 DWG 交付包 svg-review/drawing-01..09/source-symbols,一个不少。
§1 · 提取流水线
从 DWG 实体到 QGIS 渲染的七步
逐步播放:每一步配真实产物名。候选与 GIS 完整生成后原子发布;提取失败不发布半成品 run,已有 run 保留。
§2 · 真实符号画廊
759 个真实提取的 SVG 符号
按九张图纸筛选(徽记 = 该图符号数)。懒加载;hover 放大;点击开深色详情卡。SVG 多为透明底细线稿,格子用墨色描边纸底衬托。
§3 · 覆盖率数据
九图候选处置对比
逐图读 correspondence.json 的 dispositions 字段:LEGEND_MATCH_CANDIDATE(图例对应候选)/ SOURCE_INSTANCE_ONLY / UNRESOLVED_NON_BLOCK。多数图纸没有可用图例——候选以源实例身份保留,这正是 candidate 模式的诚实之处。
§4 · QGZ 内嵌证据
SVG 以 base64 内嵌进 QGZ
逐个数过:view-with-source-SVG.qgz 内 .qgs 的 base64 SVG 载荷数。首开图 = 11 份 QGZ 在独立 QGIS 进程中的首开验证截图。
§5 · CLI 参考
独立提取与人工绑定(逐字命令)
独立运行不依赖转换;选择配置必须绑定实际源文件 SHA-256 与实际 handle。
extract / qml
也可用 tools/extract_svg_symbols.py,或安装后的 cad2gis-symbols · 缺字体 Linux 环境提供 --font-dir /path/to/fonts(可重复);无字体时拒绝提取含文字的符号
selection.json / bindings.json 示例
脚本拒绝错误源 SHA、找不到的 handle、重复 ID、覆盖已有输出和被修改的 SVG
package_qgis_standalone / verify_qgis_standalone
人工绑定到 QGZ 需 PyQGIS 环境(如 Windows 的 python-qgis.bat)
cad2gis-svg-delivery / 独立复验
生成后必须退出进程再独立复验(可加 --font /path/to/font.ttf)· 实现亦随核心包发布:python -m cad2gis.qgis_package / qgis_verify / svg_delivery,安装命令为 cad2gis-qgis-package / cad2gis-qgis-verify / cad2gis-svg-delivery