2018-08-17 15:37:30 1220瀏覽
準(zhǔn)備學(xué)習(xí)PHP開(kāi)發(fā)或者正在學(xué)習(xí)PHP開(kāi)發(fā)技術(shù)的小伙伴對(duì)用PHP如何實(shí)現(xiàn)對(duì)圖片的反色處理這項(xiàng)功能是否了解呢?PHP開(kāi)發(fā)技術(shù)在如今的行業(yè)中很受歡迎,不少的公司企業(yè)都會(huì)高薪聘請(qǐng)專業(yè)的PHP開(kāi)發(fā)工程師,因此參加PHP培訓(xùn)學(xué)習(xí)PHP開(kāi)發(fā)技術(shù)的人在不斷地增加。本篇文章小編就和大家分享一下PHP如何實(shí)現(xiàn)對(duì)圖片的反色處理功能,文中涉及PHP針對(duì)圖片的讀取、數(shù)值運(yùn)算等相關(guān)操作技巧,需要的朋友可以參考下哦 。
今天有個(gè)需求用php對(duì)圖片進(jìn)行反色,和轉(zhuǎn)灰,之前不知道可不可行,后來(lái)看到了imagefilter()函數(shù),用來(lái)轉(zhuǎn)灰綽綽有余,好強(qiáng)大。
imagefilter($im, IMG_FILTER_GRAYSCALE)
當(dāng)然也有人在css里面設(shè)置變灰
php轉(zhuǎn)色代碼:
測(cè)試代碼:
<style type="text/css">
img {
-webkit-filter: grayscale(1);/* Webkit */
filter:gray;/* IE6-9 */
filter: grayscale(1);/* W3C */
}
</style>
<?php
/**
* 主要用于圖片的處理函數(shù)
*/
//圖片的反色功能
function color($url) {
//獲取圖片的信息
list($width, $height, $type, $attr)= getimagesize($url);
$imagetype = strtolower(image_type_to_extension($type,false));
$fun = 'imagecreatefrom'.($imagetype == 'jpg'?'jpeg':$imagetype);
$img = $fun($url);
for ($y=0; $y < $height; $y++) {
for ($x=0; $x <$width; $x++) {
//獲取顏色的所以值
$index = imagecolorat($img, $x, $y);
//獲取顏色的數(shù)組
$color = imagecolorsforindex($img, $index);
//顏色值的反轉(zhuǎn)
$red = 256 - $color['red'];
$green = 256 - $color['green'];
$blue = 256 - $color['blue'];
$hex = imagecolorallocate($img, $red, $green, $blue);
//給每一個(gè)像素分配顏色值
imagesetpixel($img, $x, $y, $hex);
}
}
//輸出圖片
switch ($imagetype) {
case 'gif':
imagegif($img);
break;
case 'jpeg':
imagejpeg($img);
break;
case 'png':
imagepng($img);
break;
default:
break;
}
}
$imgurl='1.jpg';
echo color($imgurl);
想要了解更多關(guān)于PHP開(kāi)技能方面的問(wèn)題請(qǐng)關(guān)注扣丁學(xué)堂官網(wǎng)、微信等平臺(tái),扣丁學(xué)堂IT職業(yè)在線學(xué)習(xí)教育平臺(tái)為您提供權(quán)威的PHP開(kāi)發(fā)環(huán)境搭建視頻,通過(guò)千鋒扣丁學(xué)堂金牌講師在線錄制的PHP開(kāi)發(fā)教程學(xué)習(xí),讓你快速掌握PHP從入門到精通開(kāi)發(fā)實(shí)戰(zhàn)技能。扣丁學(xué)堂PHP技術(shù)交流群:374332265。
【關(guān)注微信公眾號(hào)獲取更多學(xué)習(xí)資料】
查看更多關(guān)于“php培訓(xùn)資訊”的相關(guān)文章>>