若要旋轉圖片,請在瀏覽器中開啟 Image Rotator,選擇一個不超過 25 MB 的 JPG、PNG 或 WebP 檔案,然後點選「Rotate left 90°」、「Rotate right 90°」或「Rotate 180°」;旋轉後的完整解析度 PNG 會立即下載,而原始檔案在整個過程中都保留在你的裝置上。此處所說的旋轉,是指在二維影像平面上進行的剛性幾何變換,其中每個像素都會被重新定位到新的 (x, y) 座標,同時重新計算畫布以容納旋轉後的內容。對於 90° 或 270° 旋轉,輸出寬度會變成輸入高度,輸出高度會變成輸入寬度;對於 180° 旋轉,兩個維度都保持不變,每個像素會被對應到與原始位置對角的位置。W3C SVG 規範將其描述為繞原點進行的離散旋轉變換,再接著一個將結果重新置中新畫布的平移,這正是瀏覽器在旋轉點陣影像元素時所執行的運算。輸出永遠是 PNG(而非你上傳的原始格式)這點很重要:PNG 是無失真的,因此旋轉後的像素會以完整保真度儲存,不會像 JPEG 那樣重新編碼產生色度抽樣失真,也不會像 WebP 那樣產生壓縮瑕疵。
旋轉是人們最常需要對相片或掃描檔案進行的編輯之一。直拿手機相機拍攝時,會在檔案的中繼資料中寫入一個方向標記,讓檢視器知道哪邊是上方,但這個標記在影像以電子郵件寄送、上傳到特定服務,或被較舊的軟體儲存時,可能會被移除。一旦標記消失,任何不會讀取方向中繼資料的程式都會將相片以橫置方式顯示。旋轉實際的像素資料(而非僅僅變更標記)才能將正確方向永久寫入檔案。這也是當影像從印刷頁面或文件掃描、而文件原本就歪斜地放在掃描玻璃上時,或是當螢幕截圖是在裝置處於錯誤實體方向下擷取時的正確處理方式。在上述所有情況中,修復方法都相同:旋轉點陣圖,讓你在螢幕上看到的內容與場景實際的取景方式一致。

何時需要旋轉像素而非僅變更標記
大多數現代相機和手機會嵌入一個值從 1 到 8 的 EXIF Orientation 標記(由 EXIF 規範定義),告訴檢視器影像的哪一側是真實的頂部。許多網頁瀏覽器和影像檢視器會完全忽略此標記,而以儲存時的原始點陣圖顯示。發生這種情況時,相片看起來像是被旋轉過,但實際上檔案的像素資料是正確的——只有中繼資料誤導了顯示結果。純粹改寫中繼資料有時可以修正顯示,但這種改寫很脆弱:在檔案被社群媒體平台重新儲存、被聊天應用程式重新編碼,或被不保留該標記的工具開啟時,都可能遺失。旋轉實際像素才是持久的解決方案,因為無論開啟它的程式是否讀取方向中繼資料,顯示出來的影像在任何程式中都會是正確的。
EXIF 方向處理對 JPEG 檔案特別重要,因為 JPEG 標準很早就採用了 EXIF 標記。PNG 檔案預設不使用 EXIF,而是依賴輔助性的文字區塊來儲存中繼資料;WebP 則使用行為類似的 EXIF 區塊。如果你想在決定是否需要旋轉之前先檢查方向標記和其他相機中繼資料,EXIF Viewer 讓你無需上傳檔案就能查看擷取的值。一旦你決定像素旋轉是正確的修復方式,Image Rotator 就是執行這個操作的工具。
Image Rotator 可接受與產生的檔案
Image Rotator 接受單一影像檔案作為輸入——JPG、PNG 或 WebP——最大 25 MB。檔案一經選取,工具就會讀取其解碼後的像素網格並顯示原始寬度和高度,讓你確認螢幕上看到的內容與工具即將旋轉的內容一致。三個旋轉按鈕是固定角度預設,而非自由角度滑桿:逆時針 90°、順時針 90° 和 180°。此工具沒有「以 1° 微調」模式、沒有透視校正,也沒有傾斜修正——這些是不同的操作,刻意不在本工具的範圍內。
輸出永遠是 PNG 檔案,由你的瀏覽器直接下載。選擇 PNG 是因為它無失真,這表示旋轉不會在邊緣像素移動到新的子像素對齊位置時產生壓縮瑕疵。JPEG 旋轉是常見的可見柔化來源,因為編碼器必須將旋轉後的影像重新劃分為 8×8 區塊並再次量化 DCT 係數。權衡之處在於檔案大小:同一張相片的旋轉後 PNG,可能是 JPEG 格式的數倍大。如果檔案大小比像素級完美保真度對你的後續用途更重要,你可以將旋轉後的 PNG 交給 PNG to JPG converter,或事後再用 Image Compressor 處理。
在瀏覽器中旋轉 JPG、PNG 或 WebP
- 在當前的瀏覽器分頁中開啟 Image Rotator 並點選檔案選擇器。從你的裝置中選擇一個 JPG、PNG 或 WebP 檔案;接受最大 25 MB 的檔案。
- 查看檔案載入後顯示的寬度 × 高度值。這是即將被旋轉的解碼點陣圖的原始像素尺寸,可確認已讀取正確的檔案。
- 選擇符合你需求的旋轉方向:「Rotate left 90°」可將影像逆時針旋轉,「Rotate right 90°」可將其順時針旋轉,「Rotate 180°」可將其上下翻轉。預覽會立即更新。
- 在預覽區檢查新的方向並確認更新後的尺寸——對於 90° 旋轉,如果原始影像不是正方形,寬度和高度將會互換。
- 點選下載按鈕將旋轉後的影像儲存為完整解析度的 PNG。檔案會以已寫入旋轉像素的形式,存放到你平常的下載資料夾中。
- 如果你需要的是鏡像翻轉而非旋轉,請使用 Image Flipper 進行水平或垂直翻轉,因為翻轉是不同的幾何變換。
旋轉 vs. 翻轉 vs. EXIF 方向
這三個術語常被混淆,因為它們都會改變影像的朝向,但它們在數學上是不同的操作。旋轉會將每個像素沿著繞影像中心的圓弧移動。在 W×H 畫布上位於 (x, y) 的像素,經過 90° 旋轉後會被放置在新 H×W 畫布上的 (H − 1 − y, x) 位置。翻轉是跨越一條軸的鏡像:水平翻轉將 (x, y) 對應到 (W − 1 − x, y),垂直翻轉將 (x, y) 對應到 (x, H − 1 − y)。EXIF 方向兩者都不是——它是與像素一同儲存的標記,告訴檢視器以八種預定義方向中的哪一種來顯示。
| 操作 | 變更內容 | 輸出格式 | 常見原因 |
|---|---|---|---|
| 旋轉 90° / 180° / 270° | 像素被移至新的 (x, y) 位置;尺寸可能互換 | 永遠是 PNG | 修正歪斜的掃描、螢幕截圖,或被移除的方向標記 |
| 水平 / 垂直翻轉 | 像素跨越一條軸進行鏡像;尺寸保持不變 | 永遠是 PNG | 修正鏡像自拍、製作反射圖像 |
| EXIF Orientation 標記 | 像素不移動;改寫一個中繼資料值 | 原始格式(通常為 JPG) | 在不重新編碼的情況下告訴檢視器哪邊是上方 |
180° 旋轉所產生的視覺結果,與結合水平翻轉和垂直翻轉相同。90° 旋轉不等同於任何單一翻轉——它需要一次翻轉加上像素網格的轉置。了解其中的差異在處理影像中的文字時很重要:旋轉會保留可讀性,而水平翻轉會將每個字母變成其鏡像。
90° 旋轉後的輸出尺寸
輸出的寬度和高度取決於原始尺寸和旋轉角度。下表以質化方式顯示其關係——你特定影像的精確像素數,會在你確認下載前由工具本身顯示。
| 原始長寬比 | 旋轉 90° 後(任一方向) | 旋轉 180° 後 |
|---|---|---|
| 橫向 (W > H) | 變為直向;新 W 等於舊 H,新 H 等於舊 W | 與原始尺寸相同 |
| 直向 (H > W) | 變為橫向;新 W 等於舊 H,新 H 等於舊 W | 與原始尺寸相同 |
| 正方形 (W = H) | 尺寸相同,僅內容旋轉 | 與原始尺寸相同 |
總像素數永遠不會改變——4000×3000 的影像和 3000×4000 的影像都包含 12,000,000 個像素。改變的是哪一條軸持有較長的一邊。這就是為什麼以直向模式拍攝的手機相片經過 90° 旋轉後會變成橫向結果,也說明了為何朝同一方向旋轉兩次會回到原始方向。如果你還需要裁剪掉旋轉後出現的空白邊框,Image Cropper 會以獨立的控制項將其作為單獨步驟處理。
隱私與檔案處理
旋轉完全在瀏覽器分頁內進行。Image Rotator 使用瀏覽器內建的影像解碼器讀取 JPG、PNG 或 WebP 檔案,對解碼後的像素緩衝區執行幾何變換,將結果重新編碼為 PNG,再將編碼後的位元組交回瀏覽器的下載 API。檔案從未傳輸到伺服器,這就是為什麼沒有上傳進度條,也不必等待遠端服務完成。這也表示該工具在頁面載入後可離線運作,並且對於包含敏感內容的檔案也能同樣良好運作,因為資料不會離開裝置。
如果你的後續工作流程需要不同格式的旋轉後影像,旋轉只是第一步。為了獲得較小的檔案大小,你可以使用 PNG to JPG converter 將旋轉後的 PNG 轉為 JPG;為了獲得較小的像素尺寸,你可以將其交給 Image Resizer。相關的實用指南包括 how to flip an image horizontally or vertically,詳細說明鏡像翻轉操作;以及 how to resize an image to exact pixel dimensions in your browser,涵蓋如果你還需要更改像素數時的後續步驟。
疑難排解常見的旋轉問題
如果下載的 PNG 看起來與原始檔案完全相同,最常見的原因是旋轉作業套用於一個顯示方向已經正確、但其 EXIF 方向標籤誤導了檢視器的檔案。在這種情況下,像素內容與標籤相符,一旦旋轉反而會讓影像變成側向的。如果預覽顯示影像已旋轉,但儲存的檔案看起來仍然是側向的,表示開啟 PNG 的檢視器本身在你的旋轉之外又套用了一次旋轉——此時只要關閉檔案,並改用其他程式重新開啟,通常就能確認像素是否真的被變更過。如果檔案因為太大而被拒絕,25 MB 的上限是套用於輸入檔;你可以先用影像壓縮器將其縮小,再回來旋轉較小的版本。如果你需要依序旋轉許多檔案,工具一次只處理一個檔案,而且每次下載都是獨立的——沒有批次佇列需要管理。
若想深入了解,請參閱將影像轉換為 ASCII:本地端 PNG、JPEG、GIF 與 WebP。
若想深入了解,請參閱如何在瀏覽器中將影像轉換為 Base64。