Changeset 120905 in spip-zone for _plugins_/fonctions_images/trunk/filtres/images_complements.php
- Timestamp:
- Jan 31, 2020, 8:29:39 PM (12 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/fonctions_images/trunk/filtres/images_complements.php
r112348 r120905 1195 1195 return _image_ecrire_tag($image,array('src'=>$dest)); 1196 1196 } 1197 1198 /** 1199 * Tramer une image avec la fonction orderedPosterizeImage d'Imagick 1200 * Inspiré de https://github.com/lowtechmag/solar/wiki/Solar-Web-Design#dithered-images 1201 * 1202 * @param string $im 1203 * Chemin de l'image ou balise html `<img src=... />` 1204 * @param int $levels 1205 * Le nombre de niveaux de couleurs à utiliser 1206 * @param string $thmap 1207 * Le nom de la carte de seuils de dither cf http://www.imagemagick.org/Usage/quantize/tmaps_list.txt 1208 * @param boolean $color 1209 * Générer une image en couleurs 1210 * @return string balise image 1211 */ 1212 function image_tramer($img, $levels = 6, $thmap = 'o8x8', $color = false){ 1213 $cache = _image_valeurs_trans($img, "tramer-".json_encode(array($thmap, $levels, $color)), 'png'); 1214 if (!$cache) { 1215 return false; 1216 } 1217 // facile ! 1218 if ($cache['format_source'] === 'svg'){ 1219 return $img; 1220 } 1221 1222 $fichier = $cache["fichier"]; 1223 $dest = $cache["fichier_dest"]; 1224 $creer = $cache["creer"]; 1225 1226 if ($creer) { 1227 if (method_exists('Imagick', 'orderedPosterizeImage')) { 1228 $imagick = new Imagick(); 1229 $imagick->readImage($fichier); 1230 if (!$color) { 1231 $imagick->setImageType(Imagick::IMGTYPE_GRAYSCALE); 1232 } 1233 $imagick->orderedPosterizeImage($thmap.','.$levels); 1234 $imagick->setImageFormat('png'); 1235 $imagick->writeImage($dest); 1236 } 1237 } 1238 1239 return _image_ecrire_tag($cache, array('src' => $dest)); 1240 }
Note: See TracChangeset
for help on using the changeset viewer.