2

I have the following zpl that is sent to the printer. I'm trying to understand how exactly the "header" portion is interpreted, or why it's necessary at all. The mmf file referenced in the header is already loaded to the memory of the printer. I can send the zpl to the printer and it will work without issue, but I can also remove it entirely without it affecting output.

I couldn't find anything in Zebra's documentation about the [CARD] and [GRAPHIC] parameters, or how to call things from the printer's memory outside of just using ^XG.

^XA
^LH20,10
^LT-20
^SD00
^MD00
^POI
^LS240
^FWN
..begin header in question
[CARD]
SlotID=1
OrgName=C:\mypath\myfile.mmf
CardSize=4096000
Description=mytest
FontIndex=0
BmpIndex=1
FontPlugin=ZEBRADL
GraphicsPlugin=ZEBRADL
UnicodeProportTables=0
[GRAPHIC0]
Name=C:\mypath\mygif.GIF
Width=72
Height=250
Downloaded=1
ReallyDownloaded=1
PictId=1
DownloadId=1
DownloadSize=3062
RecallEsc=^FT{x},{y+250}^XGE:{if(ExportingToForm()&&VarID()>=0)}{ZebraFN("Something")}{else}Somethingelse{endif},1,1^FS\n

 ...more actual zpl

Why are the [CARD] and [GRAPHIC0] parts of the header necessary? Are they left over from an older format? I'm sending command data to the printer via static IP on a network, is there a way to format these headers so the printer will accept them?

JWiley
  • 3,129
  • 8
  • 41
  • 66

1 Answers1

2

The CARD and GRAPHIC are not ZPL and this would be ignored by the printer. What you have to watch out for is the ^ and ~ character in those sections as the printer my try to interpret them. All ZPL commands start with those characters (or a binary equivalent).

Those other sections probably come from ZDesigner or another ZPL generation tool that would nromally get processed out before that tool would send the ZPL to the printer.

As for formatting them so the printer will accept them? No - they just are not commands that the printer would recognize.

If you have a very simple format like:

^xa^fo100,100^a0n,50,50^fdHello World^fs^xz

You could insert text before after and in some places in the middle without changing what the printer prints...

this is ignored^xaextra stuff here does not matter^fo100,100^a0n,50,50^fdHello World^fsblah blah blah^xzThe xz before this causes the print

That would still print.

you could even insert carriage returns all over that and it would not matter.

banno
  • 1,529
  • 8
  • 12
  • Thanks banno. I'm curious how I can send the zpl as is to the printer without it causing an issue, and why the previous user felt the need leave it in. Do you have any idea which tool may have been used for it, and if it has documentation for the headers in question? – JWiley Sep 30 '14 at 19:07
  • I believe mmf is used by Zebra Designer and also Nicelabel as a way to organize fonts and graphics to be used on the printer. You can send it as is because the printer ignores what is not formatted for it. – banno Sep 30 '14 at 23:24