一个用于创建/操作DXF图纸的Python包。
项目描述
ezdxf
摘要
此Python包旨在方便创建和操作DXF文档,具有跨各种DXF版本的兼容性。它使用户能够无缝地加载和编辑DXF文件,同时保留所有内容,除了注释。
文档中遇到的任何不熟悉的DXF标签都将被优雅地忽略但保留以供将来修改。此功能使处理包含第三方应用程序数据的DXF文档成为可能,而不会丢失任何有价值的信息。
快速信息
ezdxf
是一个Python包,用于创建新的DXF文件和读取/修改/写入现有DXF文档- MIT许可证
- 目标受众是程序员
- 至少需要Python 3.9
- 与操作系统无关
- 与CPython和pypy3进行了测试
- 具有类型注解并通过
mypy --ignore-missing-imports -p ezdxf
成功 - 核心包的附加要求,不包括附加组件
- 支持读取/写入/创建以下DXF版本:R12、R2000、R2004、R2007、R2010、R2013和R2018
- 增加对DXF版本R13/R14的只读支持(升级到R2000)
- 增加对R12以下较老DXF版本的只读支持(升级到R12)
- 支持ASCII DXF和二进制DXF的读取/写入
- 保留第三方DXF内容
- 二进制轮文件包含可选的CPython C扩展,可在PyPI上获取,适用于Windows、Linux和macOS:PyPI
- 命令行脚本
ezdxf
用于显示、转换和检查DXF文件
包含的扩展
这些附加包在基本设置期间不会自动安装,有关设置和依赖关系的更多信息,请访问文档。
drawing
扩展将DXF数据发送到渲染后端,实现了matplotlib接口,可导出图像为PNG、PDF或SVG格式,以及PyQt5。r12writer
扩展可以直接快速地将基本DXF实体写入DXF R12文件或流iterdxf
扩展可以遍历大DXF文件(> 5GB)的模型空间中的DXF实体,这些文件不适合内存Importer
扩展可以导入其他DXF文档中的实体、块和表条目dxf2code
扩展可以生成从DXF文档加载的DXF结构的Python代码,作为参数化DXF实体创建的起点acadctb
扩展用于读取/写入绘图样式文件(CTB/STB)pycsg
扩展用于基本构造实体几何(CSG)建模MTextExplode
扩展可以将MTEXT实体分解为单行TEXT实体text2path
扩展可以将文本转换为轮廓路径geo
扩展支持__geo_interface__
meshex
用于与其他工具(如STL、OFF或OBJ文件)交换网格openscad
扩展,是OpenSCAD的接口odafc
扩展,是ODA文件转换器的接口,用于读取和写入DWG文件hpgl2
扩展用于将HPGL/2绘图文件转换为DXF、SVG和PDF
简单示例
import ezdxf
from ezdxf import colors
from ezdxf.enums import TextEntityAlignment
# Create a new DXF document.
doc = ezdxf.new(dxfversion="R2010")
# Create new table entries (layers, linetypes, text styles, ...).
doc.layers.add("TEXTLAYER", color=colors.RED)
# DXF entities (LINE, TEXT, ...) reside in a layout (modelspace,
# paperspace layout or block definition).
msp = doc.modelspace()
# Add entities to a layout by factory methods: layout.add_...()
msp.add_line((0, 0), (10, 0), dxfattribs={"color": colors.YELLOW})
msp.add_text(
"Test",
dxfattribs={
"layer": "TEXTLAYER"
}).set_placement((0, 0.2), align=TextEntityAlignment.CENTER)
# Save the DXF document.
doc.saveas("test.dxf")
r12writer示例,它写入一个简单的没有内存结构的DXF R12文件
from random import random
from ezdxf.addons import r12writer
MAX_X_COORD = 1000
MAX_Y_COORD = 1000
with r12writer("many_circles.dxf") as doc:
for _ in range(100000):
doc.add_circle((MAX_X_COORD*random(), MAX_Y_COORD*random()), radius=2)
r12writer只支持DXF R12绘图的ENTITIES部分,没有HEADER、TABLES或BLOCKS部分,除了写入FIXED-TABLES之外,还有一些额外的预定义文本样式和线型可用。
安装
基本安装通过pip,包括来自PyPI的二进制轮文件中的可选C扩展
pip install ezdxf
完整安装包含所有依赖项(matplotlib、PySide6),用于使用绘图扩展
pip install ezdxf[draw]
有关设置和依赖关系的更多信息,请访问文档。
命令行
如果你的shell找不到ezdxf
脚本,请使用python -m ezdxf ...
获取子命令的帮助
ezdxf <cmd> -h
在图形窗口中预览DXF文件
ezdxf view <file.dxf>
将DXF文件的工作空间导出为PNG|SVG|PDF
ezdxf draw -o file.<png|svg|pdf> <file.dxf>
打印DXF文件的基本信息
ezdxf info <file.dxf>
显示DXF文件的详细信息和结构
ezdxf browse <file.dxf>
审核DXF文件
ezdxf audit <file.dxf>
预览和转换HPGL/2绘图文件
ezdxf hpgl <file.plt>
网站
文档
开发版本的文档可在https://ezdxf.mozman.at/docs找到
最新版本的文档可在https://ezdxf.readthedocs.io/找到
知识图谱
知识图谱包含比文档更多的信息,并由logseq管理。源数据包含在存储库的ezdxf/notes
文件夹中。网站上还有HTML导出,它定期更新。
贡献
《ezdxf》的源代码可以在 GitHub 上找到,请将您的 pull requests 发送到 master
分支。
https://github.com/mozman/ezdxf.git
反馈
在 GitHub Discussions 中提问和反馈。
https://github.com/mozman/ezdxf/discussions
在 Stack Overflow 中提问。
在 Stack Overflow 上提问并使用标签 dxf
或 ezdxf
。
问题追踪器在 GitHub
http://github.com/mozman/ezdxf/issues
发行说明
发行说明包含在知识图谱中。
变更日志
变更日志包含在知识图谱中。
联系
请始终在 论坛 或 Stack Overflow 上提问,以便其他用户也能看到答案。
非常感谢您的反馈。
Manfred
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分发
构建分发
ezdxf-1.3.3.zip的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 97608229bb1deb5857daedde34140686eef1ea96781da00791f5fd216cdd0d01 |
|
MD5 | de9f83f8c878df081770f8cb3ca459b8 |
|
BLAKE2b-256 | c69d13fe9a08fa3e9b39cd95008aa5600d1619b7ef3c800130f77d4c5b4d21d6 |
ezdxf-1.3.3-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1ce32f09694d0982317dd8d57b2e84746d5c1f5e02cc147e82efeaee93c0ed7a |
|
MD5 | 9a9e4860c2df2d89d36528cfc156bcfc |
|
BLAKE2b-256 | ab068b498f54ba2ca1b43b3e41bc0e051372d0805536c37cfc4339c686dac478 |
ezdxf-1.3.3-cp312-cp312-win_amd64.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b2bb4cc285f8978399ec7d23ed9d27fd174fbf2ee0eb1e7558318fa146861126 |
|
MD5 | beca2b2f2bebbef46661def5e06951dc |
|
BLAKE2b-256 | cc00d0dda43edb7ea489f129f2d45cfb4ef339cc0ff24e11e119a90562c62af2 |
ezdxf-1.3.3-cp312-cp312-musllinux_1_1_x86_64.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b3d1f62271b26284f80e12336a74fe7010d1e9ffcac4797ffddda6c5a8869d4a |
|
MD5 | 95cf6e8e84039c372a313eac590bcb75 |
|
BLAKE2b-256 | 1ccc8b5858b2e549e92d055d49c3809e26e7bc5223a14250e73112aebe807c16 |
哈希值 对于 ezdxf-1.3.3-cp312-cp312-musllinux_1_1_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | caf20732de15e7f7af6df4212d1ac672a5089de66ca4223872dfa3f80155407a |
|
MD5 | d1703bb6415cd1cd555134e117e696bc |
|
BLAKE2b-256 | c40440e11339974d8ece59cde79a70ba4d0d76622dc7c4106439b6cc88e044ea |
哈希值 对于 ezdxf-1.3.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 74ad4668200347c15d09ca8cb7ca4cdf5ddc9f490fe0eab4548bac32b616fe0b |
|
MD5 | fa0a03e165bc4b4c1540664bb380196a |
|
BLAKE2b-256 | cba5a8cbe67d7ce2e77d267c7fd56c89a8721c26c675c150e298a008edaf3653 |
哈希值 对于 ezdxf-1.3.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b5ccd8459a46a8980103465afa3ccda37b104d870020ce4e2981a8af07be6d7f |
|
MD5 | 74573b0d0194127264b5c31709eb2bf8 |
|
BLAKE2b-256 | 2524b95596f2cd30e4bdd9d88b13dc7dbe6ca0ed7e4eb20f83398a0384e54b78 |
哈希值 对于 ezdxf-1.3.3-cp312-cp312-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6d12ac73854cac1f9edb2f966450b03400c46c116e043d80e16b66b815a6061f |
|
MD5 | ad002c98b8ad2d1342bf3482acbbbe9e |
|
BLAKE2b-256 | cff1b044253d82f4ca7918694e8ff5b4437fec3c75f7b6b19ab68e0b4db5d90c |
哈希值 对于 ezdxf-1.3.3-cp312-cp312-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dffa1f1adc4cff50a07ffc0b8ed580017939cace8cd01f7bc1b2c6890bb3eb7f |
|
MD5 | 85b8ab8971dd8c4a528323a4d6bb53a3 |
|
BLAKE2b-256 | 61f19decd4d9547cfc1619e9898709fde2b80cb949314604f2450af82001c92d |
哈希值 对于 ezdxf-1.3.3-cp312-cp312-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8038538f6752008e2b219a028ee8c3073121b935dd5e32ee68c33c66a9fefc78 |
|
MD5 | c5f3885faab005e17ff059d1031f2b7b |
|
BLAKE2b-256 | 2b38ffa8337dd70b9124b69921237962c6ab6063363010d64c728d6bf245ff39 |
哈希值 对于 ezdxf-1.3.3-cp311-cp311-musllinux_1_1_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 113f5039ab7095403f2baf2c0e806d66be27e0981bf65ec5d4ec1835543a840f |
|
MD5 | c7a30a30ac9fcf57eeb73b572037ccd3 |
|
BLAKE2b-256 | f25498d4b92b183ea3bef28520a99420cee377a547b30d453aa572876fa9affc |
哈希值 对于 ezdxf-1.3.3-cp311-cp311-musllinux_1_1_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | dee2be42454340767d55890ae8cc6bcf3c3b708b265cbf5a67d95710ccc424cc |
|
MD5 | 478bf4c327d9dbb2c6d1e2364defe3dd |
|
BLAKE2b-256 | 4a2b201bcf0d082e380bea8010b8d3b6ce642ae15d600ddaab90ededdccd144a |
哈希值 对于 ezdxf-1.3.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4b87027993690d941edf67c7fee096b19ba113efd3b2ec0ccf2ce484088e8665 |
|
MD5 | aa71a67c9e21ebdfd5fb9084a3077978 |
|
BLAKE2b-256 | a8e6516a4c5ddbc7161da488dd9297007f4cbcd008c4d6b8f3057e024a6bb39d |
哈希值 对于 ezdxf-1.3.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 403b5d118570b47d268b02836f7d1cad7568b94a1dc9c15183141122f4e97b17 |
|
MD5 | b8798fca7bbe99402cf1a61560409f58 |
|
BLAKE2b-256 | 1db15a25a0b24af9f4f6d4608cec20a747ea67040d944e62bfa7609d1ef02d2c |
哈希值 对于 ezdxf-1.3.3-cp311-cp311-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8700370b5d96533c4bc3b199c322b617b2ea55407beb0c2a9529754b73cda7ce |
|
MD5 | d7e5b93ef81b4743dd508646fdfd4750 |
|
BLAKE2b-256 | 2171ab708b8983f8ca88b8baabafbf681428a3f40434ff781f4185c107ba2e80 |
哈希值 对于 ezdxf-1.3.3-cp311-cp311-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7dadb3cb3913b5a68b0ea1a5586b11cd8ff17d4beb3dc98efe7161b81f0161a2 |
|
MD5 | 27454290b0cb079133f1d7445764877a |
|
BLAKE2b-256 | 572387b981ef65baee1d954ff79640d41644be8c0399247efa2ca7f7cb56fb3e |
哈希值 for ezdxf-1.3.3-cp311-cp311-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ebd3681874b423d88c834b2486d4cdd2313fafacbf1cb3df2ae87b7118a5ced3 |
|
MD5 | c145f9c9c116f644569114566d12a5cb |
|
BLAKE2b-256 | 32b922cccd49e540c5f5e1cbca25b3e1a4bbf03c446709c165ec3766d42069e5 |
哈希值 for ezdxf-1.3.3-cp310-cp310-musllinux_1_1_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7e39149a7d4fb0c83a87f920a01d19ea0ae137c3609fa2b47ec75a519c37e321 |
|
MD5 | 617e2644dedad791fd2cc17216204532 |
|
BLAKE2b-256 | 9fab272727d7be20336555f635e6516073c3c3acb30bfda62a074a7af25fb22b |
哈希值 for ezdxf-1.3.3-cp310-cp310-musllinux_1_1_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c995a02ddc0e942678da71c2cd2d314146f97065a9af0dc5ffc295661688a783 |
|
MD5 | aaa96714f546c766a012c43a5572e291 |
|
BLAKE2b-256 | 4d8c948d036a019fe9ebd20de6a68706c68271291693d9eec0d2ae02e028af3a |
哈希值 for ezdxf-1.3.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 915e12e3626db36dc4ab1c5e5e29951a18d3c5355e824b9dc083fe14f30b795d |
|
MD5 | 4bd8ba633db540ab10ae6795fd35815b |
|
BLAKE2b-256 | 175641d2260c275aeae40eb1e698058284b3c439ddedddf4a14b26ee124ace29 |
哈希值 for ezdxf-1.3.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f76f31c9022fece02ba98328c140fb2a75efb83b81039eef4123c2a4a1bf7c40 |
|
MD5 | 3cf7106fa9420338b1d5b823b5be21ea |
|
BLAKE2b-256 | 6e75c7d6b89bb72e7c0cc51c2d19e00b03853da5f1fc89bf2fc4cf3993e480a3 |
哈希值 for ezdxf-1.3.3-cp310-cp310-macosx_11_0_arm64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7049a31a8751c82c808c509d55430a2832e0f075beca7a831233a8705aa76d71 |
|
MD5 | 310f1d00f29cff2c5d65e12dc8e9ce65 |
|
BLAKE2b-256 | a92642c1cd5906ef379e80a8fbbb5f9cdd1e1cae812621f341f0f7dc4a8e5b74 |
哈希值 for ezdxf-1.3.3-cp310-cp310-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 9d29aa961a2b645561d51377ca1ee911c3acd4ad0a31e7d767e05e60448b3b90 |
|
MD5 | 6668fa1f322547a9d34d190c1256512f |
|
BLAKE2b-256 | ef76edbe1e10d858b9db8193c908628c660b894660df1dc3c91d70e967072b83 |
哈希值 for ezdxf-1.3.3-cp310-cp310-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a83a715883932407f59f71b90bdb319a4d773ac0ea238b268e655e96831bac5b |
|
MD5 | 561a707b34c772df2310274781b04b44 |
|
BLAKE2b-256 | 9dfab311371180d350b2ca0a2fc4a260c3e72d04709667ab03317e7f363666b1 |
哈希值 for ezdxf-1.3.3-cp39-cp39-musllinux_1_1_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 53029e9449868d306cf6f1167c6558f918f2b9f84c10ea8cefefda7e41380674 |
|
MD5 | 6de0ec0c0165cfbd1092984e243db2a6 |
|
BLAKE2b-256 | c3c4690e3a1339c8333f2cc713a23bd1977a27581412336cc2384a4df6822830 |
哈希值 for ezdxf-1.3.3-cp39-cp39-musllinux_1_1_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4b345a34f6841b679d4e0847e7a3db9d1b133310d6c2291f39b6cb63707cd1c0 |
|
MD5 | 23f0bf58a0eaab96415b2759f0b02bd4 |
|
BLAKE2b-256 | 705dce14bbf69f81867675781afbb3db0378439e5a8f38703573cca31b416dfc |
哈希值 用于 ezdxf-1.3.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | b64506d6e59b8c12e04641732a93e3371d90427e2671e1d736f6cf161225cacc |
|
MD5 | 302bc5e8590375864b8d067494152fc0 |
|
BLAKE2b-256 | a10c3769055d8e14078edecd8faae312529836168ff999bdc793e55d0712b2d1 |
哈希值 用于 ezdxf-1.3.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 288550ca3b6b9ed6e490d8e3a9f9e4120589fd21d9285e0b8f5bb9d9f3fe42cc |
|
MD5 | 2e5a8ab03e01c8f0daa8b8d1cbc7dce5 |
|
BLAKE2b-256 | d02c6d2de1fe72f3af56fd32316690a12b5a206f56ba802118db0f79378f150e |
哈希值 用于 ezdxf-1.3.3-cp39-cp39-macosx_10_9_x86_64.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 790df93a11e1525f7aeba190273b071e96bb349675f9ff4a26ed4cd4ea2adb2b |
|
MD5 | 8f6b3c5f493b2ed0d487a4ded9929780 |
|
BLAKE2b-256 | 6c2fb3ac723c02f07f4d6a306d7e64210800c092ba19971dd6ef81a8922999ee |
哈希值 用于 ezdxf-1.3.3-cp39-cp39-macosx_10_9_universal2.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 322cd1ef4cba631233a0efe2f16cd9acb8faffcd1091f857b74387281f7d8751 |
|
MD5 | 9c6417429a533f92429a831984ab3c69 |
|
BLAKE2b-256 | dbadeaf383825c645b797e1e18cf55c9a1f7eb707d0ac76a9e7b3de1a30163b6 |