I have to print a report directly on a thermal printer POS58 and I am using FortesReport 4.0 and Delphi XE6.
How to print all the content on a single page, whose height increases according to the content (without generating more than one page)? TRLReport has a property for this?
Just use a typical paper size(letter) and set it margins(top and bottom) to 0. Print that directly to the thermal paper, no special calls needed.
Related
I alternately use 2 different label type and size, I have a zd421 Zebra Printer and when changing the labels it execute the media calibration automaticly to the rigth size of label, but it prints 3-5 blank label each time we change paper, is there any possibility to disable printing extra blank label during calibration? is it possible to disable the media calibration? I apreciate you could help me.
If your printer has a display, you can change this in the tools ("power up action" and "head close action") menu otherwise you can use the ^MF ZPL command.
Have a look here to see how you can set the automatic action when you close the printer lid and when you power on the printer and here you can see how to send the commands to the printer.
But in few words, if you want to disable the calibration at all, you've to send the following commands
^XA
^MFN,N
~JUS
^XZ
I apologize for the long title, but that is exactly what I am trying to achieve.
I'll try to explain more briefly here:
So I have a Zebra ZT610 with a scanner that checks every single label as they are printed. The problem is that we're trying to print labels solely, not in batch, and the issue with that is that the printed label will always be in a position where an operator will not be able to take the label without destroying it. The issue with this is it will become a waste of labels and ribbons if this process remains as is.
How it is now (it is not really in production, but to give you an imagination):
Operator clicks on print
Zebra prints a label (and the scanner checks the label simultaneously)
Operator feeds a label (in order to take the label without destroying it)
Operator takes the label
Repeat the process
That is the issue, in theory we would have to waste HALF of the amount of available labels (assuming that all printed labels passed the inspection) in order to finish the job, which is definitely absurd and no one in the world would do this hahah
What we're trying to achieve:
Operator clicks on print
Zebra prints a label (and the scanner checks the label simultaneously)
The printer feeds a label automatically (or maybe half of a label at least for the printed label to be taken without any issue or destroying it)
Operator takes the label
Operator prints another label
Printer backfeeds the latest fed label
Printer prints on the backfed label
Continue on from step 3, and so on.
I searched for anything related to this and all what i found was this:
^XA
^FD
^XZ
All it basically those is "print" a space on a label, thus technically feeding a label. But i was never able to get that label to go back inside the printer.
Thank you for reading this far.
EDIT:
We have also tried this:
Went into the printers settings via its IP address and login
Click on 'View and Modify Printer Settings'
Click on 'General Setup'
Below you will find 'Tear Off Adjust', we've set it to the maximum (120) but that was not enough, it is still too far inside.
But i hope the solution above helps other people out there.
Take a look at the ~JS command - Change Backfeed Sequence. By overriding the default backfeed, you can force the label media to feed forward after printing, then retract on the next print.
Not knowing how much backfeed you will need, start with 50% (~JS50) and adjust from there.
I have a problem on impression of tickets in continuous paper thermal printer. I have done a report with paper size "custom", height 50 cm and I have checked "Endless page height" option, but when I print the ticket, it ends when he has a height of a Din A4 page.
Any idea why? I need to configure any more?
I use FastReport 5 in Seattle 10
I have searched info about this but nothing found.
try to mark check Large height in design mode, not Endless page height in report options, and set paper size = custom, with correct width and height (in your case 50 cm).
I have exactly the same problem without founded yet a solution until today that I'm working with C++Builder 11.1.
As a work-around, I divided the entire long report into some few different groups, each of them printed onto a new page. The grouping could be by category or some other valid concept for the user, if any.
The resulting report is going to be few pages cut at a small length than the original, but it will allow to show the whole expected information. It is not what I wanted originally but is a valid alternative solution for me.
Do you finally found a solution to reach your objective to print the report on a longer than Din A4 page?
I am trying to allow the user to select an appropriate paper size for their printer within my own print settings dialog. Does anyone know a workable solution - preferably cross platform but otherwise OSX.
If I use a TPageSetupDialog then when executed it produces an error in the PASever window of Invalidpmobject although the dialog shows but doesn't seem to affect the current printers paper size. There doesn't seem to be any proerties to see what the user selected either.
I need to set the paper size without actually printing as the user needs to be able to adjust things with the new paper size first.
I finally figured out the problem so here is the solution for anyone else with the problem:
Use TPageSetupDialog but you must set valid pagewidth and pageheight values for the current printer before calling it - otherwise you get an error reported in PAServer window and the printer selection box will be set to "any printer" instead of the current printer name.
Unfortunately you cannot derive the paper size directly from the printer pagewidth and resolution because it reports printable area not paper size. So I set a default of A4 whenever the user chooses another printer. I guess you could set the nearest standard paper size to the calculated value from printer.pagewidth/printer.activeprinter.activedpi.x if you want to take care of printers that do not support A4.
The other point to note is that the default page sizes in the TPageSetupDialog component are wrong. Set the units to mm and use width 210000 and height 297000 (note 10 times bigger than the default values) for A4 size that most printers should support.
(Powerbuilder 11.5.1 build 5097)
I have found that the text size setting (Windows7 Control Panel -> Appearance and Personalization -> Display "Change Text Size") alters printed reports coming from powerbuilder.
When set to smaller - 100% (default), the report works as designed
When set to Medium - %125, 33 rows of data take up nearly one full extra printed line and get cut off.
When set to Large - %150, the report works as designed again.
All my testing is being done with the same computer using the same printer changing just this one widnows preference. The report contains a fixed-size box which takes up most of the right half of the page. When I print using "medium fonts" the bottom of the data gets cut off. Folding over the page and comparing it to a "smaller font" print shows that the report block is exactly the same size but the data within it is drifting downwards.
Call me old fashioned but I firmly believe that the display settings of my monitor should not affect prints. Anyone have any information on how to make powerbuilder behave correctly?