Subversion Repositories eFlore/Projets.eflore-projets

Compare Revisions

Ignore whitespace Rev 806 → Rev 807

/trunk/services/modules/0.1/bdtxa/cartes/TaxonsCartes.php
423,7 → 423,7
throw new Exception($message, $code);
}
} else if ($this->convertisseur == 'rsvg') {
$png = $this->convertirEnPNGAvecRsvg($svg);
$png = Commun::convertirEnPNGAvecRsvg($this->getIdFichier(), $this->config['cache_stockageChemin'], $svg);
} else {
$message = "Le convertisseur indiqué '{$this->convertisseur}' ne fait pas parti de la liste ".
"des convertisseurs disponibles : imagick, rsvg.";
450,27 → 450,6
return $png;
}
 
private function convertirEnPNGAvecRsvg($svg) {
$idFichier = $this->getIdFichier();
$fichierPng = $this->config['cache_stockageChemin'].$idFichier.'.png';
$fichierSvg = $this->config['cache_stockageChemin'].$idFichier.'.svg';
file_put_contents($fichierSvg, $svg);
$commande = "rsvg-convert $fichierSvg -d 75 -p 75 -o $fichierPng";
$rsvg = exec($commande);
 
$this->indexerFichierPng($fichierPng);
$png = file_get_contents($fichierPng);
return $png;
}
 
private function indexerFichierPng($fichierPng) {
$img = imagecreatefrompng($fichierPng);
imagetruecolortopalette($img, false, 32);
$blanc = imagecolorallocate($img, 255, 255, 255);
imagefill($img, 0, 0, $blanc);
imagepng($img, $fichierPng, 9, PNG_ALL_FILTERS);
}
 
private function getIdFichier() {
$id = '';
foreach ($this->taxonsDemandes as $reftax => $ids) {