PHP基于phpqrcode类生成(带LOGO图像的)二维码

发布时间:1970-01-01  编辑:Mrs.默先森 

    phpcrcode类库文件下载地址:https://sourceforge.net/projects/phpqrcode/

    使用方法

    下载来的压缩包里面包含很多类库以及demo,我们只需要phpqrcode.php这一个文件就可以了,其他的是去是留自行处理,而其中我们需要的是QRcode类(第2963行)中的png方法(第3090行)

    public static function png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false)
    {
      $enc = QRencode::factory($level, $size, $margin);
      return $enc->encodePNG($text, $outfile, $saveandprint=false);
    }




    /**
     * 生成二维码
     * function png($text, $outfile = false, $level = QR_ECLEVEL_L, $size = 3, $margin = 4, $saveandprint=false)
     * $text:二维码所包含的内容,可以是链接,文本,json
     * $outfile,默认值false,直接输出,只将二维码图片输出否则需要给出二维码的文件名以及路径
     * $level:二维码容错率
     * $size:控制生成的二维码大小
     * $margin:控制生成二维码空白区域大小
     * $saveandprint,默认值为false,保存二维码图片,$outfile必须设置路径
     */
    $url = 'https://www.wubin.pro';
    QRcode::png ($url,false,QR_ECLEVEL_L,18,3,false);


    生成带LOGO的二维码

    $url = 'https://www.wubin.pro';
    $filename = 'images/qrcode.png';
    QRcode::png ($url,$filename,QR_ECLEVEL_L,18,3,true);
    
    $QR = $filename;//二维码
    $logo = 'images/logo.JPG';//logo
    if(file_exists ($logo)){
    	//目标图像资源
    	$QR = imagecreatefromstring (file_get_contents ($QR));
    	//源图像资源
    	$logo = imagecreatefromstring (file_get_contents ($logo));
    	//二维码宽高
    	$QR_width = imagesx ($QR);
    	$QR_height = imagesy ($QR);
    	//logo图像的宽高
    	$logo_width = imagesx ($logo);
    	$logo_height = imagesy ($logo);
    	//设置组合之后logo宽度
    	$logo_qr_width  = $QR_width / 4;
    	//logo图片的缩放比
    	$scale = $logo_width/$logo_qr_width;
    	//计算logo缩放之后高度
    	$logo_qr_height = $logo_height/$scale;
    	//计算组合之后logo左上角坐标
    	$from_width = ($QR_width-$logo_qr_width)/2;
    	imagecopyresampled ($QR,$logo,$from_width,$from_width,0,0,$logo_qr_width,$logo_qr_height,$logo_width,$logo_height);
    	//输出目标
    	imagepng ($QR,'images/qrcode.png');
    	//释放资源
    	imagedestroy ($QR);
    	imagedestroy ($logo);
    }

    更多用法,可直接参考源码:http://phpqrcode.sourceforge.net/

    标签SQL php


本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动。

陶太富博客 http://blog.taotaifu.cn

最新发布

最新评论

0.065655s