Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

วิธีสร้างภาพใหม่จากไฟล์ JPEG ด้วยฟังก์ชัน imagecreatefromjpeg() ใน PHP

imagecreatefromjpeg() เป็นฟังก์ชันในตัวของ PHP ที่ใช้เพื่อสร้างภาพใหม่จากไฟล์ JPEG คืนค่าตัวระบุภาพที่แสดงถึงภาพที่ได้จากชื่อไฟล์ที่กำหนด

รูปแบบการใช้งาน (Syntax)

resource imagecreatefromjpeg(string $filename)

พารามิเตอร์

imagecreatefromjpeg() ใช้พารามิเตอร์เพียงตัวเดียวคือ $filename ซึ่งเก็บชื่อของภาพหรือเส้นทางไปยังภาพ JPEG

ค่าที่คืนกลับ (Return Values)

imagecreatefromjpeg() คืนค่าตัวระบุทรัพยากรภาพเมื่อสำเร็จ และให้ข้อผิดพลาดเมื่อ false

ตัวอย่างที่ 1

<?php 
// โหลดภาพจากดิสก์/ไฟล์ท้องถิ่น
$img = imagecreatefromjpeg('C:\xampp\htdocs\test\1.jpeg');
// จะแสดงภาพที่โหลดในเบราว์เซอร์
header('Content-type: image/jpg');
imagejpeg($img);
imagedestroy($img); 
?>

ผลลัพธ์

วิธีสร้างภาพใหม่จากไฟล์ JPEG ด้วยฟังก์ชัน imagecreatefromjpeg() ใน PHP

ตัวอย่างที่ 2

<?php 
// โหลดภาพ JPEG จากดิสก์/ไฟล์ท้องถิ่น
$img = imagecreatefromjpeg('C:\xampp\htdocs\test\1(a).jpeg');
// พลิกภาพ
imageflip($img, 1);
// บันทึกภาพ GIF ในเส้นทางที่กำหนด
imagejpeg($img, 'C:\xampp\htdocs\test\1(b).png');
imagedestroy($img); 
?>

ภาพอินพุต

วิธีสร้างภาพใหม่จากไฟล์ JPEG ด้วยฟังก์ชัน imagecreatefromjpeg() ใน PHP

ภาพเอาต์พุต

วิธีสร้างภาพใหม่จากไฟล์ JPEG ด้วยฟังก์ชัน imagecreatefromjpeg() ใน PHP

คำอธิบาย - ในตัวอย่างที่ 2 เราโหลดภาพ JPEG จากเส้นทางท้องถิ่นโดยใช้ฟังก์ชัน imagecreatefromjpeg() จากนั้นเราใช้ฟังก์ชัน imageflip() เพื่อพลิกภาพ

ตัวอย่างที่ 3 - การจัดการข้อผิดพลาดระหว่างโหลดภาพ JPEG

<?php 
function LoadJpeg($imgname) {
    /* พยายามเปิด */
    $im = @imagecreatefromjpeg($imgname);
    /* ดูว่าล้มเหลวหรือไม่ */
    if(!$im) {
        /* สร้างภาพสีดำ */
        $im = imagecreatetruecolor(700, 300);
        $bgc = imagecolorallocate($im, 0, 0, 255);
        $tc = imagecolorallocate($im, 255, 255, 255);
        imagefilledrectangle($im, 0, 0, 700, 300, $bgc);
        /* แสดงข้อความข้อผิดพลาด */
        imagestring($im, 20, 80, 80, 'Error loading ' . $imgname, $tc);
    }
    return $im;
}
header('Content-Type: image/jpeg');
$img = LoadJpeg('bogus.image');
imagejpeg($img);
imagedestroy($img); 
?>

ผลลัพธ์

วิธีสร้างภาพใหม่จากไฟล์ JPEG ด้วยฟังก์ชัน imagecreatefromjpeg() ใน PHP