Is there a possibility of a version of QZ Tray mobile, type app for android and iOS to send impressions via Bluetooth?

3,471 views
Skip to first unread message

chinno...@gmail.com

unread,
May 24, 2017, 2:59:06 PM5/24/17
to qz-print
Today QZ Tray handles USB and WIFI printers, however I have a need to use portable printers with communication via Bluetooth, and this Bluetooth printer receives the impressions of a Tablet or Smartphone web browser without the need for a print server (Computer With QZ Tray installed).

Today I can not use Bluetooth printers together with Tablets and Smartphones, in case the printer is on a Computer that has USB or WIFI installed printers getting prints, I wanted to eliminate this server from impressions, causing the mobile devices themselves to send impressions For Bluetooth printers?

This would simplify a few points of our business that needs more mobility, for example, the foodstrucks (drinktrucks), in some events to load notebooks and thermal printers decreases the agility of sales, our application is totally web, and already works well with QZ Tray In fixed stores, we want to improve mobility for our sales vehicles.

Good cost / benefit printer I have:

Star Micronics SM-T300i - http://www.starmicronics.com/sddev/printer/portable_printers/sm-t300i

Documentation available from manufacturers:

Star Micronics SM-T300i - http://www.starmicronics.com/sddev/support/sdkdocumentation.aspx

The Manufacturer has code samples for both web browser and Android and iOS app impressions, the good thing is that this brand already has Apple MFi certification, so it's easy to use on Apple Tablets and Smartphones.

Tres Finocchiaro

unread,
May 26, 2017, 1:17:09 AM5/26/17
to Chinnon Santos, qz-print
> Is there a possibility of a version of QZ Tray mobile, type app for android and iOS to send impressions via Bluetooth?

This is going to be determined by the technological limitations.  Currently iOS isn't very "silent" about opening a 3rd party URL (click a youtube URL from within a web page for example).  iOS also pauses applications that are not in the foreground, unless they're special Apple applications.  We're not iOS developers yet, so this may be more feasible, but will require R&D.  Also, HTTPS certificates continue to be a problem on all embedded devices.

Android on the other hand has more promise but we have not looked into inter-process communication between the browser (e.g. Chrome) and the device.

We do have ChromeOS working with 2.1, but still as a desktop application.

There is a language barrier as well.  Java SE simply doesn't run on any popular mobile hardware.  The software will need to be rewritten in a lower language such as C++ (and perhaps Objective C).

The goal is not immediately on our radar, but if developers have experience running background services on Android and iOS, it will build a foundation of design to begin the R&D.  A dedicated bug report for each platform (One bug report for iOS another for Android) would be the best place to start.  We invite anyone to start the dialog and crosslink to this email.

If not, we'll tackle this as part of our extended futuremap.

--
You received this message because you are subscribed to the Google Groups "qz-print" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qz-print+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

alex.m...@jewellerybox.co.uk

unread,
Jan 17, 2019, 10:20:05 AM1/17/19
to qz-print
We are using a Print server on Chrome on Android and its a dream ( thanks Tres ! ).

However some way to support bluetooth printers would be amazing there are some great deals out there on portable label printers now making this kind of technology so much more accessible than it used to be though not actually tested these in the real world

https://www.amazon.co.uk/Wireless-Portable-Bluetooth-Rechargeable-Printing/dp/B07585ZGQR/

Tres Finocchiaro

unread,
Jan 17, 2019, 11:21:41 AM1/17/19
to Alex (Jewellerybox Ltd), qz-print
Google has documented a new WebUSB standard which may make this possible through some form of direct-to-JS technology.


This means if QZ Tray were to offer support, it would simply be wrapper around our existing API (no communication back to a "QZ Tray" instance).

There are some hurdles for WebUSB... 
I'm not sure if this could be used to leverage a BlueTooth communication.  If not, we may need to take advantage of some other bi-directional communication.  We welcome ideas!



--
You received this message because you are subscribed to the Google Groups "qz-print" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qz-print+u...@googlegroups.com.

chinno...@gmail.com

unread,
Jan 17, 2019, 12:24:09 PM1/17/19
to qz-print
To get around this situation I have used a solution for years, I have a windows computer (Version 7 or 10) as a print server with 1 or more thermal printers installed, all with a unique identification, so I created a web server on that same computer with a web application that receives the print commands from mobile devices (tablet or smartphone) through the web browser, that application that runs on the computer receives and sends the print commands for QZ-Tray.

It works perfectly, there are more than 1200 print requests during 8 hours of activity, there is rarely packet loss that hinders the printing, but this is caused by wireless network factors.

Security? simple, the modem has 2 distinct wifi networks, one for communication of mobile devices and the computer that works as a print server, the other network is connected internet for customers' browsing.

Disadvantages? Of course it exists! There is always a need to have a computer (Windows or Linux, I have not tested on MAC) that can have the printers installed and can run a web server (Apache, PHP, MySQL).

Because of this, our Foodtruck can not take advantage of this solution, having to use a third party APP that has direct printing via USB or Bluetooth, in this case you can not keep a computer as an intermediary in operations, only a mobile device (tablet or smartphone) and a printer in sales operations.

alex.m...@jewellerybox.co.uk

unread,
Jan 18, 2019, 11:40:16 AM1/18/19
to qz-print
Surely you can do this :

To get around this situation I have used a solution for years, I have a windows computer (Version 7 or 10) as a print server with 1 or more thermal printers installed, all with a unique identification, so I created a web server on that same computer with a web application that receives the print commands from mobile devices (tablet or smartphone) through the web browser, that application that runs on the computer receives and sends the print commands for QZ-Tray.

With QZ Tray running as a print server on the PC in the same way ?

I guess this tackles something different asfor bluetooth printing a mobile device cant really be always near a computer with QZ tray running as a server. Its only the mobile device and the bluetooth printer that are in proximity.

chinno...@gmail.com

unread,
Jan 18, 2019, 3:04:10 PM1/18/19
to qz-print
No, QZ-Tray is not configured as the server, it is a simple installation, my QZ Tray does not receive data from the network, it receives data from the web browser where QZ Tray is installed, running on localhost, no extra configuration except the self-start option that I leave enabled to make life easier for employees.

An image speaks more than a thousand words, then a simple illustration follows.

Sem Título-1.png

In my case the question of use on mobile devices with Bluetooth communication would be for a specific division of our business, Food-Trucks, in this case the seller would have a Tablet or Smartphone on hand and one of those bluetooth printers that can be fixed at the waist , with 40-column printing, they run the battery and have a range of 4 to 6 hours, the duration of a remote event made by Food-Trucks, in the case of our pubs and kiosks my solution was the one I described, using of a computer with QZ-Tray installed and receiving the print commands through a web application, which abstracts all the complexity that QZ Tray needs to communicate in a network, my QZ Tray only communicates in localhost, my application that takes care of receive prints and forward to the local QZ Tray installed.

The QZ Tray in this case only abstracts for me all the different configurations that each printer has, so I can work with a simple HTML format with any EPSON, ELGIN, BEMATECH (very popular in Brazil) printers, each PUB buys a different printer, I would have to be testing and creating code for each of them, not today, I create only one HTML and I squeeze in all of them.

Alex

unread,
Jan 21, 2019, 4:33:58 AM1/21/19
to qz-print
Nice !

kavi.ka...@gmail.com

unread,
Mar 14, 2019, 4:22:33 AM3/14/19
to qz-print
Almost 2 months after last post...

Any progress on this subject?

Any development happened?

Is it possible to instal QZ on android and print on bluetooth printer installed on android yet?

Any sollution yet? Any hints?

All ideas very much wellcome :)

Thanx.

kavi.ka...@gmail.com

unread,
Mar 14, 2019, 5:01:14 AM3/14/19
to qz-print

Can a print-server bi lap top or does it has to be desk top?
Lap top can be carried arround and kept close to mobile phone...
For instance... One can have a lap top in the car as a print-server receiving print requests from mobile phone.
In most cases the driver stays in the reach of wifi connection with lap top.
Until android version of QZ is developed this can be a solution for mobile use...
right?

But still, is android version of QZ by any chance allready somewhere on the horrizon or on the way or in the plan?

Thanks.

kavi...

Tres Finocchiaro

unread,
Mar 14, 2019, 8:28:54 AM3/14/19
to kavi karnapura, qz-print
Print-server can be any device capable of running Java SE. (Desktop, Server, Laptop, Raspberry Pi) .

Note, DNS/IP Address is required which requires knowledge and control of the network environment.

Almost 2 months after last post...

Please do not do this.  This is strictly a technological limitation.  Time has nothing to do with it. :)

Message has been deleted

Tres Finocchiaro

unread,
Mar 14, 2019, 3:37:24 PM3/14/19
to qz-print
>  Note, DNS/IP Address is required which requires knowledge and control of the network environment.  
 
Is same level of this knowledge required while configuring print-server on desktop and laptop or is more knowledge reguired to configure print-server on laptop than on desktop?

It's the same, but what's important to understand is that in a controlled environment, you have control over IP address or Hostname, which is what SSL needs (assuming you plan on using SSL).

I want to put variable to print data:
something like this:
            { type: 'raw', data: xyz }     
I have var xyz = .... ; within my <script> tag but printer just won't print it :(
Could you please help me out?

I'm not sure what you mean.  You can't magically call JavaScript from URL.  If you need data from an external script, find a way to alert or console.log it first.  Once that's working and you have it in a variable, then you can add it to the data object.

kavi karnapura

unread,
Mar 14, 2019, 4:42:52 PM3/14/19
to Tres Finocchiaro, qz-print
>  Once that's working and you have it in a variable, then you can add it to the data object.

Yes, that's exactly what I want :)
Yes, I have data allready in the variable in javascript in the page from where I call qz function.
I just need to add it to the data object yes.
But I don't know how to do that.

with push class or $(...)

Could you please show me how?

This is my html file that calls qz function:

<html>
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<base target="_top">
 <?!= include('rsvp-310'); ?>
 <?!= include('sha-256'); ?>
 <?!= include('qz-tray'); ?> 
</head>
<body>
<?!= include('script_js'); ?>     
<h1>Printing to POS !!!</h1>
<div id="data"></div>
</body>
</html>

the main thing is in this file script_js.html:

<script>
    window.onload = function(){
      google.script.run.withSuccessHandler(showData).getData();
    }

    function showData(data){
      var html = data[0][0];
      document.getElementById("data").innerHTML = html;    
      qz.websocket.connect().then(function() { 
      return qz.printers.find("POS-58");              // Pass the printer name into the next Promise
    }).then(function(printer) {
        var config = qz.configs.create(printer);       // Create a default config for the found printer
        var data = [
            { type: 'raw', format: 'image', data: 'http://www.damo-dar.si/QZ_Print_demoFolder/assets/img/image_sample_bw.png', options: { language: 'ESCPOS', dotDensity: 'single' } },
            { type: 'raw', data: '\nPrinted using qz-tray plugin.\n\n\n\n\n\n' },
            { type: 'raw', data: html }            
        ];
    return qz.print(config, data);
    }).catch(function(e) { console.error(e); });
    self.close ();
    }

</script>

Everything works but I would only like to get variable html into 3rd object of data array.

Can you please show me how?

Thank you.

kavi...

--
You received this message because you are subscribed to a topic in the Google Groups "qz-print" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/qz-print/-i6iu6bRif0/unsubscribe.
To unsubscribe from this group and all its topics, send an email to qz-print+u...@googlegroups.com.

kavi karnapura

unread,
Mar 14, 2019, 5:04:15 PM3/14/19
to Tres Finocchiaro, qz-print
Oh, and btw :)
I would like that window that holds html file that issues the print job automatically closes itself after issuing the print job.
For that reason I have put sentence self.close (); at the endo of the script_js file which is pulled (included) into html file
POSprint.html.

Any idea why self.close ();is not working?
Should I use some other approach to acchieve the same goal?
Could you pleas give me a hint?

Thank you.

Kyle La Barge

unread,
Mar 14, 2019, 11:01:47 PM3/14/19
to kavi karnapura, Tres Finocchiaro, qz-print
Hey Kavi,

>Everything works but I would only like to get variable html into 3rd object of data array.
It's as simple as what you've done: place a variable inside the array.

What I believe the issue is:
  1. You're mixing raw and pixel content.
  2. You need to specify the type: 'html' and format: 'plain' in the config.

Please note that you'll only be able to send pixel content to a raw printer if you have a printer driver installed that is capable of handling BOTH your raw ESCPOS code and the pixel content. Not all drivers are capable of this.

var data = [{
   type: 'html',
   format: 'plain', //'plain' if the data is raw HTML
   data: html //your html content
}];

If you're still having issues, please be descriptive of your errors - send us your browser console errors (F12 in chrome) and the QZ Tray logs (zip up %appdata%\qz). Knowing the errors you receive helps us troubleshoot your issues :)

Any idea why self.close ();is not working?
Did you open the window using a script? Looking at a few sources, including MDN, you cannot close a window with a script that was not opened by a script. Do you have any console errors?

image.png



Kyle LaBarge


You received this message because you are subscribed to the Google Groups "qz-print" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qz-print+u...@googlegroups.com.

Tres Finocchiaro

unread,
Mar 14, 2019, 11:46:04 PM3/14/19
to Kyle La Barge, kavi karnapura, qz-print
Hopefully Kyle's right about the pixel/raw confusion but early emails suggested HTML wasn't desired so I'm extremely confused. many of the questions are very basic JavaScript and HTML questions.  If you can use the QZ API successful, the problem is not with QZ.


Any idea why self.close ();is not working?


This has nothing to do with QZ.  There are several articles about how to properly handle JavaScript pop-up windows, including calling functions on pop-up windows, transferring data between a main window and a pop-up.  This mailing list shouldn't be used for learning how to handle JavaScript windows.


> <?!= include('script_js'); ?>
> script_js.html:

Is this a typo? Or do you really have an HTML file called script_js?

I'm really starting to grow concerned about the level of expectations here.  We should be focusing on QZ.

kavi karnapura

unread,
Mar 15, 2019, 12:12:58 AM3/15/19
to Kyle La Barge, Tres Finocchiaro, qz-print
Thanks for the answer... though it is not exactly what I want to achieve...
I am trying to design a printout of an invoice for the customer that comes to my shop and buys something.
I am using a thermal USB POS printer Zjiang 5802 with 58mm paper width.
I create invoice with google sheets software and the invoice is residing on in google drive folder in google cloud.
After days of research I have managed to put together a google script that gets the data from my invoice google sheet on google server and puts them as an javascript array variable into html file that calls the qz print service.
All this I have managed to put together.

But now I lack the ability to design the printout of the invoice from qz.
What I lack is positioning.
I want that specified variable is printed in specified position on the invoice.
And I need images as well as raw data and ESC comands in same packet.
Because on the top of the invoice I want to have my company's logo and at the bottom comes qr code or code128 required by tax authorities of my country - every issued invoice has to be before printing send to taxation office server which stores the information from the invoice like amount paid and amount of tax included and tax rate included etc... then the tax office server issues a qr code in base64 format and has to be printed on the bottom of invoice.

So, I need to print on one ivoice image, raw data and qr code and everything has to look nice :)
So, I miss the ability to position the printout elements like align left, align right, align center... something similar as I would do with <div> element on web page: float left, float right, clear left, clear right... etc...

So, is it possible to have all in one print data array? 
image for company's logo
raw text for the body of the invoice
qr code or code128 and
ESC comands to cut the paper and open the cash drawer.

Is this possible?
How can I accomplish this?

thank you.

kavi...

Tres Finocchiaro

unread,
Mar 15, 2019, 12:23:33 AM3/15/19
to kavi karnapura, Kyle La Barge, qz-print
Thanks for explaining that helps.

> is it possible to have all in one print data array? 
image for company's logo
raw text for the body of the invoice
qr code or code128 and
ESC comands to cut the paper and open the cash drawer

Yes, QZ supports this just fine.  You can have as many elements in a single print array as you wish.  I see the dilemma, you have to break-up your content appropriately, but without sample data it's hard to draft what a proper syntax would look like, but it appears you're using the API correctly just getting hung up on how to dice up the data for an array.

Our array elements can be plain strings or objects and you may mix them as you wish.  You'll probably notice we do this in our tutorials.  We also tend to split up ESCPOS commands for readability purposes.

Is there any dara chunks you can share?

kavi karnapura

unread,
Mar 15, 2019, 12:28:24 AM3/15/19
to Tres Finocchiaro, Kyle La Barge, qz-print
>> <?!= include('script_js'); ?>
>> script_js.html:
>
> Is this a typo? Or do you really have an HTML file called script_js?

No, it is not a typo.
Actually it is script_js.html
But .html is not required because google script is expecting and accepting everything as html.
So, the content of script_js.html is:

<script>

    window.onload = function(){
      google.script.run.withSuccessHandler(showData).getData();
    }
    function showData(data){
      var html = data[0][0];
      document.getElementById("data").innerHTML = html;    
        qz.websocket.connect().then(function() { 
        return qz.printers.find("POS-58");              // Pass the printer name into the next Promise
    }).then(function(printer) {
        var config = qz.configs.create(printer);       // Create a default config for the found printer
        var dataToPrint = [
            { type: 'raw', format: 'image', data: 'http://www.damo-dar.si/QZ_Print_demoFolder/assets/img/image_sample_bw.png', options: { language: 'ESCPOS', dotDensity: 'single' } },
            { type: 'raw', data: '\nPrinted using qz-tray plugin.\n\n\n * * * '+html+' * * * \n\n\n' }
//          { type: 'raw', data: '\n \n\n\n'+html+' \n\n\n' }  -- this line doesn't give desired result that's why I // it           
//          { type: 'raw', data: html }   ---- this line doesn't give desired result that's why I // it           
        ];            
//dataToPrint.push({ type: 'raw', data: $(html) }); - with this lines I was unsuccessful to push variable in the object element
//return dataToPrint; ------------------------------------- with this lines I was unsuccessful to push variable in the object element
    return qz.print(config, dataToPrint);
    }).catch(function(e) { console.error(e); });
    self.close ();
    }

</script>

and this is included into POSprint.html with the line:
<?!= include('script_js'); ?> 

But all this works nicely.

I am troubled with designing the printoutput as I described in my other mail.

Thanx

kavi...
 

kavi karnapura

unread,
Mar 15, 2019, 12:39:16 AM3/15/19
to Tres Finocchiaro, Kyle La Barge, qz-print
>> Any idea why self.close ();is not working?
>
>This has nothing to do with QZ

Yes, I have figured out this one: the script can't close window that was not opened by that same script... :)
Any work arround?

My aim is that when I click a button within my invoice google sheet it opens a web page that cals qz print service and close that page when the print is done. Is this possible to achieve?

I'm really starting to grow concerned about the level of expectations here.  We should be focusing on QZ.

Yes, I am focusing on how to define the design of the printout with QZ.

I've been studying QZ documentation for the last four days intesely believe me.
I am just asking things which I wasn't able to find in QZ documentation.

On Fri, 15 Mar 2019 at 04:46, Tres Finocchiaro <tres.fin...@gmail.com> wrote:

Tres Finocchiaro

unread,
Mar 15, 2019, 12:48:39 AM3/15/19
to kavi karnapura, Kyle La Barge, qz-print
> the script can't close window that was not opened by that same script... :)
> Any work arround?

Not qz related, but no, not that I'm aware of.  Clarification, it's a tab/window scope security, not necessarily a script security.  The origin of the script is often irrelevant to the browser, just a matter of properly managing your object references.

my invoice google sheet it opens a web page that cals qz print service and close that page when the print is done. Is this possible to achieve?

Yes.  There are various ways to achieve this.  One is to use URL anchor tags and read them with JavaScript.  Another is to have one JavaScript window talk to another.

Injecting JavaScript and anchor-data-passing is very tricky and is way out of scope of this list.  Regardless, it's doable.  Usually best to make a standalone POC and then adopt it to your needs after it's working.

Tres Finocchiaro

unread,
Mar 15, 2019, 1:03:54 AM3/15/19
to kavi karnapura, Kyle La Barge, qz-print
*data chunks

On Fri, Mar 15, 2019, 12:59 AM kavi karnapura <kavi.ka...@gmail.com> wrote:
> Is there any dara chunks you can share?

Unfortunatelly I don't know what you mean by dara chunks because english is not my mother languge.

But I am attaching some pictures of what I get out of the printer:




V pet., 15. mar. 2019 05:23 je oseba Tres Finocchiaro <tres.fin...@gmail.com> napisala:

kavi karnapura

unread,
Mar 15, 2019, 1:09:14 AM3/15/19
to Tres Finocchiaro, Kyle La Barge, qz-print
I have sent you an email and have received following reply:

Mail Delivery Subsystem <mailer...@googlemail.com>

06:00 (4 minutes ago)
to me
Hello kavi karnapura <kavi.ka...@gmail.com>,

The message you are sending is too large.  All messages must be less than 8.00 MBytes.

If you have questions related to this or any other Google Group, visit the Help Center at https://groups.google.com/support/.

Thanks,

Google Groups


Have you received my email where I am attaching pictures of what I get from the printer?

I hope that you can see there that there is a lot of jung characters on my printout.

And text is printed over the picture and some lines of wild characters are there over the picture...

I hope that now you can get idea of what I am talking about.

kavi...

On Fri, 15 Mar 2019 at 05:59, kavi karnapura <kavi.ka...@gmail.com> wrote:
> Is there any dara chunks you can share?

Unfortunatelly I don't know what you mean by dara chunks because english is not my mother languge.

But I am attaching some pictures of what I get out of the printer:




V pet., 15. mar. 2019 05:23 je oseba Tres Finocchiaro <tres.fin...@gmail.com> napisala:
Thanks for explaining that helps.

Lite Finocchiaro

unread,
Mar 15, 2019, 1:21:01 AM3/15/19
to kavi karnapura, Tres Finocchiaro, Kyle La Barge, qz-print
Host the image or share it on Google Drive. This is a free Google groups email list, and there are limitations on attachment sizes.

kavi karnapura

unread,
Mar 15, 2019, 1:21:57 AM3/15/19
to Tres Finocchiaro, Kyle La Barge, qz-print
here is the list of the lines that I have tried to get the desired outcome but all unsuccessfully :(

//            { type: 'raw', data: html }            --- does not work
//            { type: 'raw', data: $(html) }        --- does not work
//            { type: 'raw', data: ''+html+'' }      --- does not work  
//            { type: 'raw', data: ' '+html+' ' }      --- does not work  
//            { type: 'raw', data: '\n '+html }      --- does not work  
//            { type: 'raw', data: '\n \n\n\n'+html+' \n\n\n' }      --- does not work  
//            { type: 'raw', data: '\nPrinted using qz-tray plugin.\n\n\n * * * BINGO!!! * * * \n\n\n' }, html]; does not work

// dataToPrint.push({ type: 'raw', data: $(html) });             --- does not work
   followed by
// return dataToPrint;                                                        --- does not work

the only thing that works partially is:

//            { type: 'raw', data: '\nPrinted using qz-tray plugin.\n\n\n * * * '+html+' * * * \n\n\n' }

What am I doing wrong?

Can you help me please?

kavi karnapura

unread,
Mar 15, 2019, 2:02:06 AM3/15/19
to Tres Finocchiaro, Kyle La Barge, qz-print
this is the rough design of the invoice as I want it to appear in word description:

ESC command for cash drawer open = fixed content

Company’s logo = image, align center = fixed content

Empty line  = fixed content

Company’s name align center & line break = fixed content

Company’s address align center & line break = fixed content

ZIP code - City align center & line break = fixed content

Company’s Phone number align center & line break = fixed content

Empty line = fixed content

Empty line = fixed content

“Buyer:” string align left & line break = fixed content

Empty line  align left & line break = fixed content

Buyer’s name  align left & line break = content from variable

Buyer’s address   align left & line break = content from variable

Buyer’s zip code and city   align left & line break = content from variable

Empty line  align left & line break = fixed content

Empty line  align left & line break = fixed content

------------------------------------------------------------ = string accross the whole with of paper = fixed content

Item description | Quantity | Unit price | Amount = string accross the whole with of paper = fixed content

------------------------------------------------------------ = string accross the whole with of paper = fixed content

itemDes[i][j]  | quantity[i][j] | price[i][j] | amount[i][j] = content from variable

Empty line  align left & line break                           = content from variable

itemDes[i][j]  | quantity[i][j] | price[i][j] | amount[i][j] = content from variable

Empty line  align left & line break                           = content from variable

itemDes[i][j]  | quantity[i][j] | price[i][j] | amount[i][j] = content from variable

.

.

.

Continue down for number of articles bhought

------------------------------------------------------------ = string accross the whole with of paper = fixed content

Empty line  align left & line break = fixed content

TOTAL to be paid = string left aligned ‘ + totalAmount variable value on the right edge of the paper in Amount column

Empty line  align left & line break = fixed content

Empty line  align left & line break = fixed content

Qr code align center & line break = content from variable

Empty line  align left & line break = fixed content

Code128 align center & line break  = content from variable

Thank you  = string aligned center & line break = fixed content

Come again  = string aligned center & line break = fixed content

Or visit our page:  = string aligned center & line break = fixed content

www.our-page.com  = string aligned center & line break = fixed content

Empty line  align left & line break = fixed content

Empty line  align left & line break = fixed content

ESC command for paper cut = fixed content


Can you please give me some sample code to look at to see how it can be done?

kavi...



Lite Finocchiaro

unread,
Mar 15, 2019, 2:50:13 AM3/15/19
to kavi karnapura, Tres Finocchiaro, Kyle La Barge, qz-print
Please create a new thread for these questions,as they are not related to the subject of the thread.

-Lite

kavi karnapura

unread,
Mar 15, 2019, 3:48:32 AM3/15/19
to Lite Finocchiaro, Tres Finocchiaro, Kyle La Barge, qz-print
Ok, I will. 
I am preparing material for that new thread.
Thank you.

Tres Finocchiaro

unread,
Mar 15, 2019, 8:48:16 AM3/15/19
to kavi karnapura, Lite Finocchiaro, Kyle La Barge, qz-print
Also, the data should be data. :). I just see variables and pseudo-data.  Please provide data.
Reply all
Reply to author
Forward
0 new messages