2013-06-20 72 views
0

我正在構建一個與iPad相機配合使用的HTML應用程序,並將拍攝的圖像上傳到我的服務器。 上傳時,圖像通過使用imagecopy()獲取水印。Iphone imagecopy旋轉我的圖像

一切正常,當我在我的電腦上測試它,但由於某種原因,如果我在肖像中拍攝ipad/ipod/iphone上的圖片,水印圖像會旋轉到橫向模式。

澄清:原始圖片上傳正確,水印圖片旋轉。當我在我的電腦上使用肖像圖像嘗試時,不會發生這種情況。

這是一些代碼,如果有幫助的話(我使用Codeigniter框架)。如果您需要更多代碼,只需詢問,但我認爲上傳本身沒有任何問題。

//The code for the imagecopy do add the watermark 
$overlay = imagecreatefrompng(base_url() . 'assets/images/imgoverlay.png'); 
$img = imagecreatefromjpeg(base_url() . 'uploads/' . $config['file_name']); 
$imageSize = getimagesize(base_url() . 'uploads/' . $config['file_name']); 
$sx = imagesx($overlay); 
$sy = imagesy($overlay); 
$newWatermarkWidth = $imageSize[0]; 
$newWatermarkHeight = $sy * $newWatermarkWidth/$sx; 

$test = imagecopy(
      $img, 
      $overlay, 
      $imageSize[0]/2 - $newWatermarkWidth/2, 
      $imageSize[1] - $newWatermarkHeight, 
      0, 
      0, 
      imagesx($img),imagesy($img) 
     ); 

非常感謝!

+0

它將與紐帶,以未修改的iPad的圖像幫助。也可能是您的水印版本。 – haraldK

回答

0

我猜這是關係到這個問題:Generated images showing flipped

iPad的攝像頭可能只是存儲圖像以同樣的方式,無論設備方向,而是寫一個Exif標籤,以確保它的正確旋轉顯示時。

+1

另一種方法是在應用水印之前首先「旋轉」圖像http://stackoverflow.com/questions/13509650/ipad-photos-not-rotated-when-uploaded-to-a-website-directly-from- ipad-but-ok-whe – Danack

+0

我確實要嘗試這個解決方案,我會告訴你它是否工作 – Bananam00n

1

你確定圖像沒有旋轉?大多數觀看者會自動爲您旋轉圖像,因此您將永遠無法在計算機上看到此圖像。

試試這個:

$exif = exif_read_data('test.jpg'); 
if(isset($exif['Orientation'])) { 
    if($exif['Orientation'] === 1) print 'rotated clockwise by 0 deg (nothing)'; 
    if($exif['Orientation'] === 8) print 'rotated clockwise by 90 deg'; 
    if($exif['Orientation'] === 3) print 'rotated clockwise by 180 deg'; 
    if($exif['Orientation'] === 6) print 'rotated clockwise by 270 deg'; 

    if($exif['Orientation'] === 2) print 'vertical flip, rotated clockwise by 0 deg'; 
    if($exif['Orientation'] === 7) print 'vertical flip, rotated clockwise by 90 deg'; 
    if($exif['Orientation'] === 4) print 'vertical flip, rotated clockwise by 180 deg'; 
    if($exif['Orientation'] === 5) print 'vertical flip, rotated clockwise by 270 deg'; 
} 
+0

我很確定,因爲原始圖像和生成的圖像都存儲在我的服務器上。如果我打開他們原始圖像顯示肖像,而生成的一個旋轉到風景 – Bananam00n

+0

忘了說,我在Photoshop中打開我的圖像。我不認爲他們自動旋轉它 – Bananam00n

+1

實際上Photoshop支持方向標誌並旋轉圖像。 – Til