是否可以使用 ezdxf 在现有图层上定位文本?
Is it possible to use ezdxf to locate text on an existing layer?
我想获取图层上的多个TEXT
或MTEXT
位置信息,但我不知道如何获取。
请多指教
可以在 excellent documentation for ezdxf.
中找到演示如何完成此操作的教程和示例
例如,要获取驻留在模型空间中特定层上的所有单行文本(TEXT
)和多行文本(MTEXT
)的集合,您可以使用:
msp = doc.modelspace()
textset = msp.query('TEXT MTEXT[layer=="YourLayerHere"]')
得到这个集合后,就可以遍历实体,查询插入点:
for e in msp.query('TEXT MTEXT[layer=="YourLayerHere"]'):
if e.dxftype() == 'MTEXT' or (e.dxf.valign == 0 and e.dxf.halign in [0,3,5]):
print("Position: %s\n" % e.dxf.insert)
else:
print("Position: %s\n" % e.dxf.align_point)
我想获取图层上的多个TEXT
或MTEXT
位置信息,但我不知道如何获取。
请多指教
可以在 excellent documentation for ezdxf.
中找到演示如何完成此操作的教程和示例例如,要获取驻留在模型空间中特定层上的所有单行文本(TEXT
)和多行文本(MTEXT
)的集合,您可以使用:
msp = doc.modelspace()
textset = msp.query('TEXT MTEXT[layer=="YourLayerHere"]')
得到这个集合后,就可以遍历实体,查询插入点:
for e in msp.query('TEXT MTEXT[layer=="YourLayerHere"]'):
if e.dxftype() == 'MTEXT' or (e.dxf.valign == 0 and e.dxf.halign in [0,3,5]):
print("Position: %s\n" % e.dxf.insert)
else:
print("Position: %s\n" % e.dxf.align_point)