ข้ามไปยังเนื้อหาหลัก

หมุนและพลิกรูปภาพ ฟรี

หมุนรูปภาพ 90°, 180°, 270° หรือมุมกำหนดเอง พลิกแนวนอนหรือแนวตั้ง ส่งออกเป็น JPEG, PNG หรือ WebP

ใช้งานได้แบบออฟไลน์เมื่อโหลดแล้ว

วางไฟล์ที่นี่ หรือคลิกเพื่อเลือก

JPG, PNG, WebP, HEIC, HEIF · ประมวลผลบนอุปกรณ์ของคุณ

หรือกด Ctrl+V เพื่อวางจากคลิปบอร์ด

เรียกดูไฟล์

เคล็ดลับ: วางภาพหน้าจอได้ด้วย Ctrl+V

ไฟล์ของคุณไม่เคยออกจากอุปกรณ์ การประมวลผลทั้งหมดเกิดขึ้นในเบราว์เซอร์ของคุณ

การใช้งานทั่วไป

  • แก้ไขรูปภาพโทรศัพท์ด้านข้างหมุนรูปภาพที่ออกมาด้านข้างจากโทรศัพท์หรือกล้องของคุณ - โดยไม่ต้องอัพโหลดไปใด ๆ
  • ปรับปรุงเอกสารที่สแกนแก้ไขการหมุนเล็กน้อยในการสแกนเอกสารโดยใช้แถบเลื่อนมุมปรับแต่ง
  • ยกเลิกการสะท้อนของภาพเซลฟี่กระจกภาพเซลฟี่ของกล้องหน้าปกติจะสะท้อน - พลิกแนวนอนเพื่อแก้ไข
  • หมุนเพื่อเอฟเฟกต์สร้างสรรค์ใช้มุมที่มีอำเภอใจเพื่อเอียงรูปภาพสำหรับเอฟเฟกต์สไตล์ปกนิตยสาร
  • หมุนสำหรับเค้าโครงการพิมพ์ปรับทิศทางของรูปภาพก่อนวางในเค้าโครงการพิมพ์ (Word, InDesign, Canva)

วิธีการทำงาน

การหมุน การพลิก และการแก้มุมที่นี่ทำงานภายในเบราว์เซอร์ทั้งหมดด้วย HTML Canvas API — ไม่มีไฟล์ถูกส่งไปยังเซิร์ฟเวอร์ เครื่องมือวาดภาพลงบน canvas นอกจอด้วยการแปลงมุมและมาตราส่วนที่เลือก แล้วเข้ารหัสผลลัพธ์เป็น JPEG, PNG หรือ WebP ด้วยโคเดกของเบราว์เซอร์เอง

  1. 1
    ถอดรหัสภาพในเครื่อง
    ไฟล์ JPEG, PNG หรือ WebP ของคุณถูกโหลดเข้า HTMLImageElement ผ่าน object URL ในเครื่อง — การอ้างอิงหน่วยความจำของเบราว์เซอร์ที่ไม่เคยออกจากอุปกรณ์ ขนาดพิกเซลจริงอ่านจากบิตแมปที่ถอดรหัสแล้วโดยตรง
  2. 2
    ใช้การแปลง Canvas
    canvas นอกจอถูกกำหนดขนาดให้พอดีกับกรอบที่หมุนแล้ว (width·cos + height·sin สำหรับแต่ละแกน) จากนั้น context ของ Canvas 2D ถูกเลื่อนไปที่จุดกึ่งกลาง หมุนตามมุมที่เลือกเป็นเรเดียน และปรับมาตราส่วน -1 บนแกนแนวนอนหรือแนวตั้งสำหรับการพลิก — ทั้งหมดเป็นการทำงาน ctx.rotate / ctx.scale มาตรฐานโดยไม่มีไลบรารีภายนอก
  3. 3
    ครอปอัตโนมัติตัดมุม (ไม่บังคับ)
    สำหรับการหมุนที่ไม่ใช่มุมฉาก ฟังก์ชันเรขาคณิตที่เขียนขึ้นเอง — largestInnerRect — คำนวณสี่เหลี่ยมที่ขนานกับแกนขนาดใหญ่ที่สุดตามอัตราส่วนภาพเดิมที่พอดีภายในกรอบที่หมุน มุมว่างรูปสามเหลี่ยมจึงถูกตัดออกโดยไม่บิดเบือนภาพ
  4. 4
    โคเดกของเบราว์เซอร์เข้ารหัสผลลัพธ์
    canvas.toBlob() ส่งข้อมูลพิกเซลให้ตัวเข้ารหัสภาพในตัวของเบราว์เซอร์ สร้าง Blob แบบ JPEG (เลือกคุณภาพและสีเติมพื้นหลังสำหรับมุมโปร่งใสได้) PNG หรือ WebP ที่คุณดาวน์โหลดได้โดยตรง

ภาพของคุณถูกประมวลผลภายในแท็บเบราว์เซอร์ทั้งหมด — ไม่เคยถูกอัปโหลดไปยังเซิร์ฟเวอร์ใด

เครื่องมือที่เกี่ยวข้อง

คำถามที่พบบ่อย