У меня есть некоторое изображение, генерирующее код, который использует UIGraphicsBeginImageContext (), UIGraphicsGetImageFromCurrentImageContext () и UIImagePNGRepresentation (), чтобы сделать некоторый рисунок, затем сохраните его на диск как PNG для более позднего использования.
UIImagePNGRepresentation () принимают во внимание масштаб? Как в, если у меня есть изображение, которое является 20 широкими точками, результирующий PNG составит 20 пикселей или 40 пикселей?
Кроме того, когда я отображаю эти изображения, я использую [UIImage imageWithContentsOfFile:] и [отображают drawInRect:]. Существует ли способ подсказать тем методам для использования более высокого рисунка разрешения?
Согласно Руководству по программированию приложений iPhone , вы должны использовать UIGraphicsBeginImageContextWithOptions
со шкалой 2,0, чтобы создать правильно масштабируемый контекст для iPhone 4.
] Что касается второй части вашего вопроса, я считаю, что вы должны сохранить полученный png с суффиксом @ 2x в базовом имени (например, (скрытый) Затем, когда вы загрузите его обратно с помощью UIImage, его размер и масштаб будут правильными В противном случае ваше изображение будет загружено с масштабом 1.0 и будет в два раза больше (в пунктах), чем вы ожидали. В этом разделе того же документа содержится несколько деталей, касающихся изображений с высоким разрешением. для устройств с дисплеями с высоким разрешением.