EXP Embroidery File Format/ru

Я создал эту страницу для документирования формата файлов .exp. Надеюсь, это упростит работу с файлами .exp и позволит другим пользователям создавать собственные файлы по мере необходимости.
Основная информация
Файлы .exp — это файлы для вышивки, предназначенные для использования с системами Melco или Bravo.
Эти файлы записаны в двоичном коде. Код записывается в виде наборов по 8 бит. Бит — это двоичное число 0 или 1. Эти наборы из 8 бит называются байтами. Эти байты содержат информацию о каждой операции стежка. Существует 256 возможных комбинаций битов для создания байта. Эти байты представляют собой числа от 0 до 255. Каждое из этих чисел обозначает команду для вышивальной машины.
Байты записываются в файл парами по 2. Эти пары обычно представляют собой команды для перемещения по осям x (влево/вправо) и y (вверх/вниз). Первый байт — это команда перемещения по оси x, а второй — по оси y.
Минимальное разрешение перемещения стежка в файле формата .exp составляет 0,1 мм. Поскольку все перемещения основаны на этом разрешении, наиболее удобно считать 0,1 мм базовой единицей измерения при работе с данными, которые будут записаны в вышивальный файл.
Максимальное перемещение за одну команду стежка составляет 12,7 мм. Любое желаемое перемещение, превышающее это расстояние между стежками, должно быть выполнено с помощью одного или нескольких «скачков», описанных ниже.
Команды перемещения и сшивания
Перемещение на 0 по осям x или y представляется байтовым значением 0.
Положительное изменение по оси x или y в мм*10^-1 представляется одним и тем же байтовым значением. Например, изменение на +0,3 мм представляется байтовым значением 3, изменение на +7,1 мм — байтовым значением 71 и т. д.
Отрицательное изменение по осям x или y в мм*10^-1 представляется вычитанием абсолютного значения этого изменения из 256. Например, изменение на -0,3 мм представляется байтовым значением 253, изменение на -7,1 мм — байтовым значением 185 и т. д.
Специальные операции также задаются в виде набора из 2 байтов. К таким специальным операциям относятся «изменить цвет / остановиться», «перейти» и «завершить / обрезать нить». Эти специальные операции всегда начинаются с байта 128, а второй байт указывает, какую из специальных операций следует выполнить.
- Команда "Сменить цвет / Стоп" дает команду машине приостановить работу, чтобы оператор мог сменить цвет вышивальной нити или отрегулировать настройки машины по своему усмотрению в процессе печати.
- Байтовое представление - (128,1)* *затем следует команда движения (0,0), если прыжок не требуется. Затем следует еще одна команда (0,0), указывающая на создание стежка в этой точке, с которого начинаются следующие команды.
- "Jump" означает, что следующий набор команд перемещения по осям x и y не должен сопровождаться стежком. Это позволяет машине делать большее расстояние между стежками или создавать отдельные объекты без сшивания ткани между ними.
- Байтовое представление - (128,4)* *за которым следует команда координат (x,y) для предполагаемого прыжка. Последовательно объединяйте команды прыжка и координаты прыжка, чтобы преодолеть большее расстояние. После завершения прыжка или серии прыжков используйте команду сшивания координат (0,0) для создания начала координат для следующей операции сшивания.
- Команда «Завершить/обрезать нить» означает, что нить следует обрезать. Она может использоваться при завершении части процесса вышивания и/или в конце файла. Рекомендуется всегда завершать файл этой командой. Это обеспечивает аккуратный обрез в конце процесса вышивания, предотвращая появление торчащих нитей.
- Байтовое представление - (128,128)* *должно сопровождаться командой (0,0).
Для более наглядного объяснения команд стежка обратитесь к таблице команд стежка.
процесса написания

Файл .exp всегда начинается с координатного центра (0,0), а затем содержит последовательность команд для трассировки рисунка стежка. Если не задана специальная операция, машина будет следовать инструкциям по перемещению по координатам (x,y) и создавать обычный стежок. Когда машина доходит до команды специальной операции, она выполняет следующую команду перемещения после установки байта специальной операции, а затем выполняет эту специальную операцию.
Наглядный пример, демонстрирующий связь физических команд с байтовым представлением, приведен на изображении выше.
В двоичном представлении эта последовательность стежков будет записана в виде непрерывной строки, например:
Напоминаем, что команда "chr(0),chr(0)" указана после команды "cut/end", поскольку за этой специальной командой должен следовать двойной ноль.
кодировки
Важно отметить, что при записи файлов .exp кодировка, используемая для записи данных в файл, может вызывать множество сбоев. Если используются языки "ASCII" или "UTF-8", файл будет полностью испорчен. При использовании Python 3.8 для записи файлов .exp наилучшие результаты были получены с кодировкой "latin-1". Даже с этим языком возникают некоторые сбои, наиболее заметные из которых связаны с числом 10. Использование команды 10 приводит к перемещению и сшиванию на (+1,3, +1,0) мм для (x, y) в одной байтовой команде, если она указана вместо x. Затем чтение байтов сбрасывается парами. Таким образом, следующая команда y считывается как x, и это смещение сохраняется до конца файла. Если 10 получено как команда y, из команды создаются два сшивания. Первое — это перемещение и сшивка на (0, +1,3) мм, второе — перемещение и сшивка на (+1,0, 0) мм. Следующие за этими стежками стежки также будут совершенно отличаться от заданных команд, даже если команды обычно работают совершенно нормально. Обычно это приводит к большому скачку в нежелательном направлении. Поэтому в заключение, всегда используйте кодировку языка "latin-1" при написании файлов на Python и не пишите команду 10.
Запись EXP-файлов для изготовления электрических резисторов на ткани
Вот пример использования записи EXP-файлов. Используйте его, если хотите увидеть, как записывать EXP-файлы в Python. Это проект, над которым я работал, и для его реализации мне нужно было научиться создавать EXP-файлы. Подробнее см. на соответствующей странице.
ресурсы
Я использовала страницу вики-ресурса edutech Embroidery Format EXP , чтобы получить первоначальное представление о формате файла EXP. По крайней мере, на момент публикации этой статьи, эта страница довольно неполная, но она дала мне полезную отправную точку для создания более полного набора документации. Поэтому спасибо автору оригинальной статьи.
| Авторы | Сомерсет Шрок |
|---|---|
| Лицензия | CC-BY-SA-4.0 |
| Организации | БОЛЬШИНСТВО |
| Цитировать как | Сомерсет Шрок (2021–2025). «Формат файла для вышивки EXP» . Appropedia . Дата обращения: 2 декабря 2025 г. |