如何在Zebra iMZ320打印机上调整进纸长度以匹配图像高度

我正在使用Zebra iMZ320打印机。 我正尝试从Android设备通过Zebra Utilities应用程序打印PNG图像。 有没有办法调整饲料的长度来匹配图像的高度,而没有图像拉伸? 目前,我使用Zebra Setup Utility发送给打印机的唯一命令是:

! U1 "ezpl.media_type" "continuous" ! U1 "ezpl.print_mode" "tear off"

打印UIImage有一个完整的例子(Objective-C),用ZEBRA iMZ320。 我想,你可以使用相同的打印命令,并在Java或Kotlin中准备适当的代码:

  UIImage *image = ...; //printing image; default wight should be ~572 id<ZebraPrinterConnection, NSObject> connection = [[MfiBtPrinterConnection alloc] initWithSerialNumber:serialNumber]; if (![connection open]) { NSLog(@"Printer Error! Please check the printer and try it again."); return; } NSError *error = nil; id<ZebraPrinter, NSObject> printer = [ZebraPrinterFactory getInstance:connection error:&error]; PrinterStatus *status = [printer getCurrentStatus:&error]; if (status == nil) { NSLog(@"Error: %@", [error localizedDescription]); return; } else if (!status.isReadyToPrint) { NSLog(@"The printor is not ready to print"); return; } CGSize imageSize = image.size; //Send configuration command with setting "media_type" = "continuous" and "printing height" = "imageSize.height" for (NSString *cmd in @[@"! U1 setvar \"ezpl.media_type\" \"continuous\"\r\n", [NSString stringWithFormat:@"! U1 setvar \"zpl.label_length\" \"%d\"\r\n", (int)imageSize.height]]) { if (![[printer getToolsUtil] sendCommand:cmd error:&error]) { NSLog(error == nil ? @"Printer Error! Please check the printer and try it again." : [error localizedDescription])); return; } } [NSThread sleepForTimeInterval:1]; if ([[printer getGraphicsUtil] printImage:[image CGImage] atX:0 atY:0 withWidth:-1 withHeight:-1 andIsInsideFormat:false error:&error]) { status = [printer getCurrentStatus:&error]; int i = 0; while (!status.isReadyToPrint || i > 30) { [NSThread sleepForTimeInterval:1]; status = [printer getCurrentStatus:&error]; i++; } [NSThread sleepForTimeInterval:1]; NSLog(@"Prining should be success"); } else { NSLog(error == nil ? @"Printer Error! Please check the printer and try it again." : [error localizedDescription])); } for (NSString *cmd in @[[NSString stringWithFormat:@"! U1 setvar \"zpl.label_length\" \"%d\"\r\n", 50], @"PRINT\r\n"]) { [[printer getToolsUtil] sendCommand:cmd error:nil]; } [connection close];