【问题标题】:Google map in tcpdf not showing correct pathtcpdf中的谷歌地图没有显示正确的路径
【发布时间】:2015-12-07 14:17:49
【问题描述】:

下面是我在tcpdf中使用的静态网址:

http://maps.google.com/maps/api/staticmap?zoom=14&size=800x800&maptype=roadmap&markers=color:green|label:A|52.3693824,4.8871682&markers=color:green|label:B|52.369369,4.901235&markers=color:red|label:C|52.3585252,4.8808168&path=color:66ACF2|weight:3|enc:uks~Haoy\iDOCp@Ap@pGVV?@o@B_Db@MXSCsDrBaDN[S_@S_@?Mn@}I?uDIu@@aBBw@@o@LoCHmA?s@AoDI_CA_AJ{FH{BD]h@ kBT_AJSLKRIZMFAEm@m@oDG[U[wBeCuBcCIMI]GgACWG?I?GCQUGGG@SUGAK@}@tCiBhGs@dC[z@QTQJe@L{ALoHb@M?K~@WrAEHNNt@l@jB|AvFrFhAbAfAfAnBjB~@|@LDJBRj@ tAxE^rAt@jCPn@VAn@BZLf@T@F~Dn@RLVLtCn@nD|@ZADCvBj@zBj@AV_BbUbB|A~BrBjAdAz@d@RPx@pAm@bBo@|A[z@?H?B?@ M\vAnItGr_@HTx@i@z@g@zByAHIHEAWo@wD_AmF&sensor=false

我认为由于加密的路径,tcpdf 没有解析这个并在谷歌地图中显示错误的路径。

有人可以帮我解决这个问题吗?提前致谢!!

【问题讨论】:

    标签: tcpdf google-static-maps


    【解决方案1】:

    使用writeHTMLCell() & <img> html 标签:

    $html = <<<EOD
        <img border="0" src="//maps.google.com/maps/api/staticmap?zoom=14&size=800x800&maptype=roadmap&markers=color:green|label:A|52.3693824,4.8871682&markers=color:green|label:B|52.369369,4.901235&markers=color:red|label:C|52.3585252,4.8808168&path=color:66ACF2|weight:3|enc:uks~Haoy\iDOCp@Ap@pGVV?@o@B_Db@MXSCsDrBaDN[S_@S_@?Mn@}I?uDIu@@aBBw@@o@LoCHmA?s@AoDI_CA_AJ{FH{BD]h@kBT_AJSLKRIZMFAEm@m@oDG[U[wBeCuBcCIMI]GgACWG?I?GCQUGGG@SUGAK@}@tCiBhGs@dC[z@QTQJe@L{ALoHb@M?K~@WrAEHNNt@l@jB|AvFrFhAbAfAfAnBjB~@|@LDJBRj@tAxE^rAt@jCPn@VAn@BZLf@T@F~Dn@RLVLtCn@nD|@ZADCvBj@zBj@AV_BbUbB|A~BrBjAdAz@d@RPx@pAm@bBo@|A[z@?H?B?@M\vAnItGr_@HTx@i@z@g@zByAHIHEAWo@wD_AmF&sensor=false" alt="Greenwich, England">
    EOD;
    $pdf->writeHTMLCell('', '', 0, 0, $html, 0, 1, false, true, 'L', false);
    

    结果:

    更新:
    你也可以使用Image():

    $pdf->Image(
        'http://maps.google.com/maps/api/staticmap?zoom=14&size=800x800&maptype=roadmap&markers=color:green|label:A|52.3693824,4.8871682&markers=color:green|label:B|52.369369,4.901235&markers=color:red|label:C|52.3585252,4.8808168&path=color:66ACF2|weight:3|enc:uks~Haoy\iDOCp@Ap@pGVV?@o@B_Db@MXSCsDrBaDN[S_@S_@?Mn@}I?uDIu@@aBBw@@o@LoCHmA?s@AoDI_CA_AJ{FH{BD]h@kBT_AJSLKRIZMFAEm@m@oDG[U[wBeCuBcCIMI]GgACWG?I?GCQUGGG@SUGAK@}@tCiBhGs@dC[z@QTQJe@L{ALoHb@M?K~@WrAEHNNt@l@jB|AvFrFhAbAfAfAnBjB~@|@LDJBRj@tAxE^rAt@jCPn@VAn@BZLf@T@F~Dn@RLVLtCn@nD|@ZADCvBj@zBj@AV_BbUbB|A~BrBjAdAz@d@RPx@pAm@bBo@|A[z@?H?B?@M\vAnItGr_@HTx@i@z@g@zByAHIHEAWo@wD_AmF&sensor=false', 
        0.5, 0.5, 20, 20, '', '', '', false, 300
    );
    

    正确显示路径线:

    【讨论】:

    • 感谢您的回复。
    • 但我尝试使用你提到的 writeHTMLCell。我没有在谷歌地图中生成正确的路径。同样在您上面的示例 bmp 中,只有位置标记,但没有路径路径。如果您直接将谷歌地图网址放在浏览器中,那么您也可以看到路线路径,但在您的示例中缺少它,并且在我的最后它显示了错误的路径。请检查。再次感谢。
    • @user2940248 已更新;
    • 无论哪种情况,我都建议您对路径进行 URL 编码,以确保发出的 HTTP 请求是有效的,因此始终运行良好。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-16
    • 2011-01-23
    • 1970-01-01
    • 2012-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多