php课程 8-28 php如何绘制生成显示图片
php課程 8-28 php如何繪制生成顯示圖片
一、總結(jié)
一句話總結(jié):gd庫輕松解決
?
1、php圖片操作生成的圖的兩種去向是什么?
一種在頁面直接輸出,一種存進(jìn)本地磁盤
?
2、php操作圖片的庫有哪些?
PHP: Image Processing and Generation - Manual
http://php.net/manual/en/refs.utilspec.image.php
Cairo
Exif
GD
Gmagick
ImageMagick
?
3、如何防止網(wǎng)站強(qiáng)刷注冊(cè)?
a、驗(yàn)證碼
b、ip限制,比如這個(gè)ip只能注冊(cè)30個(gè)用戶,多了就讓你明天再來
?
4、如何防止網(wǎng)站暴力破解用戶名?
記錄用戶名,如果輸入錯(cuò)5次,那只能明天再來登錄
第一次沒有驗(yàn)證碼,輸入出錯(cuò)之后驗(yàn)證碼就出來
?
5、網(wǎng)站上面圖片的縮放、裁剪、加水印是怎么實(shí)現(xiàn)的?
交給的php,gd庫輕松解決
?
6、php中常見的資源類型有哪些?
數(shù)據(jù)庫連接資源
gd庫畫布資源
?
7、php變量或者說資源的釋放是什么樣的?
一個(gè)腳本執(zhí)行完,執(zhí)行到最后之后,里面的所有變量或者說資源都會(huì)被刪除,所以多個(gè)php腳本的重復(fù)變量是不會(huì)相互影響的。
?
8、html如何聲明本文檔是圖片?
header頭中content-type
header('content-type:image/jpeg');
?
9、gd庫的使用需要額外引包么?
不需要,直接進(jìn)去就開始干就行了,比如說創(chuàng)建畫布資源
1 <?php 2 // 1.創(chuàng)建畫布資源 3 $img=imagecreatetruecolor(500,300); 4 5 // 2.準(zhǔn)備顏色 6 $black=imagecolorallocate($img,0,0,0); 7 $white=imagecolorallocate($img,255,255,255); 8 $red=imagecolorallocate($img,255,0,0); 9 $green=imagecolorallocate($img,0,255,0); 10 $blue=imagecolorallocate($img,0,0,255); 11 12 // 3.填充畫布 13 imagefill($img,0,0,$black); 14 15 // 4.在畫布上畫圖像或文字 16 imagefilledellipse($img,250,150,200,200,$white); 17 18 // 5.輸出最終圖像或保存最終圖像 19 header('content-type:image/jpeg'); 20 21 // 圖片從瀏覽器上輸出 22 imagejpeg($img); 23 24 // 把圖片保存到本地 25 // imagejpeg($img,'jin.jpg'); 26 27 // 6.釋放畫布資源 28 imagedestroy($img); 29 30 ?>?
10、php中g(shù)d畫圖的場(chǎng)景有哪些?
1.驗(yàn)證碼
2.縮放
3.裁剪
4.水印
?
11、php中創(chuàng)建圖像的六個(gè)步驟是什么?
1.創(chuàng)建畫布資源
$img=imagecreatetruecolor(500,300);
2.準(zhǔn)備顏色
$black=imagecolorallocate($img,0,0,0);
$white=imagecolorallocate($img,255,255,255);
$red=imagecolorallocate($img,255,0,0);
$green=imagecolorallocate($img,0,255,0);
$blue=imagecolorallocate($img,0,0,255);
3.填充畫布
imagefill($img,0,0,$black);
4.在畫布上畫圖像或文字
imagefilledellipse($img,250,150,200,200,$white);
5.輸出最終圖像或保存最終圖像
header('content-type:image/jpeg');
1)圖片從瀏覽器上輸出
imagejpeg($img);
2)把圖片保存到本地
imagejpeg($img,'jin.jpg');
6.釋放畫布資源
imagedestroy($img);
?
?
二、php如何繪制生成顯示圖片
1、相關(guān)知識(shí)
php中g(shù)d畫圖的場(chǎng)景:
1.驗(yàn)證碼
2.縮放
3.裁剪
4.水印
php中創(chuàng)建圖像的六個(gè)步驟:
1.創(chuàng)建畫布資源
$img=imagecreatetruecolor(500,300);
2.準(zhǔn)備顏色
$black=imagecolorallocate($img,0,0,0);
$white=imagecolorallocate($img,255,255,255);
$red=imagecolorallocate($img,255,0,0);
$green=imagecolorallocate($img,0,255,0);
$blue=imagecolorallocate($img,0,0,255);
3.填充畫布
imagefill($img,0,0,$black);
4.在畫布上畫圖像或文字
imagefilledellipse($img,250,150,200,200,$white);
5.輸出最終圖像或保存最終圖像
header('content-type:image/jpeg');
1)圖片從瀏覽器上輸出
imagejpeg($img);
2)把圖片保存到本地
imagejpeg($img,'jin.jpg');
6.釋放畫布資源
imagedestroy($img);
繪制圖像:
? imagefill();?? //區(qū)域填充
? imagesetpixel();? //畫一個(gè)像素
? imageline();??? //畫一條線
? imagerectangle();?? //畫一個(gè)矩形
? imagefilledrectangle();?? //畫一矩形并填充
? imagepolygon();???? //畫一個(gè)多邊形
? imagefilledpolygon();? //畫一個(gè)多邊形并填充
? imageellipse();? //畫一個(gè)橢圓
? imagefilledellipse();??? //畫一個(gè)橢圓并填充
? imagearc();??? //畫一個(gè)橢圓弧
? imagefilledarc();? //畫一個(gè)橢圓弧并填充
? imagestring();?? //水平地畫一行字符串
? imagestringup();? //垂直地畫一行字符串
? imagechar();?? //水平地畫一個(gè)字符
? imagecharup();?? //垂直地畫一個(gè)字符
? imagettftext();? //用truetype字符向圖像畫一個(gè)字符串
?
2、代碼
1 <?php 2 // 1.創(chuàng)建畫布資源 3 $img=imagecreatetruecolor(500,300); 4 5 // 2.準(zhǔn)備顏色 6 $black=imagecolorallocate($img,0,0,0); 7 $white=imagecolorallocate($img,255,255,255); 8 $red=imagecolorallocate($img,255,0,0); 9 $green=imagecolorallocate($img,0,255,0); 10 $blue=imagecolorallocate($img,0,0,255); 11 12 // 3.填充畫布 13 imagefill($img,0,0,$black); 14 15 // 4.在畫布上畫圖像或文字 16 imagefilledellipse($img,250,150,200,200,$white); 17 18 // 5.輸出最終圖像或保存最終圖像 19 header('content-type:image/jpeg'); 20 21 // 圖片從瀏覽器上輸出 22 imagejpeg($img); 23 24 // 把圖片保存到本地 25 // imagejpeg($img,'jin.jpg'); 26 27 // 6.釋放畫布資源 28 imagedestroy($img); 29 30 ?>?
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/Renyi-Fan/p/9279604.html
總結(jié)
以上是生活随笔為你收集整理的php课程 8-28 php如何绘制生成显示图片的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HDU 5514 Frogs 欧拉函数
- 下一篇: 动态规划算法php,php算法学习之动态