Как автоматически выровнять нижний блок текста относительно верхнего блока в ZPL?

Можно ли настроить так, чтобы нижний блок автоматически сдвигался вниз при изменении высоты верхнего блока из-за увеличения числа строк в тексте? В настоящее время, если разместить нижний блок сразу под верхним, и когда в верхнем блоке появляется перенос строки, нижний блок на него налазит.
  • 1 апреля 2024 г. 9:29
Ответы на вопрос 2
Для автоматического выравнивания нижнего блока текста относительно верхнего блока в ZPL, можно использовать команду ^LL (Label Length) для задания высоты ярлыка (метки) и ^LS (Label Shift) для указания сдвига содержимого метки относительно её верхней границы. 

Пример использования команд:

^LL500
^FO100,100
^A0N,50,50
^FDВерхний блок текста^FS

^LL500
^LS50
^FO100,200
^A0N,50,50
^FDНижний блок текста^FS

В этом примере ^LL500 задает высоту ярлыка (в данном случае 500 единиц), а ^LS50 указывает на то, что содержимое метки будет сдвинуто на 50 единиц вниз относительно верхней границы метки. Таким образом, при изменении высоты верхнего блока из-за увеличения числа строк текста, нижний блок автоматически сдвигается вниз, чтобы избежать их перекрытия. 

Необходимо определить правильные значения для ^LL и ^LS в зависимости от вашего конкретного макета и размеров блоков текста.
В ZPL координаты задаются целыми числами от точки расчета. 
Относительно других полей на форме указывать нельзя.

Вариант в вашем ПО делать рендеринг текста в поле (или приблизительно высчитывать высоту текста), после для каждой этикетки формировать индивидуальный шаблон.
Похожие вопросы