DXF文件编码格式,并用一个数组输出为DXF格式

以下贴出的是dxf文件编码格式中非常重要的几个部分,其他的部分都不重要,可以不进行更改

【EXTMIN】,【EXTMAX】,可以直接定义为数组中的最小值和最大值的x,y值

【ACTIVE】中的【12】,【22】,【40】,前两个可以直接定义为数组中间值的x,y值

这几个下面都有解释,【40】的解释没有找到,我是令【40】为:Xmax+5(Xmax为数组中x值的最大值),可以成功显示

注意:

【1】【HANDSEED】下的这个值,若存为【POINT】时,可以是纯数值,如“232”,若存为【POLYLINE】,好像就不能是纯数值了。(这点仅为自己编程时遇到的问题,未经验证,仅为提醒)

【2】无论是将数组存为【POINT】或者【POLYLINE】,每个点的都有一个个数的编码,这个数后面两位都是从0--F,满F朝前进一位.

 

 

 

参考链接:https://blog.csdn.net/l_serein/article/details/5357739

                  http://docs.autodesk.com/ARCHDESK/2014/CHS/index.html?url=files/GUID-8CE7CC87-27BD-4490-89DA-C21F516415A9.htm,topicNumber=d30e499352

 

 

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
.ai 和 .dxf 都是常见的矢量图形文件格式,但是它们之间的转换并不是很简单。目前 Qt 并没有内置的方法可以直接将 .ai 文件转换为 .dxf 文件,但是可以通过使用第三方库来实现。 下面是一个可能的解决方案: 1. 安装开源的 Inkscape 软件,并将其添加到系统 PATH 中。 2. 在 Qt 代码中使用 QProcess 类来调用 Inkscape 命令行工具,并将 .ai 文件作为输入,将输出保存为 .dxf 文件。 示例代码: ```cpp #include <QProcess> QString aiFilename = "input.ai"; QString dxfFilename = "output.dxf"; QProcess process; QStringList arguments; arguments << "-f" << aiFilename << "-e" << dxfFilename << "--export-dxf"; process.start("inkscape", arguments); process.waitForFinished(-1); ``` 以上代码中,我们使用了 Inkscape 命令行工具的 `--export-dxf` 选项来将 .ai 文件转换为 .dxf 文件。注意,在使用 Inkscape 进行转换时,需要确保输入文件输出文件格式和内容都符合要求。 另外,如果你只需要将 .ai 文件转换为其他矢量图形格式,比如 .svg 或 .pdf,那么 Qt 本身已经提供了相应的类来处理这些格式,可以直接使用。例如: ```cpp #include <QSvgGenerator> QString aiFilename = "input.ai"; QString svgFilename = "output.svg"; QSvgGenerator generator; generator.setFileName(svgFilename); generator.setSize(QSize(400, 300)); generator.setViewBox(QRect(0, 0, 400, 300)); QPainter painter; painter.begin(&generator); QSvgRenderer renderer(aiFilename); renderer.render(&painter); painter.end(); ``` 以上代码中,我们使用了 QSvgGenerator 类来创建一个 SVG 文件,并使用 QSvgRenderer 类来读取 .ai 文件并将其渲染到 SVG 文件中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值