Как сделать Автоматически изменять размер шрифта в соответствии с полем блока в zpl - PullRequest
0 голосов
/ 04 октября 2019

Я хочу автоматически изменить или настроить размер шрифта, чтобы увеличить или уменьшить защиту в зависимости от размера полевого блока. Например, ^ FB300,3,0, C ^ FDSurimi Salad, Kanikama, Сливочный сырSurimi Salad, Kanikama, Сливочный сыр ^ FS

^ XA ^ CF0,20 ^ FB300,3,0, C ^ FDSurimi Salad, Каникама, Сливочный сырСурими Салат, Каникама, Сливочный сыр ^ FS

^ XZ

1 Ответ

0 голосов
/ 05 октября 2019

ZPL - язык разметки, поэтому нет логики, которую вы действительно можете добавить к нему. Логика должна быть сделана в коде, который отправляет ZPL. Пример в Javascript будет выглядеть примерно так:

var listData = "Surimi Salad, Kanikama, Cream cheeseSurimi Salad, Kanikama, Cream cheese";
var fontwidth = 20;
var width = 300;
var lines = 3;
if (((listData.length * fontwidth)/width) > lines)
    fontwidth = fontwidth - 5;
var zpl = "^XA^A0N," + fontwidth + "," + fontwidth + "^FB" + width + "," + lines + ",0,C^FD" + listData + "^FS^XZ";

Это не будет точно, так как большинство шрифтов имеют переменную ширину, но это приблизит вас к подгонке.

...