GORAGOD.com

การสร้างข้อความเป็นรูปภาพแบบโปร่งใสด้วย PHP

โค้ดตัวอย่างการสร้างรูปภาพจากข้อความ ด้วย PHP รองรับภาษาไทย สามารถกำหนดขนาดของตัวอักษรได้ และเป็นรูปภาพแบบโปร่งใส (PNG) สามารถปรับขนาดของรูปภาพให้พอดีกับฟ้อนต์ที่เลือกโดยอัตโนมัติ
// ขนาดฟ้อนต์
$fontsize = 30;
// ข้อความ
$text = "ทดสอบการใช้ภาษาไทยให้ถูกต้องสมบูรณ์ Hello World";
// path ชี้ไปยังฟ้อนต์ที่ต้องการ
$font = "/path/to/fonts/thsarabunnew-webfont.ttf";
// คำนวณขนาดของ font
$bbox = imageftbbox($fontsize, 0, $font, $text);
// ความกว้าง
$imageWidth = $bbox[2] - $bbox[0];
// ความสูง
$imageHeight = $bbox[3] - $bbox[5];
// ตำแหน่งแกน y สำหรับวาดตัวอักษร
$y = abs($bbox[5]);
// สร้างรูปภาพ
$img = imagecreatetruecolor($imageWidth, $imageHeight);
// สีพื้นหลังโปร่งใส (PNG)
imagealphablending($img, false);
imagesavealpha($img, true);
$transparent = imagecolorallocatealpha($img, 255, 255, 255, 127);
imagefill($img, 0, 0, $transparent);
// สีตีวอักษร RGB
$color = imagecolorallocate($img, 255, 0, 0);
// วาดข้อความลงบนรูปภาพ
imagettftext($img, $fontsize, 0, 0, $y, $color, $font, $text);
// บันทึกเป็นรูป
imagepng($img, 'temp.png');