From 3b9a8fefc5a03f321b83b1afa0676d3b5f7e6c3c Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Mon, 11 Mar 2013 19:20:03 +0000 Subject: [PATCH] Contorno de erro do Mapserver na versão 6.0.3 ao criar imagens via save() --- classesphp/mapa_googlemaps.php | 37 ++++++++++++++++++++++++++++++++++--- classesphp/mapa_openlayers.php | 21 +++++++++++++++++---- 2 files changed, 51 insertions(+), 7 deletions(-) diff --git a/classesphp/mapa_googlemaps.php b/classesphp/mapa_googlemaps.php index 8000d4a..81f1956 100644 --- a/classesphp/mapa_googlemaps.php +++ b/classesphp/mapa_googlemaps.php @@ -76,6 +76,24 @@ if(@$_SESSION["fingerprint"]){ $f = explode(",",$_SESSION["fingerprint"]); if (md5('I3GEOSEC' . $_SERVER['HTTP_USER_AGENT'] . session_id()) != $f[0] && !in_array($_GET["telaR"],$f) ){ ilegal(); + } else{ + if($img->imagepath == "") + {echo "Erro IMAGEPATH vazio";exit;} + if(ms_GetVersionInt() != 60003 ){ + header('Content-Type: image/png'); + $img->saveImage(); + } + else{ + $nomer = ($img->imagepath)."temp".nomeRand().".png"; + $img->saveImage($nomer); + $img = imagecreatefrompng($nomer); + imagealphablending($img, false); + imagesavealpha($img, true); + ob_clean(); + echo header("Content-type: image/png \n\n"); + imagepng($img); + imagedestroy($img); + } } } else{ @@ -296,11 +314,24 @@ else{ header('Last-Modified: '.gmdate('D, d M Y H:i:s', filemtime($nomer)).' GMT', true, 200); fpassthru(fopen($nomer, 'rb')); } - else{ + else{ if($img->imagepath == "") {echo "Erro IMAGEPATH vazio";exit;} - header('Content-Type: image/png'); - $img->saveImage(); + if(ms_GetVersionInt() != 60003 ){ + header('Content-Type: image/png'); + $img->saveImage(); + } + else{ + $nomer = ($img->imagepath)."temp".nomeRand().".png"; + $img->saveImage($nomer); + $img = imagecreatefrompng($nomer); + imagealphablending($img, false); + imagesavealpha($img, true); + ob_clean(); + echo header("Content-type: image/png \n\n"); + imagepng($img); + imagedestroy($img); + } } exit; } diff --git a/classesphp/mapa_openlayers.php b/classesphp/mapa_openlayers.php index ec1753e..71a0934 100644 --- a/classesphp/mapa_openlayers.php +++ b/classesphp/mapa_openlayers.php @@ -288,10 +288,23 @@ else{ fpassthru(fopen($nomer, 'rb')); } else{ - if($img->imagepath == "") - {echo "Erro IMAGEPATH vazio";exit;} - header('Content-Type: image/png'); - $img->saveImage(); + if($img->imagepath == "") + {echo "Erro IMAGEPATH vazio";exit;} + if(ms_GetVersionInt() != 60003 ){ + header('Content-Type: image/png'); + $img->saveImage(); + } + else{ + $nomer = ($img->imagepath)."temp".nomeRand().".png"; + $img->saveImage($nomer); + $img = imagecreatefrompng($nomer); + imagealphablending($img, false); + imagesavealpha($img, true); + ob_clean(); + echo header("Content-type: image/png \n\n"); + imagepng($img); + imagedestroy($img); + } } } function salvaCacheImagem($cachedir,$map,$tms){ -- libgit2 0.21.2