ホームページ >バックエンド開発 >PHPチュートリアル >PHP は、背景画像に円形のロゴを追加する実装を実装します。 淘宝網ページの背景画像。 Weibo の背景画像。 ppt の背景を設定する方法。

PHP は、背景画像に円形のロゴを追加する実装を実装します。 淘宝網ページの背景画像。 Weibo の背景画像。 ppt の背景を設定する方法。

WBOY
WBOYオリジナル
2016-07-29 08:49:051514ブラウズ

手順について説明します:

全部で 3 つのステップがあります:

1. ロゴを固定サイズの正方形の画像に圧縮します

2. ロゴを丸いロゴに変換します

3. ロゴと背景画像を結合します

早速、コードに直接進みましょう:

<?php /**
 * 作者:friker
 * 开发时间:20160516
 * 功能:图片处理
 *
 */
class ImageController extends CI_Controller{

	public function __construct()
	{
		parent::__construct();
		date_default_timezone_set(&#39;Asia/Shanghai&#39;);
		error_reporting( E_ALL&~E_NOTICE&~E_WARNING);
		$this->load->library('curl');
	}

	/**
	 * @todo : 本函数用于 将方形的图片压缩后
	 *         再裁减成圆形 做成logo
	 *         与背景图合并
	 * @return 返回url
	 */
	public function index(){
		//头像
		$headimgurl = 'a.jpg';
		//背景图
		$bgurl = './aa.png';
		$imgs['dst'] = $bgurl;
		//第一步 压缩图片
		$imggzip = $this->resize_img($headimgurl);
		//第二步 裁减成圆角图片
		$imgs['src'] = $this->test($imggzip);
		//第三步 合并图片
		$dest = $this->mergerImg($imgs);
	}

	public function resize_img($url,$path='./'){
		$imgname = $path.uniqid().'.jpg';
		$file = $url;
		list($width, $height) = getimagesize($file); //获取原图尺寸
		$percent = (110/$width);
		//缩放尺寸
		$newwidth = $width * $percent;
		$newheight = $height * $percent;
		$src_im = imagecreatefromjpeg($file);
		$dst_im = imagecreatetruecolor($newwidth, $newheight);
		imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
		imagejpeg($dst_im, $imgname); //输出压缩后的图片
		imagedestroy($dst_im);
		imagedestroy($src_im);
		return $imgname;
	}

	//第一步生成圆角图片
	public function test($url,$path='./'){
		$w = 110;  $h=110; // original size
	    $original_path= $url;
	    $dest_path = $path.uniqid().'.png';
	    $src = imagecreatefromstring(file_get_contents($original_path));
	    $newpic = imagecreatetruecolor($w,$h);
	    imagealphablending($newpic,false);
	    $transparent = imagecolorallocatealpha($newpic, 0, 0, 0, 127);
	    $r=$w/2;
	    for($x=0;$x<br><span> 結果表示: </span><p><span><img src="http://image.codes51.com/Article/image/20160516/20160516180604_3910.png" alt="PHP は、背景画像に円形のロゴを追加する実装を実装します。 淘宝網ページの背景画像。 Weibo の背景画像。 ppt の背景を設定する方法。"><br></span></p>
                
                
                <p>
                    上記では、PHP で背景画像に円形のロゴを追加する方法を、ロゴと背景画像を含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。 </p>
                <p>
                    </p>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。