Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- - (void) tryRasterWithBitmapData:(char *)data ofWidth:(NSUInteger)width andHeight:(NSUInteger)height
- {
- const char initializeRaster[] = "\x1B\x2A\x72\x52";
- const char enterRaster[] = "\x1B\x2A\x72\x41";
- const char formFeed[] = "\x1B\x0C\x00";
- const char clearRaster[] = "\x1B\x2A\x72\x43";
- [self sendBytes:initializeRaster ofLength:sizeof(initializeRaster)];
- [self sendBytes:enterRaster ofLength:sizeof(enterRaster)];
- NSUInteger bitmapBytePerRow = width;
- NSUInteger bytesPerRow = 3 + bitmapBytePerRow;
- NSUInteger byteOffset = 0;
- for (NSUInteger y = 0; y < height; y++)
- {
- char *rasterCommandForRow = NULL;
- rasterCommandForRow = (char *)calloc(bytesPerRow, sizeof(char));
- *rasterCommandForRow++ = '\x6B';
- *rasterCommandForRow++ = '\x41';
- *rasterCommandForRow++ = '\x01';
- for (NSUInteger x = 0; x < width; x++)
- {
- *rasterCommandForRow++ = *(data + (byteOffset * sizeof(char)));
- byteOffset++;
- }
- [self sendBytes:rasterCommandForRow ofLength:bytesPerRow];
- }
- [self sendBytes:formFeed ofLength:sizeof(formFeed)];
- [self sendBytes:clearRaster ofLength:sizeof(clearRaster)];
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement