Печать купюры с верхним и нижним колонтитулами на непрерывной этикетке с использованием принтера Zebra [ZPL] - PullRequest
0 голосов
/ 04 марта 2020

Я хочу напечатать счет с верхним и нижним колонтитулом на непрерывной этикетке.

  • С верхним колонтитулом все в порядке, но проблема в теле и нижнем колонтитуле.

  • В теле есть элементы, и можно добавлять больше элементов, поэтому высота должна увеличиваться.

  • Нижний колонтитул идет после тела, так как я могу определить местоположение нижнего колонтитула.

  • Вот счет

Код ZPL:

^XA
^LT0
^MNN
^MTT
^PON
^PMN
^LH0,0
^JMA
^PR6,6
~SD15
^JUS
^LRN
^CI27
^PA0,1,1,0
^XZ
^XA
^MMT
^PW599
^LS0
^FPH,3^FT375,751^A@I,28,27,TT0003M_^FH\^CI28^FDMy Market^FS^CI27
^FPH,3^FT353,708^A@I,28,27,TT0003M_^FH\^CI28^FDBill No:^FS^CI27
^BY3,3,47^FT533,639^BCI,,Y,N
^FH\^FD>;1112223334445556667788^FS

^FO36,564^GB529,0,3^FS

^FPH,3^FT543,503^A@I,28,18,TT0003M_^FH\^CI28^FDNo.^FS^CI27
^FPH,3^FT328,503^A@I,28,18,TT0003M_^FH\^CI28^FDName^FS^CI27
^FPH,3^FT133,503^A@I,28,18,TT0003M_^FH\^CI28^FDPrice^FS^CI27

^FO37,487^GB529,0,3^FS

^FO37,480^GFA,49,204,68,:Z64:eJxjUGBioBAxSCS2UYiAZjzus3jcRwnJwAAAnjM7/Q==:C016

^FPH,3^FT341,451^A@I,28,27,TT0003M_^FH\^CI28^FDWater^FS^CI27
^FPH,3^FT139,456^A@I,23,22,TT0003M_^FH\^CI28^FD$ 10^FS^CI27
^FPH,3^FT541,451^A@I,28,27,TT0003M_^FH\^CI28^FD01^FS^CI27

^FO36,413^GFA,49,204,68,:Z64:eJxjUGBioBAxSCS2UYiAZjzus3jcRwnJwAAAnjM7/Q==:C016

^FPH,3^FT139,380^A@I,23,22,TT0003M_^FH\^CI28^FD$ 19.99^FS^CI27
^FPH,3^FT328,375^A@I,28,27,TT0003M_^FH\^CI28^FDMilk^FS^CI27
^FPH,3^FT541,375^A@I,28,27,TT0003M_^FH\^CI28^FD02^FS^CI27

^FO36,331^GFA,49,204,68,:Z64:eJxjUGBioBAxSCS2UYiAZjzus3jcRwnJwAAAnjM7/Q==:C016

^FPH,3^FT342,302^A@I,28,27,TT0003M_^FH\^CI28^FDBread^FS^CI27
^FPH,3^FT138,307^A@I,23,22,TT0003M_^FH\^CI28^FD$ 5^FS^CI27
^FPH,3^FT540,302^A@I,28,27,TT0003M_^FH\^CI28^FD03^FS^CI27
^FPH,3^FT325,221^A@I,28,18,TT0003M_^FH\^CI28^FDTotal^FS^CI27

^FO39,249^GB529,0,3^FS

^FPH,3^FT339,178^A@I,28,18,TT0003M_^FH\^CI28^FD$ 34.99^FS^CI27
^FPH,3^FT354,102^A@I,28,18,TT0003M_^FH\^CI28^FDThank You^FS^CI27

^FO40,133^GFA,49,204,68,:Z64:eJxjUGBioBAxSCS2UYiAZjzus3jcRwnJwAAAnjM7/Q==:C016

^PQ1,0,1,Y
^XZ

Я использую xamarin android для печати кода ZPL, поэтому я могу сделать это, используя только код ZPL, или я должен сделать это программно, изменив Y Positon для каждой строки?

Ответы [ 2 ]

1 голос
/ 04 марта 2020

Вы должны рассчитать положение Y нижнего колонтитула программно в зависимости от количества элементов в теле.

0 голосов
/ 05 марта 2020

Когда я сделал что-то подобное, я рассчитал Положение Y для каждой строки как:

Start Position + Pixels Per Record * (Record Number - 1)

Для нижнего колонтитула Вы можете сделать что-то почти то же самое:

Start Position + Pixels Per Record * Record Count

...