[返回博客](/cn/blog) # 在 ODA SDK 中使用 DWF 文件

Yuri Moskovsky 七月 30, 2020 [\#getting started](/cn/blog/tag/getting-started)

<a class="a2a_button_facebook"></a><a class="a2a_button_twitter"></a><a class="a2a_button_linkedin"></a>

ODA SDK 中对 DWF 格式的支持基于 DWF Toolkit 的最新可用版本 7.7。

该工具包的源代码位于 ThirdParty/DWFToolkit-7.7 文件夹中，并已针对许多平台以及其他第三方组件进行构建。以下是构建结果：

- exe 和 bin 文件夹中的 DwfToolkit.dll / .so 和 DwfCore.dll / .so。
- lib 文件夹中的 DwfToolkit.lib / .a 和 DwfCore.lib / .a。

本文介绍了三个主要的基于工具包的支持模块：

- TD\_Dwf7Export.tx
- TD\_Dwf7Import.tx
- TD\_DwfDb.tx

#### TD\_Dwf7Export.tx 模块

TD\_Dwf7Export.tx 位于 Kernel SDK 中。它是通用的，可以通过使用 OdDbBaseDatabasePE 实现来导出各种数据库。

TD\_Dwf7Export.tx 模块在 OdaMfcApp 示例应用程序和 ODA Drawings Explorer 中使用。下图显示了可用于导出开放数据库的 DWF 格式。

![3D DWF save](/files/inline-images/3D%20DWF%20save.png)#### TD\_Dwf7Import.tx 模块

TD\_Dwf7Import.tx 位于 Drawings SDK 中。它专门用于将 .dwf 文件导入到开放的 .dwg 图纸中。

TD\_Dwf7Import.tx 模块在 OdaMfcApp 示例应用程序中以仿真模式打开 .dwf 文件时使用。这会自动创建一个新的 .dwg 数据库并开始导入。

ODA Drawings Explorer 也使用该模块，但需要在使用导入命令之前通过新建命令创建一个新的 .dwg 数据库。

![ODA Drawings Explorer DWF](/files/inline-images/Drawings%20Explorer_0.png)#### TD\_DwfDb.tx 模块

TD\_DwfDb.tx 位于 Components/Dwfdb 文件夹中。这是一个专门用于 DWF、DWFX 2D 和 DWFX 3D 格式文件的只读数据库。它使用 OdDbBaseDatabasePE 扩展协议。ODA Drawings Explorer 使用此模块打开 .dwf 和 .dwfx 文件。打开速度比使用导入时高出一个数量级。

TD\_DwfDb.tx 模块可以使用部分加载，默认情况下启用。同时，数据最初存储在流中以供后续解析。解析是在请求数据用于任何目的（渲染、转储内容等）时进行的。

在 Components/Dwfdb/Examples 文件夹中，您可以找到 OdDwfLoad。它是作为使用静态配置包时 Dwfdb 连接的示例创建的。（ODA Drawings Explorer 加载并使用自定义 .tx 文件，因此在可能的情况下只使用动态配置。）

TD\_DwfDb.tx 还支持从 3D .dwf 文件加载属性。带有特殊键的控制台示例 OdDwfLoad 会转储这些属性。在这种情况下，会执行一个对象循环，类似于渲染，并且通过对象 ID 从先前读取的缓存中请求要转储的属性。

![loading properties from 3D dwf](/files/inline-images/TD_DwfDb%20supports%20the%20ability%20to%20load%20properties%20from%203D%20dfw.png)此模块还用于使用 TD\_DwfUnderlay.tx 模块（Drawings SDK 的一部分）加载和渲染 DWF 衬垫实体。

## 今天就开始行动

**免费试用 ODA 软件 60 天。  
无风险，无需信用卡。**

[免费试用](https://www.opendesign.com/cn/free-trial)
