PHP - 谷歌图表API - QR码边距不起作用(错误或功能?)

Obm*_*nen 3 php qr-code google-visualization

我有一个非常简单的功能来从谷歌图表API生成QR码.

 function o99_qr_code($size,$type,$url ) {

        $qr = '';
        $dsize = $size .'x'.$size; // doubleSize

         $qr = '<img src="http://chart.apis.google.com/chart?cht=qr&chs=' . $dsize . '&chld=L|0&chl=' . $url . '" width="' .$size .'" height="'.$size .'" alt="QR code" title="QR Code for your mobile device"/>';

         switch ($type){
         case 'echo' :
         echo $qr;
         case 'return' :
         return $qr;
         }
    }
Run Code Online (Sandbox Code Playgroud)

现在,除了保证金之外,这项工作正常.

(为不链接实时URL而道歉 - 我的DEV在localmachine上)

Whatver我尝试,我不能得到的保证金去0.首先我认为,出于某种原因,也许校正电L不接受0利润-我累了&chld=M|1&chld=L|0&chld=M|3,甚至试图改变参数的顺序和放到&chld=L|0字符串的末尾或完全省略它.

但由于某种原因,我总是得到4的默认保证金.

难道我做错了什么 ??

编辑I - URL请求后:生成的URL为:

<img src="http://chart.apis.google.com/chart?cht=qr&chs=50x50&chld=L|0&chl=http://localhost/wp-sandbox/?p=6164" width="50" height="50" alt="QR code" title="QR code for your phone"/>
Run Code Online (Sandbox Code Playgroud)

编辑二

看看这个小提琴http://jsfiddle.net/obmerk99/rsjcM/

它证明了这个问题.

Ter*_*den 9

谷歌图表有一个奇怪的功能,它将增加图像的大小,但不会增加代码的大小.

这取决于代码中数据的大小.

看看这三个例子

150 - 没有保证金http://chart.apis.google.com/chart?cht=qr&chs=150x150&chld=L|0&chl=http://localhost/wp-sandbox/?p=6164

165 - 保证金http://chart.apis.google.com/chart?cht=qr&chs=165x165&chld=L|0&chl=http://localhost/wp-sandbox/?p=6164

180 - 没有保证金http://chart.apis.google.com/chart?cht=qr&chs=180x180&chld=L|0&chl=http://localhost/wp-sandbox/?p=6164

请记住 - 您的代码需要一个保证金,以便大多数设备能够正确扫描它.