guys this is my code:
- (void) renderPageAtIndex:(NSUInteger)index inContext:(CGContextRef)ctx { //background CGContextSetFillColorWithColor(ctx, [[UIColor colorWithRed:((float)238 / 255.0f) green:((float)233 / 255.0f) blue:((float)215 / 255.0f) alpha:1] CGColor]); CGContextFillRect(ctx, CGRectInset(leavesView.bounds, 0, 0)); //text CGContextSetTextDrawingMode(ctx, kCGTextFill); CGContextSetTextMatrix(ctx, CGAffineTransformMake(1.0, 0.0, 0.0, 1.0, 0.0, 0.0)); CGContextSetFillColorWithColor(ctx, [[UIColor blackColor] CGColor]); UIGraphicsPushContext(ctx); CGContextSaveGState(ctx); CGContextTranslateCTM(ctx, 0.1f, leavesView.bounds.size.height); CGContextScaleCTM(ctx, 1.0f, -1.0f); CGRect textRect = CGRectMake(5, 5, leavesView.bounds.size.width-10, leavesView.bounds.size.height-10); if (pages.count > 0 && pages.count-1 >= index) { [[pages objectAtIndex:index] drawInRect:textRect withFont:font lineBreakMode:UILineBreakModeWordWrap alignment:UITextAlignmentLeft]; } CGContextRestoreGState(ctx); UIGraphicsPopContext(); }
It works great on iPhone 2G, 3G, 3GS, but I have problems on newer models.
In the text of the retina, an attempt is made not to double the resolution, as in the standard.
Do you have any ideas?
source share