Ho bisogno di disegnare immagini in un CALayer perché ho bisogno di eseguire vari effetti, animazioni e filtri su di esso. Quando faccio un semplice disegno nel CGContext, qualunque cosa faccia, viene sempre disegnato in pixel ... Qual è il modo giusto per disegnare su un contesto in retina?CGContextDrawImage in Retina disegna l'immagine pixelata?
Questo è quello che sto facendo ora:
CGImageRef plateImage = [[UIImage imageNamed:@"someImage"] CGImage];
CGFloat width = CGImageGetWidth(plateImage), height = CGImageGetHeight(plateImage);
CGFloat scale = [[UIScreen mainScreen] scale];
NSLog(@"Scale: %f\nWidth: %f\nHeight: %f", scale, width, height);
CGContextTranslateCTM(_context, 0, height/scale);
CGContextScaleCTM(_context, 1.0, -1.0);
CGContextDrawImage(_context, CGRectMake(0, 0, width/scale, height/scale), plateImage);
Aaaaaa! Stavo cercando dappertutto nei documenti CG - non pensavo per un minuto che fosse un problema di livello! Grazie! – shein
Incredibile. Grazie. – darkheartfelt