mirror of
https://git.familie-radermacher.ch/linux/ptouch-print.git
synced 2026-08-01 12:17:26 +00:00
print_img: correct off-center print area via per-device pin_offset
On the PT-P900W the print area is not centered on the 560-pin printhead: its center sits at pin 272 rather than the head center (pin 280), a fixed 8-pin offset that is constant across all tape widths. Centering the raster data on the head therefore prints ~0.5mm off-center (measured as a constant ~1mm margin delta across 12/18/36mm tapes, confirmed against the spec). Add a pin_offset field to _pt_dev_info (0 = centered, the default for all existing printers) and apply it in print_img. Set it to -8 for the PT-P900Wc, which reproduces the spec left-margin exactly for every tape width ((560-print_area)/2 - 8 = documented left margin). Reference: Brother "Software Developer's Manual - Raster Command Reference, PT-P900/P900W/P950NW", section 2.3.5 "Raster line" (per-tape left/right margin and print-area pin counts for the 560-pin head). https://download.brother.com/welcome/docp100407/cv_ptp900_eng_raster_102.pdf
This commit is contained in:
committed by
Dominic Radermacher
parent
9af6276135
commit
921206cd5f
@@ -57,6 +57,11 @@ struct _pt_dev_info {
|
||||
int dpi; /* Dots per inch of the printhead */
|
||||
//size_t bytes_per_line;
|
||||
int flags;
|
||||
/* Pins to shift the print area from the centre of the printhead.
|
||||
On some models the print area is not centred on the head; see the
|
||||
Brother "Software Developer's Manual - Raster Command Reference,
|
||||
PT-P900/P900W/P950NW", section 2.3.5 "Raster line". 0 = centred. */
|
||||
int pin_offset;
|
||||
};
|
||||
typedef struct _pt_dev_info *pt_dev_info;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user