Ориентация изображения JPEG, загруженного с помощью ASIHTTPRequest iPhone - PullRequest
1 голос
/ 02 апреля 2011

Я написал приложение, которое делает фотографию и загружает ее в удаленную базу данных, используя файл PHP в этой базе данных.Проблема в том, что когда фотография читается с веб-сайта или просто загружается по ссылке, изображение отображается в альбомной ориентации.Есть часть приложения, которая отображает это изображение, ориентация при загрузке в приложении правильная, поэтому я предполагаю, что он получает данные exif для этого?Мой вопрос в основном состоит в том, как мне повернуть объект UIImage перед его загрузкой или как изменить данные PHP, чтобы они помещались в базу данных в правильной ориентации?1004 *

Пример кода не будет работать для PHP:

$uploaddir = 'images/';
$file = basename($_FILES['photo']['name']);
$uploadfile = $uploaddir . $file;

if (move_uploaded_file($_FILES['photo']['tmp_name'], $uploadfile)) {
        echo "http://www.mysite.com/{$file}";
}
else {
$isfile = $_FILES['photo'];

if(file_exists($file)) {
echo 'file exists';
} else {
echo 'File not found!';
}

echo "fail";
echo "Name is" . $file; 

Ответы [ 2 ]

2 голосов
/ 05 апреля 2011

Хорошо, чтобы ответить на мой вопрос, это то, что решило его: UIImageFix Я немного неохотно вкладывал такой огромный кусок кода, чтобы решить простую проблему, но решить ее не так просто, как я думал вначале. Я волновался, если повернутый UIImage вызовет проблемы с чтением файла на телефоне, но это не было проблемой, поскольку данные Exif сохраняются в такте, и телефон просматривает их, прежде чем представить их в виде изображения.

Это все, что мне пришлось написать в конце как дополнение к функции scaleAndRotate:

UIImage *imageToUpload = scaleAndRotateImage(self.theImageView.image);
1 голос
/ 03 апреля 2011

Как повернуть UIImage на 90 градусов? может помочь вам повернуть изображение в любом направлении.

Если вы хотите обрабатывать данные exif на iPhone, это может помочь: http://www.gotow.net/creative/wordpress/?p=64, в противном случае: http://www.php.net/manual/en/function.exif-read-data.php#76964 соответствует тому, что я сделал в Python.

...