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

วิธีการตั้งค่าแฟล็กการผสมอัลฟาเพื่อใช้เอฟเฟกต์เลเยอร์โดยใช้ฟังก์ชัน imaglayereffect () ใน PHP


imagelayereffect() เป็นฟังก์ชัน inbuilt ใน PHP ที่ใช้เพื่อตั้งค่าสถานะการผสมอัลฟาเพื่อใช้เอฟเฟกต์เลเยอร์ คืนค่า True เมื่อสำเร็จหรือ False เมื่อล้มเหลว

ไวยากรณ์

bool imagelayereffect($image, $effect)

พารามิเตอร์

imagelayereffect() ใช้พารามิเตอร์ที่แตกต่างกันสองแบบ:$image และ $ผล .

  • $image - พารามิเตอร์นี้ถูกส่งกลับโดยฟังก์ชันการสร้างภาพ imagecreatetruecolor() ใช้สำหรับสร้างขนาดของรูปภาพ

  • $ผล − พารามิเตอร์นี้ใช้เพื่อตั้งค่าของการผสมแฟล็ก โดยใช้ค่าคงที่เอฟเฟกต์ที่แตกต่างกัน ซึ่งระบุไว้ด้านล่าง −

    • IMG_EFFECT_REPLACE − ใช้เพื่อตั้งค่าการแทนที่พิกเซล คล้ายกับการส่งผ่านฟังก์ชัน imagealphablending() จริง

    • IMG_EFFETC_ALPHABLEND − ใช้เพื่อตั้งค่าการผสมพิกเซลแบบปกติ ซึ่งเทียบเท่ากับการส่งผ่านข้อมูลเท็จไปยังฟังก์ชัน imagealphablending()

    • IMG_EFFECT_NORMAL − เหมือนกับ IMG_EFFETC_ALPHABLEND

    • IMG_EFFETC_OVERLAY − โดยใช้ IMG_EFFECT_OVERLAY พิกเซลพื้นหลังสีขาวจะยังคงเป็นสีขาว และพิกเซลพื้นหลังสีดำจะยังคงเป็นสีดำ แต่พิกเซลพื้นหลังสีเทาจะใช้สีของพิกเซลเบื้องหน้า

    • IMG_EFFETC_MULTIPLY − สิ่งนี้จะกำหนดเอฟเฟกต์การคูณ

คืนค่า

imagelayereffect() คืนค่า True เมื่อสำเร็จและ False เมื่อล้มเหลว

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

<?php
   // Setup an image using imagecreatetruecolor() function
   $img = imagecreatetruecolor(700, 300);
   
   // Set a background color
   imagefilledrectangle($img, 0, 0, 150, 150, imagecolorallocate($img, 122, 122, 122));

   // Apply the overlay alpha blending flag
   imagelayereffect($img, IMG_EFFECT_OVERLAY);

   // Draw two grey ellipses
   imagefilledellipse($img, 50, 50, 40, 40, imagecolorallocate($img, 100, 255, 100));
   imagefilledellipse($img, 50, 50, 50, 80, imagecolorallocate($img, 100, 100, 255));
   imagefilledellipse($img, 50, 50, 80, 50, imagecolorallocate($img, 255, 0, 0));

   // Output image
   header('Content-type: image/png');
   imagepng($img);
   imagedestroy($img);
?>

ผลลัพธ์

วิธีการตั้งค่าแฟล็กการผสมอัลฟาเพื่อใช้เอฟเฟกต์เลเยอร์โดยใช้ฟังก์ชัน imaglayereffect () ใน PHP

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

<?php
   // Setup an image using imagecreatetruecolor() function.
   $img = imagecreatetruecolor(700, 200);

   // Set a background color
   imagefilledrectangle($img, 0, 0, 200, 200, imagecolorallocate($img, 122, 122, 122));

   // Apply the overlay alpha blending flag
   imagelayereffect($img, IMG_EFFECT_REPLACE);

   // Draw two grey ellipses
   imagefilledellipse($img,100,100,160,160, imagecolorallocate($img,0,0,0));
   imagefilledellipse($img,100,100,140,140, imagecolorallocate($img,0,0,255));
   imagefilledellipse($img,100,100,100,100, imagecolorallocate($img,255,0,0));

   // Output image
   header('Content-type: image/png');
   imagepng($img);
   imagedestroy($img);
?>

ผลลัพธ์

วิธีการตั้งค่าแฟล็กการผสมอัลฟาเพื่อใช้เอฟเฟกต์เลเยอร์โดยใช้ฟังก์ชัน imaglayereffect () ใน PHP