how correctly set the label positioned in the middle of the label with zpl code - zebra-printers

My code is here:
http://staging.advanced-technology-group.com/?density=8&quality=grayscale&width=4&height=6&units=inches&index=0&zpl=%5EXA%0A%0A%5ECI28%0A%5ECWZ%2CE%3ATT0003M_.FNT%0A%5EFS%5EXZ%5EXA%5EFWN%5EFO70%2C50%5EA0%2C30%2C25%5EFH%5EFD_ce_8e%0A%5EFS%5EFO70%2C90%5EBY2%5EB3%2C%2C100%5EFDtestprodcuct%5EFS%5EXZ
The problem i face, is that i calibrate the zebra printer (gc 420t) with the following:
hold the feed button, the led blinks once, then twice, then i release the feed button.
Then i notice that half of the label is not printed. Given that i use the above offsets. What should one do? There are two ways to make the label print correctly. Either with the printer make it print the label in the middle, or with putting instead of 70, a larger value in the FS command. How would you suggest i should proceed? If i use the code, is there a command to use instead of FS, a command that would tell the printer to print the label in the middle of the paper?

Related

I want to print an incremental count on the top right corner of my labels from my Zebra printer using ZPL

I currently know how many labels I want to print and use ^PQ# to print that amount but the trouble is getting an incrementing count printed on the corner of each label.
There are a couple problems right now. First is that Zebra doesn't have anything letting me print the odometer value on the zebra printer. It will kind of let me print the number of centimetres or inches using ~WQOD, but it comes with a lot of extra information that I don't want. I couldn't find any commands in the manual just letting me print the number of labels with the reset-able odometer.
I could create a counter outside of the printer then send a request to print each label with a new number on the top right, however, that overloads the printer and causes connection issues with the printer if I print too many labels.
Are there any ways to overcome either of those issues so I can print an incrementing counter on each label?
The command to print a sequence of numbers across labels is ^SN. It is specifically used with ^PQ.
^SN001,1,N^FS
^PQ3
To not overload the printer, send all individual labels within one connection, as a single string stream, don't open a separate connection for each.

ZPL Can I trick the printer into thinking I printed two labels?

I have a label stock that has two labels side by side, so I've written my code to print identically on both of these labels.
The issue is that a printer sees this as one label, but I need it to see them as two. How then, could I possibly trick the printer into thinking two labels have been printed?
If ZPL can print 2 separate pieces of code on one label this might be possible. If there's a command that makes a single label count as 2 then it's definitely possible.

How do I change the Zebra ZP 450 left position with OS X?

Please Help! I'm trying to print to a 1.5"x1.0" label on a Zebra ZP 450. The printer is connect to a Mac. When I print the label the printout is way over to the left. Only as small part of the bar code print out on the left side of the label. I'm guessing this is cause by the 'left position' in the printer settings. I tried calibrate (two flash and four flash) with no luck. I tried using zebrasetuputil app also with no luck (don't may not know enough of the programming to write it correctly).
Is there a terminal command I could use to change the default left position setting within the printer?
Sorry I'm new to all of this. Any help would be great!
OSX 10.11.1
Zebra ZP 450
Label Size: 1.5"x1.0"
Send this command to the printer:
^XA^LS0^XZ
^XA Starts the format (always required)
^LSa sets the offset where a = offset
^XZ End format (always required)
See the ZPL Programming Guide
Additionally, there is a command you can set to prevent other labels from setting these offsets. (Sorry, don't know off the top of my head) It's a very good idea because ideally these offset should only be used for printers that are exhibiting wear, and need an offset to account for physical differences.
Using it for label formats will cause all sorts of problems with label formats that don't set it, because the labels that do set it will cause the ones that don't to be offset.

Position of Text in a TextBox

Hi I have a textbox containing some text. I am looking to replicate the red spelling mistake squiggle type behaviour.
Using WinAPI I can
draw the squiggle between 2 points.
find out the height and width of
the word to be "squiggled".
What is the api call (or perhaps the methodology if it is more than a single api call) to find the position of that word in the text box so that I can position the sqiggle undeneath it.
Also, what are the messages I need to trap to ensure that the squiggle is redrawn. I'm currently only using WM_PAINT, which obviously isn't good enough.
EDIT (3 Sept 2012):
FYI, Here's where I got to so far. Needs a lot of refining but shows basic principles
https://gist.github.com/3607272
Many thx
S
What might work is using an auto-sized label. Make sure the fonts in the label and textbox are identical.
Detect the number of rows that are before the sentence containing the misspelled word.
Fill the label caption with the number linefeeds (vbcrlf) you got from question 1.
Append the words from the misspelled line (up to the misspelled word) to the labels caption.
The label size should now be identical with the beginning of the misspelled word.
Example text:
This is my first line.
And my second line.
And over here i have my mispeled word.
Label caption output should be (ignore the dots, they are empty lines):
.
.
And over here i have my
The labels height and width should match the position in the textbox, unless you have scrollbars. If the textbox has borders then you should add a fixed value to the height and width to get an exact match.

Translating from ZPL (Zebra Programming Language) to IPL (Intermec Programming Language)

I'm getting ready to embark on a week long adventure in translating a few print routines from ZPL to IPL.
Within the ZPL there exists a Label Reverse Print (^LRY) command. This command reverses the printing of all fields in the label format allowing a field to appear as white over black or black over white.
Does anyone know if a similar command exists within the IPL that performs such a task?
Printers:
Zebra ZTC 105SL-200dpi
Intermec 3400D
Found the equivalent command finally within IPL. The <SI>h command selects the Printhead Loading Mode.

Resources