svg.php
SPIP, Système de publication pour l'internet
Copyright © avec tendresse depuis 2001 Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James
Ce programme est un logiciel libre distribué sous licence GNU/GPL.
Table of Contents
Constants
- IMAGETYPE_SVG = 19
- IMG_SVG = 128
Functions
- svg_charger() : false|string
- Charger une image SVG a partir d'une source qui peut etre - l'image svg deja chargee - une data-url - un nom de fichier
- svg_lire_balise_svg() : array<string|int, mixed>|bool
- Lire la balise <svg...> qui demarre le fichier et la parser pour renvoyer un tableau de ses attributs
- svg_lire_attributs() : array<string|int, mixed>|bool
- Attributs de la balise SVG
- svg_nettoyer() : string
- Nettoyer le code d'une balise <svg> pour en retirer le marqueur utf8-bom, l'entête xml et les commentaires
- svg_dimension_to_pixels() : bool|float|int
- Convertir l'attribut widht/height d'un SVG en pixels (approximatif eventuellement, du moment qu'on respecte le ratio)
- svg_change_balise_svg() : string
- Modifier la balise SVG en entete du source
- svg_insert_shapes() : string
- svg_clip_in_box() : string
- Clipper le SVG dans une box
- svg_redimensionner() : bool|string
- Redimensionner le SVG via le width/height de la balise
- svg_couleur_to_hexa() : string
- Transformer une couleur extraite du SVG en hexa
- svg_couleur_to_rgb() : array<string|int, mixed>
- Transformer une couleur extraite du SVG en rgb
- svg_getimagesize_from_attr() : array<string|int, mixed>
- Calculer les dimensions width/heigt/viewBox du SVG d'apres les attributs de la balise <svg>
- svg_force_viewBox_px() : string
- Forcer la viewBox du SVG, en px cree l'attribut viewBox si il n'y en a pas convertit les unites en px si besoin
- svg_extract_couleurs() : array<string|int, mixed>|mixed
- Extract all colors in SVG
- svg_recadrer() : string
- Redimensionner le SVG via le width/height de la balise
- svg_ajouter_background() : string
- Ajouter un background au SVG : un rect pleine taille avec la bonne couleur
- svg_ajouter_voile() : bool|string
- Ajouter un voile au SVG : un rect pleine taille avec la bonne couleur/opacite, en premier plan
- svg_transformer() : string
- Ajouter un background au SVG : un rect pleine taille avec la bonne couleur
- svg_apply_filter() : bool|string
- Ajouter + appliquer un filtre a un svg
- svg_filter_blur() : string
- Filtre blur en utilisant <filter>
- svg_filter_grayscale() : bool|string
- Filtre grayscale en utilisant <filter>
- svg_filter_sepia() : bool|string
- Filtre sepia en utilisant <filter>
- svg_flip() : string
- Ajouter un background au SVG : un rect pleine taille avec la bonne couleur
- svg_rotate() : string
- svg_filtrer_couleurs() : bool|mixed|string
- Filtrer les couleurs d'un SVG avec une callback (peut etre lent si beaucoup de couleurs)
Constants
IMAGETYPE_SVG
public
mixed
IMAGETYPE_SVG
= 19
IMG_SVG
public
mixed
IMG_SVG
= 128
Functions
svg_charger()
Charger une image SVG a partir d'une source qui peut etre - l'image svg deja chargee - une data-url - un nom de fichier
svg_charger(string $fichier[, null|int $maxlen = null ]) : false|string
Parameters
- $fichier : string
- $maxlen : null|int = null
-
pour limiter la taille chargee en memoire si on lit depuis le disque et qu'on a besoin que du debut du fichier
Return values
false|string —false si on a pas pu charger l'image
svg_lire_balise_svg()
Lire la balise <svg...> qui demarre le fichier et la parser pour renvoyer un tableau de ses attributs
svg_lire_balise_svg(string $fichier) : array<string|int, mixed>|bool
Parameters
- $fichier : string
Return values
array<string|int, mixed>|boolsvg_lire_attributs()
Attributs de la balise SVG
svg_lire_attributs(string $img) : array<string|int, mixed>|bool
Parameters
- $img : string
Return values
array<string|int, mixed>|boolsvg_nettoyer()
Nettoyer le code d'une balise <svg> pour en retirer le marqueur utf8-bom, l'entête xml et les commentaires
svg_nettoyer(mixed $svg) : string
Parameters
- $svg : mixed
Return values
stringsvg_dimension_to_pixels()
Convertir l'attribut widht/height d'un SVG en pixels (approximatif eventuellement, du moment qu'on respecte le ratio)
svg_dimension_to_pixels(string $dimension[, mixed $precision = 2 ]) : bool|float|int
Parameters
- $dimension : string
- $precision : mixed = 2
Return values
bool|float|intsvg_change_balise_svg()
Modifier la balise SVG en entete du source
svg_change_balise_svg(string $svg, string $old_balise_svg, array<string|int, mixed> $attributs) : string
Parameters
- $svg : string
- $old_balise_svg : string
- $attributs : array<string|int, mixed>
Return values
stringsvg_insert_shapes()
svg_insert_shapes(string $svg, string $shapes[, bool|string $start = true ]) : string
Parameters
- $svg : string
- $shapes : string
- $start : bool|string = true
-
inserer au debut (true) ou a la fin (false)
Return values
stringsvg_clip_in_box()
Clipper le SVG dans une box
svg_clip_in_box(string $svg, int $x, int $y, int $width, int $height) : string
Parameters
- $svg : string
- $x : int
- $y : int
- $width : int
- $height : int
Return values
stringsvg_redimensionner()
Redimensionner le SVG via le width/height de la balise
svg_redimensionner(string $img, string $new_width, string $new_height) : bool|string
Parameters
- $img : string
- $new_width : string
- $new_height : string
Return values
bool|stringsvg_couleur_to_hexa()
Transformer une couleur extraite du SVG en hexa
svg_couleur_to_hexa(string $couleur) : string
Parameters
- $couleur : string
Return values
stringsvg_couleur_to_rgb()
Transformer une couleur extraite du SVG en rgb
svg_couleur_to_rgb(string $couleur) : array<string|int, mixed>
Parameters
- $couleur : string
Return values
array<string|int, mixed>svg_getimagesize_from_attr()
Calculer les dimensions width/heigt/viewBox du SVG d'apres les attributs de la balise <svg>
svg_getimagesize_from_attr(array<string|int, mixed> $attributs) : array<string|int, mixed>
Parameters
- $attributs : array<string|int, mixed>
Return values
array<string|int, mixed>svg_force_viewBox_px()
Forcer la viewBox du SVG, en px cree l'attribut viewBox si il n'y en a pas convertit les unites en px si besoin
svg_force_viewBox_px(string $img[, bool $force_width_and_height = false ]) : string
Les manipulations d'image par les filtres images se font en px, on a donc besoin d'une viewBox en px Certains svg produits avec des unites exotiques subiront donc peut etre des deformations...
Parameters
- $img : string
- $force_width_and_height : bool = false
Return values
stringsvg_extract_couleurs()
Extract all colors in SVG
svg_extract_couleurs(string $img) : array<string|int, mixed>|mixed
Parameters
- $img : string
Return values
array<string|int, mixed>|mixedsvg_recadrer()
Redimensionner le SVG via le width/height de la balise
svg_recadrer(string $img, string $new_width, string $new_height, mixed $offset_width, mixed $offset_height[, mixed $background_color = '' ]) : string
Parameters
- $img : string
- $new_width : string
- $new_height : string
- $offset_width : mixed
- $offset_height : mixed
- $background_color : mixed = ''
Return values
stringsvg_ajouter_background()
Ajouter un background au SVG : un rect pleine taille avec la bonne couleur
svg_ajouter_background(string $img, string $background_color) : string
Parameters
- $img : string
- $background_color : string
Return values
stringsvg_ajouter_voile()
Ajouter un voile au SVG : un rect pleine taille avec la bonne couleur/opacite, en premier plan
svg_ajouter_voile(string $img, string $background_color, mixed $opacity) : bool|string
Parameters
- $img : string
- $background_color : string
- $opacity : mixed
Return values
bool|stringsvg_transformer()
Ajouter un background au SVG : un rect pleine taille avec la bonne couleur
svg_transformer(string $img, array<string|int, mixed> $attributs) : string
Parameters
- $img : string
- $attributs : array<string|int, mixed>
Return values
stringsvg_apply_filter()
Ajouter + appliquer un filtre a un svg
svg_apply_filter(string $img, string $filter_def) : bool|string
Parameters
- $img : string
- $filter_def : string
-
definition du filtre (contenu de
...
Return values
bool|stringsvg_filter_blur()
Filtre blur en utilisant <filter>
svg_filter_blur(string $img, int $blur_width) : string
Parameters
- $img : string
- $blur_width : int
Return values
stringsvg_filter_grayscale()
Filtre grayscale en utilisant <filter>
svg_filter_grayscale(string $img, float $intensity) : bool|string
Parameters
- $img : string
- $intensity : float
Return values
bool|stringsvg_filter_sepia()
Filtre sepia en utilisant <filter>
svg_filter_sepia(string $img, float $intensity) : bool|string
FIXME: $intensity unused ?
Parameters
- $img : string
- $intensity : float
Return values
bool|stringsvg_flip()
Ajouter un background au SVG : un rect pleine taille avec la bonne couleur
svg_flip(string $img, mixed $HorV) : string
Parameters
- $img : string
- $HorV : mixed
Return values
stringsvg_rotate()
svg_rotate(string $img, int $angle, float $center_x, float $center_y) : string
Parameters
- $img : string
- $angle : int
-
angle en degres
- $center_x : float
-
centre X de la rotation entre 0 et 1, relatif a la pleine largeur (0=bord gauche, 1=bord droit)
- $center_y : float
-
centre Y de la rotation entre 0 et 1, relatif a la pleine hauteur (0=bord top, 1=bord bottom)
Return values
stringsvg_filtrer_couleurs()
Filtrer les couleurs d'un SVG avec une callback (peut etre lent si beaucoup de couleurs)
svg_filtrer_couleurs(string $img, string $callback_filter) : bool|mixed|string
Parameters
- $img : string
- $callback_filter : string