Поверните JPG на iPhone - PullRequest
       3

Поверните JPG на iPhone

1 голос
/ 30 сентября 2011

У меня есть приложение, которое берет фотографии через камеру или выбирает их из библиотеки и сохраняет как jpg в папке документов. Но прежде чем сохранить его, я бы хотел повернуть его на 90 градусов.

Надеюсь, что кто-нибудь может помочь мне здесь.

Спасибо

Ответы [ 3 ]

1 голос
/ 30 сентября 2011

Для iOS 4 и более поздних версий:
UIImage imageWithCGImage: масштаб: ориентация:

Для iOS 3 и предыдущих версий:
Как повернуть UIImage на 90 градусов?

static inline double radians (double degrees) {return degrees * M_PI/180;}
UIImage* rotate(UIImage* src, UIImageOrientation orientation)
{
    UIGraphicsBeginImageContext(src.size);

    CGContextRef context = UIGraphicsGetCurrentContext();

    if (orientation == UIImageOrientationRight) {
        CGContextRotateCTM (context, radians(90));
    } else if (orientation == UIImageOrientationLeft) {
        CGContextRotateCTM (context, radians(-90));
    } else if (orientation == UIImageOrientationDown) {
        // NOTHING
    } else if (orientation == UIImageOrientationUp) {
        CGContextRotateCTM (context, radians(90));
    }

    [src drawAtPoint:CGPointMake(0, 0)];

    return UIGraphicsGetImageFromCurrentImageContext();
}
0 голосов
/ 30 сентября 2011
img.transform = CGAffineTransformMakeRotation(3.14159265/2);
0 голосов
/ 30 сентября 2011

Вы можете сделать это как

static inline double radians (double degrees) {return degrees * M_PI/180;}
UIImage* rotate(UIImage* src, UIImageOrientation orientation)
{
    UIGraphicsBeginImageContext(src.size);

    CGContextRef context = UIGraphicsGetCurrentContext();

    if (orientation == UIImageOrientationRight) {
        CGContextRotateCTM (context, radians(90));
    } else if (orientation == UIImageOrientationLeft) {
        CGContextRotateCTM (context, radians(-90));
    } else if (orientation == UIImageOrientationDown) {
        // NOTHING
    } else if (orientation == UIImageOrientationUp) {
        CGContextRotateCTM (context, radians(90));
    }

    [src drawAtPoint:CGPointMake(0, 0)];

    return UIGraphicsGetImageFromCurrentImageContext();
}

Взято из здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...