0

Zebra QLn220 と link_os_sdk を使用して iOS デバイスから画像を印刷しようとしています。画像は 719x1248 ピクセルですが、印刷すると常に画像の半分が切り取られます。Zebra Setup Utilities でプリンタのラベル サイズを 1.8 インチ x 4 インチに設定しました。3 インチの空白のラベルと画像の小さな部分が印刷されるように見えます。また、画像を元のサイズの半分にスケ​​ーリングしようとしましたが、うまくいきませんでした。画像全体をラベルに表示するにはどうすればよいですか?

-(void)printImageButtonTapped : (DiscoveredPrinter *)discoveredPrinter {
    NSString* filePath = [[NSBundle mainBundle] pathForResource:@"jpegsample"
                                                         ofType:@"jpeg"];
    self.connection = [[TcpPrinterConnection alloc] initWithAddress:discoveredPrinter.address andWithPort:6101];
    NSError *error = nil;
    [self.connection open];
    self.printer = [ZebraPrinterFactory getInstance:self.connection error:&error];
    if(error != nil) {
        NSLog(@"Error: %@",error);
    }
    error = nil;
    if (self.printer != nil) {
        TcpPrinterConnection *zebraPrinterConnection = [[TcpPrinterConnection alloc] initWithAddress:discoveredPrinter.address andWithPort:6101];
        BOOL success = [zebraPrinterConnection open];
        success = success && [[self.printer getGraphicsUtil] printImageFromFile:filePath atX:0 atY:0 withWidth:-1 withHeight:-1 andIsInsideFormat:NO error:&error];
        [zebraPrinterConnection close];
        if (error != nil || self.printer == nil || success == NO) {
            NSLog(@"error: %@ printer: %@ success: %hhd",error,self.printer,success);
        }
    }
}
4

2 に答える 2

1

ここを変更するだけで、画像全体がラベルに表示されるという問題が解決されます。デフォルトのスケールは 2.0 です。必要に応じて変更する必要があります。

UIGraphicsBeginImageContextWithOptions(rect.size, NO, self.view.window.screen.scale+0.75); これを行った後-スケールは2.75です

これを試してみてください。私は同じ問題に直面していたので、これを追加して問題を解決してください。楽しい!

于 2015-08-06T06:10:50.950 に答える