PHP 圖片合成(2合1)
原文連結https://www.cnblogs.com/fengms/p/5422070.html
/**
* 圖片合併
* */
ob_clean();
header('Content-type:image/png');
//如果遇到問題需要找bug,把header放最後
/*
$str = "1\n2\n3\n";
$im = imagecreate(100,120);
$white = imagecolorallocate($im,0xFF,0xFF,0xFF);
imagecolortransparent($im,$white); //imagecolortransparent() 設定具體某種顏色為透明色,若註釋
$black = imagecolorallocate($im,0x00,0x00,0x00);
imagettftext($im,15,0,50,40,$black,"simkai.ttf",$str); //字型設定部分linux和windows的路徑可能不同
header("Content-type:image/png");
imagepng($im);//文字生成的圖片
*/
//判斷是哪種圖片
function isjpg($pic_path) {
$pathInfo = pathinfo($pic_path);
switch (strtolower($pathInfo['extension'])) {
case 'jpg':
case 'jpeg':
$imagecreatefromjpeg = 'imagecreatefromjpeg';
break;
case 'png':
$imagecreatefromjpeg = 'imagecreatefrompng';
break;
case 'gif':
default:
$imagecreatefromjpeg = 'imagecreatefromstring';
break;
}
return $imagecreatefromjpeg;
}
/**
* 圖片2合一
* @param type $path_1 人物圖片
* @param type $path_2 裝備圖片
* @param type $width 圖片二距離x軸位置
* @param type $height 圖騙而距離y軸位置
*/
function img21($path_1, $path_2,$width=200,$height=200) {
$p1 = isjpg($path_1);
$p2 = isjpg($path_2);
//將人物和裝備圖片分別取到兩個畫布中
$image_1 = $p1($path_1);
$image_2 = $p2($path_2);
//建立一個和人物圖片一樣大小的真彩色畫布(ps:只有這樣才能保證後面copy裝備圖片的時候不會失真)
$image_3 = imageCreatetruecolor(imagesx($image_1), imagesy($image_1));
//為真彩色畫布建立白色背景,再設定為透明
$color = imagecolorallocate($image_3, 255, 255, 255);
imagefill($image_3, 0, 0, $color);
imageColorTransparent($image_3, $color);
//首先將人物畫布取樣copy到真彩色畫布中,不會失真
imagecopyresampled($image_3, $image_1, 0, 0, 0, 0, imagesx($image_1), imagesy($image_1), imagesx($image_1), imagesy($image_1));
//再將裝備圖片copy到已經具有人物影象的真彩色畫布中,同樣也不會失真
imagecopymerge($image_3, $image_2, $width, $height, 0, 0, imagesx($image_2), imagesy($image_2), 100);
//將畫布儲存到指定的gif檔案
imagegif($image_3);
}
$path_1 = "./20180830/15356120713227.jpg";
$path_2 = "./20180830/15356133061333.jpg";
img21($path_1,$path_2,1,1); // 圖2插入到圖1 中
相關文章
- PHP 圖片、文字合成PHP
- golang 合成的圖片Golang
- FFmpeg 圖片合成影片
- PHP合成圖圓角PHP
- 圖片合成工具類(BitmapMergeUtils)
- PaddlePaddle : AI摳圖及圖片合成AI
- 視訊提取圖片/圖片合成視訊ffmpeg(二十)
- PhotosBlender for Mac(圖片合成軟體)Mac
- PHP 圖片的合併,微信小程式碼合併,文字合併PHP微信小程式
- canvas實現二維碼和圖片合成Canvas
- Mac上圖片合成軟體哪個好?Mac
- JavaScript中的圖片處理與合成(四)JavaScript
- JavaScript中的圖片處理與合成(一)JavaScript
- JavaScript中的圖片處理與合成(二)JavaScript
- ImageCombiner - Java服務端圖片合成工具,好用!Java服務端
- 片 - 圖論 - 1圖論
- 利用Python講多張圖片合成PDF檔案Python
- dcat-admin上傳圖片 會自動把圖片壓成2:1的格式?
- 【學習圖片】1.圖片簡史
- 無需下載軟體怎麼將多張圖片組合成一張圖片
- php生成二維碼圖片PHP
- php實現pdf轉圖片PHP
- php實現圖片旋轉PHP
- 在python中將多張圖片合成為視訊Python
- PHP pdf轉化為圖片(PNG)PHP
- php微擎功能-圖片加水印PHP
- php+WebUploader圖片批量上傳PHPWeb
- 一對一原始碼,java 圖片之間相互巢狀,合成原始碼Java巢狀
- Python:圖片合視訊(最簡)Python
- PHP開發的優美圖片網PHP
- PHP實現圖片(檔案)上傳PHP
- php qrcode不生成圖片怎麼辦PHP
- [精選] 用PHP做圖片防盜鏈,你再也盜不了圖片了?PHP
- 圖片合併成PDF,兩個PDF的合併
- Python 批次合併圖片到word文件Python
- php5.5CURL圖片上傳廢棄@PHP
- nginx 透過 php 代理給圖片加水印NginxPHP
- web技術分享| 圖片上傳與圖片裁剪結合 vue3WebVue