最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php圖片放大合成加入字體操作示例介紹

 更新時(shí)間:2022年08月17日 09:28:32   作者:qq_39688201  
這篇文章主要介紹了php圖片放大、圖片合成、圖片放入字體的示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

之前只是生成二維碼,現(xiàn)在需要把二維碼放在一個(gè)背景圖并且需要有文字介紹。之前沒做過,現(xiàn)在做好了記錄一下。

一. 獲取圖片

$background_path = root_path() . 'public/event/template.jpg'; //背景圖片地址
$qrcode_path = root_path() . 'public/event/qrcode/1653635892.png'; // 二維碼圖片地址
// 背景圖
$background_image = imagecreatefromjpeg($background_path);
// 二維碼圖
$qrcode_image = imagecreatefrompng($qrcode_path);

備注:圖片地址必須是絕對地址

二. 把二維碼圖片放大

//獲取圖片的屬性,第一個(gè)寬度,第二個(gè)高度,類型1=>gif,2=>jpeg,3=>png
list($qrcode_x, $qrcode_y) = getimagesize($qrcode_path);
// 把二維碼圖片放大到1200像素
$size = 1200;
// 新建一個(gè)畫布
$finalQrcode = imagecreatetruecolor($size, $size);
// 把二維碼圖片放到新的畫布上
imagecopyresampled($finalQrcode, $qrcode_image, 0, 0, 0, 0, $size, $size, $qrcode_x, $qrcode_y);

備注:圖片放大其實(shí)就是新建一個(gè)你需要尺寸的大小的畫布,把之前的圖片移到新的畫布上,通過參數(shù)去控制圖片在畫布的位置及大小

三. 多個(gè)圖片合成

// 把背景和二維碼圖片合成在一起
//獲取圖片的屬性,第一個(gè)寬度,第二個(gè)高度,類型1=>gif,2=>jpeg,3=>png
list($background_width,$background_height) = getimagesize($background_path);
// 新建一個(gè)畫布,用來填充背景
$finalImage = imageCreatetruecolor($background_width,$background_height);
// 圖像分配顏色
$color = imagecolorallocate($finalImage, 255, 255, 255);
//設(shè)置居中圖片的X軸坐標(biāo)位置
$x = ($background_width-$size)/2;
//設(shè)置居中圖片的Y軸坐標(biāo)位置
$y = 430;
// 用于用給定的顏色填充圖像
imagefill($finalImage, 0, 0, $color);
// 將顏色定義為透明色
imageColorTransparent($finalImage, $color);
// 用背景來填充畫布
// 目標(biāo)圖 源圖 目標(biāo)X坐標(biāo)點(diǎn) 目標(biāo)Y坐標(biāo)點(diǎn) 源的X坐標(biāo)點(diǎn) 源的Y坐標(biāo)點(diǎn) 目標(biāo)寬度 目標(biāo)高度 源圖寬度 源圖高度
imagecopyresampled($finalImage,$background_image,0,0,0,0,$background_width,$background_height,$background_width,$background_width);
//二維碼圖片在背景上的位置 $x橫坐標(biāo),$y縱坐標(biāo)
imagecopymerge($finalImage,$finalQrcode, $x,$y,0,0,$size,$size, 100);

四. 添加文字并居中

圖片的文字進(jìn)行居中,需要我們通過圖片的尺寸,文字需要占的尺寸去計(jì)算。

現(xiàn)在有一個(gè)composer庫(stil/gd-text)可以實(shí)現(xiàn)該功能。

composer require stil/gd-text
$text = '測試測試測試測試測試測試測試';
// 字體的不同會導(dǎo)致漢字寫入圖片亂碼
$font = root_path() . 'public/font/Alibaba-PuHuiTi-Medium.ttf'; // 字體的絕對地址
$showY = 2480-800;
$box = new Box($finalImage);
$box->setFontFace($font);
$box->setFontColor(new Color(0, 60, 121));//字體顏色
$box->setFontSize(160);//字體大小
$box->setLineHeight(2);//行高
$box->setBox(-22, $showY, 2480, 200);
$box->setTextAlign('center', 'top'); // 字體居中
$box->draw($text);
Header("Content-type: image/jpeg");
//將畫布保存到指定的文件
imagejpeg($finalImage, root_path() . 'public/event/qrcode/111.png');

五. 完整的代碼

$background_path = root_path() . 'public/event/template.jpg'; //背景圖片地址
$qrcode_path = root_path() . 'public/event/qrcode/1653635892.png'; // 二維碼圖片地址
// 背景圖
$background_image = imagecreatefromjpeg($background_path);
// 二維碼圖
$qrcode_image = imagecreatefrompng($qrcode_path);
//獲取圖片的屬性,第一個(gè)寬度,第二個(gè)高度,類型1=>gif,2=>jpeg,3=>png
list($qrcode_x, $qrcode_y) = getimagesize($qrcode_path);
// 把二維碼圖片放大到1200像素
$size = 1200;
$finalQrcode = imagecreatetruecolor($size, $size);
imagecopyresampled($finalQrcode, $qrcode_image, 0, 0, 0, 0, $size, $size, $qrcode_x, $qrcode_y);
// 把背景和二維碼圖片合成在一起
//獲取圖片的屬性,第一個(gè)寬度,第二個(gè)高度,類型1=>gif,2=>jpeg,3=>png
list($background_width,$background_height) = getimagesize($background_path);
$finalImage = imageCreatetruecolor($background_width,$background_height);
$color = imagecolorallocate($finalImage, 255, 255, 255);
//設(shè)置居中圖片的X軸坐標(biāo)位置
$x = ($background_width-$size)/2;
//設(shè)置居中圖片的Y軸坐標(biāo)位置
$y = 430;
imagefill($finalImage, 0, 0, $color);
imageColorTransparent($finalImage, $color);
imagecopyresampled($finalImage,$background_image,0,0,0,0,$background_width, $background_height,$background_width,$background_width);
//圖片在背景上的位置 $x橫坐標(biāo),$y縱坐標(biāo)
imagecopymerge($finalImage,$finalQrcode, $x,$y,0,0,$size,$size, 100);
$text = '測試測試測試測試測試測試測試';
$font = root_path() . 'public/font/Alibaba-PuHuiTi-Medium.ttf';
$showY = 2480-800;
$box = new Box($finalImage);
$box->setFontFace($font);
$box->setFontColor(new Color(0, 60, 121));//字體顏色
$box->setFontSize(160);//字體大小
$box->setLineHeight(2);//行高
$box->setBox(-22, $showY, 2480, 200);
$box->setTextAlign('center', 'top'); // 字體居中
$box->draw($text);
Header("Content-type: image/jpeg");
//將畫布保存到指定的文件
imagejpeg($finalImage, root_path() . 'public/event/qrcode/111.png');
exit();

到此這篇關(guān)于php圖片放大合成加入字體操作示例介紹的文章就介紹到這了,更多相關(guān)php圖片放大內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Linux系統(tǒng)下php獲得系統(tǒng)分區(qū)信息的方法

    Linux系統(tǒng)下php獲得系統(tǒng)分區(qū)信息的方法

    這篇文章主要介紹了Linux系統(tǒng)下php獲得系統(tǒng)分區(qū)信息的方法,涉及Linux下php系統(tǒng)分析的操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • discuz程序的PHP加密函數(shù)原理分析

    discuz程序的PHP加密函數(shù)原理分析

    康盛的 authcode 函數(shù)可以說對中國的PHP界作出了重大貢獻(xiàn)。包括康盛自己的產(chǎn)品,以及大部分中國使用PHP的公司都用這個(gè)函數(shù)進(jìn)行加密,authcode 是使用異或運(yùn)算進(jìn)行加密和解密。
    2011-08-08
  • FirePHP 推薦一款PHP調(diào)試工具

    FirePHP 推薦一款PHP調(diào)試工具

    PHP調(diào)試有很多中方法。今天給大家推薦的是 FirePHP 這個(gè)工具,是基于firefox的一個(gè)組件。Firephp組件安裝地址。使用之前需要先安裝下這個(gè)組件。完了還需要down一個(gè)FirePHP的包。
    2011-04-04
  • php中鉤子(hook)的原理與簡單應(yīng)用demo示例

    php中鉤子(hook)的原理與簡單應(yīng)用demo示例

    這篇文章主要介紹了php中鉤子(hook)的原理與簡單應(yīng)用,結(jié)合完整demo實(shí)例形式分析了php中鉤子(hook)的原理及簡單使用操作技巧,需要的朋友可以參考下
    2019-09-09
  • PHP的序列化和反序列化詳情

    PHP的序列化和反序列化詳情

    這篇文章主要介紹了PHP的序列化和反序列化詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • Laravel實(shí)現(xiàn)隊(duì)列的示例代碼

    Laravel實(shí)現(xiàn)隊(duì)列的示例代碼

    這篇文章主要為大家詳細(xì)介紹了Laravel實(shí)現(xiàn)隊(duì)列的相關(guān)知識,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)和借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)游戲
    2023-02-02
  • php中stdClass的用法分析

    php中stdClass的用法分析

    這篇文章主要介紹了php中stdClass的用法,實(shí)例分析了stdClass的功能及使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • PHP實(shí)現(xiàn)的分頁類定義與用法示例

    PHP實(shí)現(xiàn)的分頁類定義與用法示例

    這篇文章主要介紹了PHP實(shí)現(xiàn)的分頁類定義與用法,結(jié)合具體實(shí)例形式分析了php封裝的分頁類常用操作及具體使用技巧,需要的朋友可以參考下
    2017-07-07
  • PHP使用SOAP調(diào)用API操作示例

    PHP使用SOAP調(diào)用API操作示例

    這篇文章主要介紹了PHP使用SOAP調(diào)用API操作,結(jié)合實(shí)例形式分析了php基于SOAP調(diào)用API的常見操作技巧及相關(guān)問題解決方法,需要的朋友可以參考下
    2018-12-12
  • php獲取遠(yuǎn)程圖片的兩種 CURL方式和sockets方式獲取遠(yuǎn)程圖片

    php獲取遠(yuǎn)程圖片的兩種 CURL方式和sockets方式獲取遠(yuǎn)程圖片

    php獲取遠(yuǎn)程圖片的兩種:CURL方式和sockets方式獲取遠(yuǎn)程圖片,需要的朋友可以參考下。
    2011-11-11

最新評論

七台河市| 峨眉山市| 伽师县| 曲沃县| 山东省| 曲周县| 全南县| 灵川县| 新兴县| 安龙县| 凤冈县| 广丰县| 德兴市| 长子县| 白朗县| 阳江市| 内黄县| 饶河县| 右玉县| 台湾省| 隆德县| 蓬溪县| 横峰县| 尼玛县| 眉山市| 积石山| 仪陇县| 扎赉特旗| 饶平县| 巴彦县| 班玛县| 剑阁县| 石柱| 钟山县| 浦江县| 山丹县| 霞浦县| 印江| 乡城县| 基隆市| 成安县|