Por Alexander Toporkov, desarrollador web de Email Soldiers
El formato gráfico SVG (Scalable Vector Graphics) es el formato de gráficos vectoriales más extendido en la actualidad, que se compara favorablemente con el raster, en primer lugar, la capacidad de escalar y transformar imágenes. Pero a veces es necesario convertir SVG a PNG (Gráficos de red portátiles), un formato de gráficos de mapa de bits.
Los requisitos de imagen actuales son elevados. Deberían verse bonitas en todas partes, desde el teléfono hasta la pantalla gigante. No puede prescindir de los gráficos vectoriales: los logotipos, diagramas e ilustraciones se hacen mejor en vectores; esto se vuelve obvio si compara diferentes formatos de la misma imagen al escalar:
¿Por qué convertir SVG a PNG?
El formato SVG es antiguo según los estándares de la tecnología de la información. Han pasado diez años desde el lanzamiento de la primera versión en 2001 hasta la versión actual del 16 de agosto de 2011. SVG es compatible con todos los navegadores, y parece que todo Internet ya debería cambiar a gráficos vectoriales. Pero todavía existen muchas restricciones sobre el uso de SVG.
Por ejemplo, tal:
- Los archivos SVG no aparecen en la mayoría de los clientes de correo electrónico; existe una buena investigación sobre este tema.
- 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 .