Home  >  Article  >  Backend Development  >  What to do if PHP generates Chinese garbled QR code_PHP Tutorial

What to do if PHP generates Chinese garbled QR code_PHP Tutorial

WBOY
WBOYOriginal
2016-07-13 10:24:15807browse

What should I do if php generates Chinese garbled QR codes?

Recently I did a project to scan the QR code to get the vcard. I encountered a problem. There is a part of the generated QR code that needs to be scanned with an Android phone. The Chinese name in the vcard obtained was garbled. After comparison, it was found that the ORG type in this part of the vcard had no content. Then it was judged that there was no content and a fixed string was added, thus solving the problem of garbled characters. This solution can be considered as a way to save the country. I don’t know how to fundamentally solve the garbled code problem. If anyone has the solution, please leave a message and let me know. Thank you.

3. Several ways to generate QR code in php

 1.google open api

The code is as follows

$urlToEncode="http:// gz.altmi.com";
generateQRfromGoogle($urlToEncode);
function generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0')
{
$url = urlencode($url);
echo '';
}

 代码如下  

$urlToEncode="http://gz.altmi.com";
generateQRfromGoogle($urlToEncode);
function generateQRfromGoogle($chl,$widhtHeight ='150',$EC_level='L',$margin='0')
{
$url = urlencode($url);
echo '';
}

 2.php class library PHP QR Code

Address: http://phpqrcode.sourceforge.net/

Download: http://sourceforge.net/projects/phpqrcode/

Use case:

The code is as follows

# Create a QR code file QRcode::png('code data text', 'filename.png');
# Generate images to the browser
QRcode::png('some othertext 1234');

 代码如下  

# 创建一个二维码文件
QRcode::png('code data text', 'filename.png');
# 生成图片到浏览器
QRcode::png('some othertext 1234');

 3.libqrencode

Address: http://fukuchi.org/works/qrencode/index.en.html

For PHP support, please refer to: http://hirokawa.netflowers.jp/entry/4900/

 4.QRcode Perl CGI & PHP tutorial scripts

Address: http://www.swetake.com/qr/qr_cgi.html

IV. In the second method, add the logo in the middle of the QR code

Modify the png method in the QRimage class in phpqrcode.php:

The code is as follows

public static function png($frame, $filename = false, $pixelPerPoint = 4, $outerFrame = 4, $saveandprint=FALSE, $mergePic='')
{
$image = self::image($frame, $pixelPerPoint, $outerFrame);
if($mergePic) {
$im = imagecreatefrompng($mergePic);
$w = imagesx($im);
$h = imagesy($im);
ImageAlphaBlending($image, true);
ImageAlphaBlending($im, true);
$qrw = (imagesx($image)-$w)/2;
$qrh = (imagesy($image)-$h)/2;
imagecopy($image, $im, $qrw, $qrh, 0, 0, $w, $h);
imagedestroy($im);
}

 代码如下  

public static function png($frame, $filename = false, $pixelPerPoint = 4, $outerFrame = 4, $saveandprint=FALSE, $mergePic='')
{
$image = self::image($frame, $pixelPerPoint, $outerFrame);
if($mergePic) {
$im = imagecreatefrompng($mergePic);
$w = imagesx($im);
$h = imagesy($im);
ImageAlphaBlending($image, true);
ImageAlphaBlending($im, true);
$qrw = (imagesx($image)-$w)/2;
$qrh = (imagesy($image)-$h)/2;
imagecopy($image, $im, $qrw, $qrh, 0, 0, $w, $h);
imagedestroy($im);
}

if ($filename === false) {
Header("Content-type: image/png");
ImagePng($image);
} else {
ImagePng($image, $filename);
if($saveandprint===TRUE){
header("Content-type: image/png");
ImagePng($image);
}
}
ImageDestroy($image);
}

if ($filename === false ) {
Header("Content-type: image/png");
ImagePng($image);
} else {
ImagePng($image, $filename);
if($saveandprint===TRUE){
header("Content-type: image/png");
ImagePng($image);
}
}
ImageDestroy($image);
}

http://www.bkjia.com/PHPjc/827289.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/827289.htmlTechArticleWhat should I do if php generates Chinese garbled QR code? I recently did a project of scanning the QR code to get vcard, and I encountered One question, there is a part of the generated QR code that can be scanned with an Android phone...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn