Par Alexander Toporkov, développeur Web chez Email Soldiers
Le format graphique SVG (Scalable Vector Graphics) est le format graphique vectoriel le plus répandu aujourd'hui, qui se compare favorablement avec le raster, principalement la capacité à mettre à l'échelle et à transformer les images. Mais parfois, vous devez convertir SVG en PNG (Portable Network Graphics) - un format graphique bitmap.
Les exigences actuelles en matiĂšre d'imagerie sont Ă©levĂ©es. Ils devraient ĂȘtre jolis partout, du tĂ©lĂ©phone au grand Ă©cran. Les graphiques vectoriels sont indispensables: les logos, diagrammes, illustrations sont mieux rĂ©alisĂ©s en vecteur - cela devient Ă©vident si vous comparez diffĂ©rents formats de la mĂȘme image lors de la mise Ă l'Ă©chelle:
Pourquoi convertir SVG en PNG
Le format SVG est ancien par rapport aux normes de la technologie de l'information. Dix ans se sont écoulés depuis la sortie de la premiÚre version en 2001 jusqu'à la version actuelle du 16 août 2011. SVG est pris en charge par tous les navigateurs, et il semblerait que tout Internet devrait déjà passer aux graphiques vectoriels. Mais il existe encore de nombreuses restrictions sur l'utilisation de SVG.
Par exemple, tel:
- Les fichiers SVG n'apparaissent pas dans la plupart des clients de messagerie - il existe de bonnes recherches sur ce sujet.
- RSS, YML (Yandex Market Language) Google Merchant SVG- â .
- SVG OpenGraph ( HTML- , ). , : Facebook SVG.
, â , . , .
â , , . , , , , , .
( ) SVG-: . SVG PNG â YML-, Mindbox , .
SVG PNG â . SVG: , â . .
: PHP ImageMagick
ImageMagick â , Photoshop. PHP. PHP- Imagick, PHP.
SVG PNG :
<?php
$imagick = new Imagick();
$fp = fopen(âimage.svgâ, ârbâ);
$imagick->readImageFile($fp);
$imagick->setImageFormat("png8«); //png8 â png c 8-
$imagick->writeImage(âimage.pngâ);
fclose($fp);
. , SVG ImageMagick , libmagickcore-6.q16-3-extra. , Debian Linux, .
:
sudo apt-get install libmagickcore-6.q16-3-extra
SVG. . , : , . , «».
, . ? , , $imagick->readImageFile, 5%. .
, , . , , .
ImageMagick - . / . - , ImageMagic .
: Node.js
PHP , , â JavaScript. Node.js.
SVG : PhantomJS, â Headless Chrome. , , Chrome-, . , , . , SVG , ( ). .
: , SVG PNG . , , â node.js.
, - . .
â . . .
â .
:
â , . PHP-. . .
ImageMagick.
<?php
$cline = âconvert image.svg image.pngâ;
shell_exec($cline);
?>
ImageMagick , . , - ImageMagick, .
SVG. Inkscape. , , :
sudo apt-get install inkscape
:
<?php
$cline = inkscape -z --export-png=image.png image.svgâ;
shell_exec($cline);
?>
: SVG .
<?php
$cline = inkscape -z --export-png=image.png -w 1000 image.svgâ;
shell_exec($cline);
?>
: Inkscape , ImageMagick, SVG- PNG. . SVG- YML-: .
Inkspace ImageMagic .
, : Google, Facebook, Yandex. IT- SVG? , , .
, , 10 .