利用php 內建函數產生圖片的方法實例詳解

怪我咯
發布: 2023-03-11 17:22:02
原創
2611 人瀏覽過

本文實例講述了PHP使用內建函數產生圖片的方法。分享給大家供大家參考,具體如下:

第一步:創建圖片

新建一個php文件,命名為new​​-image.php(你可以任意命名,方便後面的調用就行)。

php中有兩個函數建立一張圖片:mageCreate()建立一張空白圖片;ImageCreateFromPng()以現有的png圖片為背景來建立一張圖片。 (這裡的”Png”可以替換為“jpg”或”gif”,根據背景圖片的格式來確定)

$myImage=ImageCreate(400,60); //参数为宽度和高度
$myImage=ImageCreateFromJpg("http://farm5.static.flickr.com/418978874_c349c14359_o.jpg");
登入後複製

無論你使用了上面的哪一種方法,我們就創建好了一張圖片,並把圖片存到了$myImage這個變數

第二步:新增顏色

這時我們需要透過ImageColorAllocate()函數來建立一些顏色,把他們存到變數中,方便後面使用。

$white=ImageColorAllocate($myImage, 255, 255, 255);
$black=ImageColorAllocate($myImage, 0, 0, 0);
$red=ImageColorAllocate($myImage, 255, 0, 0);
$green=ImageColorAllocate($myImage, 0, 255, 0);
$blue=ImageColorAllocate($myImage, 0, 0, 255);
登入後複製

第三個步驟:繪製圖形

你也可以使用php的一些內建函數來添加一些幾何圖形:

ImageEllipse() //绘制椭圆
ImageArc() //绘制曲线
ImagePolygon() //绘制多边形
ImageRectangle() //绘制矩形
ImageLine() //绘制线条
登入後複製

下面是一個範例

ImageRectangle($myImage, 50, 20, 200, 15, $blue);
登入後複製

這時,你會發現只繪製了矩形的輪廓,如果你想要的是填滿的矩形,使用ImageFilledRectangle()方法:

ImageFilledRectangle($myImage, 50, 20, 200, 15, $blue);
登入後複製

第四步:新增文字

#########################我們可以使用imagettftext()函數來為圖片添加文字:###
imagettftext($myImage, 12, 0, 5, 20, $black, "Fonts/Oblivious font.ttf",  "这是要显示的内容");
登入後複製
###你肯定注意到了,在這裡你需要選擇字體(此處用的是Fonts/Oblivious font.ttf, 你可以使用你自己的喜歡的字體)。 如果不知道如何來取得字體,可以穀歌一下,上面有很多的下載字體的網站,裡面的內容足夠讓你眼花撩亂了。 ######第五步:產生圖片######當你成功的繪製好了你要顯示的圖片,接下來就要把它顯示在頁面中了。首先要做的是,告訴頁面,你要傳送給他的資料是一張圖片:###
//这里的png可以换成jpg,或者是gif,根据你要生成的图片格式来确定
header("Content-type:image/png");
ImagePng($myImage);
登入後複製
###接下來,因為我們不在需要$myImage這個變數了,我們需要把它的記憶體釋放掉: ###
ImageDestroy($myImage);
登入後複製
###第六步:呼叫圖片######透過前面的五步,我們已經創建了一張圖片,下面給大家說一下如何調用這張創建好了的圖片。 ######在HTML檔案中,我們使用url來引入這張圖片:###
<img src="new-image.php的路径" alt="myImage" />
//在src中,写入new-image.php文件的路径,你就会发现刚才创建的图片已经被成功的调用了
登入後複製
###利用imagepng()可產生一個圖片檔案###
<?php imagepng($myImage,"xxx.jpg"); ?>
登入後複製
登入後複製
<?php
$myImage=ImageCreate(400,60); //参数为宽度和高度
$white=ImageColorAllocate($myImage, 255, 255, 255);
$black=ImageColorAllocate($myImage, 0, 0, 0);
$red=ImageColorAllocate($myImage, 255, 0, 0);
$green=ImageColorAllocate($myImage, 0, 255, 0);
$blue=ImageColorAllocate($myImage, 0, 0, 255);
imagettftext($myImage, 12, 0, 5, 20, $red, "stxingka.ttf", "果冻 Elvis");
?>
登入後複製
<?php imagepng($myImage,"xxx.jpg"); ?>
登入後複製
登入後複製
###以上程式碼將在根目錄下產生一個xxx.jpg的圖片檔。 ###

以上是利用php 內建函數產生圖片的方法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!