Автоматическая вставка текста в файл dxf с помощью python

Я пытаюсь автоматически вставить текст в контуры dxf с помощью python. У меня есть масса файлов dxf для лазерной резки. Часто мы хотим выгравировать номер детали на детали из листового металла. Моя попытка состоит в том, чтобы сделать квадратную рамку, где длина и ширина равны высоте и ширине текста. После того, как Programm нашел место, где он находится за пределами внутреннего контура и внутри внешнего контура, я хочу заполнить поле текстом. Я попытался абстрагировать контуры полигоном и начать проверять, подходит он или нет, какой из них работает нормально. Полностью еще не закончил.

Мне было интересно, есть ли какая-то библиотека / инструмент, который имеет эту функцию, потому что время вычислений довольно велико, прежде чем вкладывать больше средств в программу, или у кого-то есть более простой подход, чем у меня.


person Max S    schedule 08.03.2021    source источник


Ответы (1)


Следующий выпуск ezdxf (v0.16 сейчас находится в стадии бета-тестирования), имеет новый text2path, который использует Matplotlib для отображения текстовых строк в виде объектов пути. Эти объекты пути могут быть размещены как:

  • Объекты POLYLINE и SPLINE для сохранения плавных кривых
  • выравнивается до объектов POLYLINE или LWPOLYLINE, которые состоят только из прямых линий
  • Объекты ШТРИХОВКИ с ребрами сплайна или без них
  • сгладить пути в простые вершины

Есть несколько примеров в https://github.com/mozman/ezdxf/tree/master/examples/addons (*_to_path.py).

Объекты пути можно преобразовать с помощью преобразования Matrix44, и даже существует функция для размещения некоторых путей в поле: fit_paths_into_box().

Дополнительные вопросы можно задать на доске обсуждений на github.

person mozman    schedule 08.03.2021