2 Replies Latest reply on Sep 20, 2017 3:03 AM by Senen de Diego

    Using EPL fonts from ZPL

    Django Redlar



      I'm trying to use the EPL fonts (fonts 1, 2, 3, 4, 5, 6 and 7) in my ZPL label template. I'm getting some text to print on the label, but it's all spaces and special characters -- not the actual text that I specified in my ZPL code! Any idea what the problem is?


      Here's some sample ZPL (it prints things like ")ÌÓ( Ó( à )Í() $ £ƒ¢\Ç"):



      ^FO100,100^A1^FDTHIS IS A TEST - 12345^FS

      ^FO100,200^A2^FDTHIS IS A TEST - 12345^FS

      ^FO100,300^A3^FDTHIS IS A TEST - 12345^FS

      ^FO100,400^A4^FDTHIS IS A TEST - 12345^FS

      ^FO100,500^A5^FDTHIS IS A TEST - 12345^FS

      ^FO100,600^A6^FDTHIS IS A TEST - 12345^FS

      ^FO100,700^A7^FDTHIS IS A TEST - 12345^FS



      Thanks for any hints!



        • Re: Using EPL fonts from ZPL
          Robin West

          Hi Django,

          Unfortunately EPL fonts are not compatible with ZPL.  ZPL has it's own built in fonts or you can download a font you want to use with the Zebra Setup Utility.  You basically confused the ZPL engine by giving it font names it didn't recognize.  Besides that, it looks like your character encoding may not be ASCII.  Specify the character set with the ^CI command.

          Robin West

            • Re: Using EPL fonts from ZPL
              Senen de Diego

              I have a similar problem,


              I'm writing a program that has to work both with printers supporting ZPL and printers which only support EPL and I'm trying to find font sizes that are as close as possible in both languages.


              I've come to this structure:

              &&   HxW                         *W*H
              o[ '16x10' ]={'^A0N,16,10'  ,'0,2,1,1,N',25}      
              o[ '20x12' ]={'^A0N,20,12'  ,'0,3,1,1,N',25}
              o[ '20x18' ]={'^APN'        ,'0,1,2,2,N',25} && 24x16      
              o[ '24x14' ]={'^A0N,24,14'  ,'0,4,1,1,N',30}      
              o[ '24x16' ]={'^A0N,24,16'  ,'0,1,2,2,N',30}      
              o[ '28x24' ]={'^AQN'        ,'0,3,2,1,N',35} && 20x24      
              o[ '28x24v']={'^AQB'        ,'3,3,2,1,N',35} && 20x24      
              o[ '35x31' ]={'^ARN'        ,'0,2,3,2,N',40} && 32x30      
              o[ '40x24' ]={'^A0N,40,24'  ,'0,3,2,2,N',50}      
              o[ '40x35' ]={'^ASN'        ,'0,3,3,2,N',50} && 40x36      
              o[ '48x14' ]={'^A0N,48,14'  ,'0,4,1,2,N',58}      
              o[ '48x28' ]={'^A0N,48,28'  ,'0,4,2,2,N',58}      
              o[ '48x32' ]={'^A0N,48,32'  ,'0,5,1,1,N',58} && Sólo alfanum en EPL      
              o[ '48x42' ]={'^ATN'        ,'0,4,3,2,N',58}      
              o[ '59x53' ]={'^AUN'        ,'0,3,3,4,N',70}  && 60x48      
              o['118x106']={'^AUN,118,106','0,4,3,7,N',130} && 120x98

              where variable o is an associative array containing for each index 'HxW' the parameters that define a font close to that size both in ZPL (first element) and EPL (second element). For instance, the third line means that to obtain a font size of '20x18' I can use  ^APN in ZPL (the documentation states that font P is 20x18 dots in size) and 0,1,2,2,N as p3,p4,p5,p6,p7 parameters of command A in EPL (because font 1 has a size of 12x8 dots and both size multipliers are 2, which gives me a size of 24x16 which is close enough).


              The question is that this not work. It's not even close. There is not a single line in there that produces similar sizes (see the attachment, ZPL left, EPL right) . Text in EPL is always larger, and I can not figure out why. Aren't dots the same size in ZPL and EPL or what? What am I getting wrong?