{"id":332,"date":"2019-04-09T14:01:45","date_gmt":"2019-04-09T19:01:45","guid":{"rendered":"https:\/\/www.tesseractspace.com\/blog\/?p=332"},"modified":"2019-04-13T15:58:24","modified_gmt":"2019-04-13T20:58:24","slug":"webp-una-alternativa-a-jpg-y-png","status":"publish","type":"post","link":"https:\/\/www.tesseractspace.com\/blog\/webp-una-alternativa-a-jpg-y-png\/","title":{"rendered":"WebP: una alternativa a JPG y PNG"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">Los formatos JPEG y PNG son muy populares para el dise\u00f1o de p\u00e1ginas web, pero fueron creados para una web muy diferente a la que usamos hoy. Nuevos formatos de im\u00e1genes como WebP ofrecen mejor calidad con archivos m\u00e1s peque\u00f1os para sitios web que cargan m\u00e1s r\u00e1pido.<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/jpeg.org\/\">El formato JPEG<\/a> fue creado en 1992, y actualizado a la versi\u00f3n que conocemos hoy en 1994. <a href=\"http:\/\/www.libpng.org\/pub\/png\/\">El formato PNG<\/a>, que agrega un canal de transparencia, fue creado en 1996 y liberado en 1997. Ambos formatos fueron creados para hacer m\u00e1s sencilla la publicaci\u00f3n de im\u00e1genes con calidad fotogr\u00e1fica en la web, cuando la gente a\u00fan se conectaba utilizando un <em>modem <\/em>y una l\u00ednea telef\u00f3nica. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tanto JPG como PNG ofrec\u00edan una relaci\u00f3n calidad-tama\u00f1o mucho mejor que otros formatos de esa misma \u00e9poca, como BMP o TIF, y esto ayud\u00f3 mucho a su r\u00e1pida adopci\u00f3n. Sin embargo, 25 a\u00f1os despu\u00e9s el uso de la web ha cambiado, y <strong>los usuarios ahora tienen pantallas de super alta resoluci\u00f3n<\/strong> (desde <em>Retina Display<\/em> hasta 4K) en sus PCs, smartphones y smartTVs,<strong> aunque el ancho de banda no ha crecido en la misma proporci\u00f3n ni al mismo ritmo<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Sabemos que <a href=\"https:\/\/www.tesseractspace.com\/blog\/tiempo-de-carga-en-la-experiencia-del-usuario\/\">el tiempo de carga de un sitio afecta su experiencia de usuario y reduce la tasa de conversiones<\/a> en \u00e9l. Al mismo tiempo, sitios con im\u00e1genes de mala calidad o de baja resoluci\u00f3n tambi\u00e9n son percibidos de manera negativa por sus usuarios. <strong>\u00bfC\u00f3mo crear sitios con im\u00e1genes de buena calidad sin aumentar el tiempo de carga?<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">WebP, un nuevo formato para im\u00e1genes digitales<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">En el a\u00f1o 2010, la empresa <a href=\"http:\/\/www.on2.com\/\"><strong>On2 Technologies<\/strong><\/a><strong> <\/strong>estaba trabajando en un nuevo <em>codec <\/em>de video llamado <a href=\"https:\/\/www.webmproject.org\/about\/\"><strong>WebM <\/strong>(<\/a><em><a href=\"https:\/\/www.webmproject.org\/about\/\">Web Multimedia<\/a><\/em><a href=\"https:\/\/www.webmproject.org\/about\/\">)<\/a> como una opci\u00f3n m\u00e1s abierta para la distribuci\u00f3n de video en la web, en contraste con otros <em>codecs <\/em>de video que tienen restricciones legales por uso de patentes para migrarlas a m\u00faltiples plataformas.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignleft\"><a href=\"https:\/\/developers.google.com\/speed\/webp\/\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/Webp-logo-wordmark.svg-1.png?resize=150%2C150&#038;ssl=1\" alt=\"\" class=\"wp-image-335\" srcset=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/Webp-logo-wordmark.svg-1.png?resize=150%2C150&amp;ssl=1 150w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/Webp-logo-wordmark.svg-1.png?zoom=2&amp;resize=150%2C150&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/Webp-logo-wordmark.svg-1.png?zoom=3&amp;resize=150%2C150&amp;ssl=1 450w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/a><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Uno de los trabajos derivados del grupo de trabajo de <strong>WebM <\/strong>fue <strong><a href=\"https:\/\/developers.google.com\/speed\/webp\/\">WebP<\/a><\/strong>, anunciado por primera vez el 30 de septiembre de 2010 como un nuevo est\u00e1ndar abierto para gr\u00e1ficos de color (<em>true color<\/em>) con compresi\u00f3n para la web, capaz de producir archivos m\u00e1s peque\u00f1os con una calidad de imagen similar al esquema JPEG. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En 2010 <strong>Google <\/strong>adquiri\u00f3 a <strong>On2 Technologies<\/strong> y a finales de 2011 anunci\u00f3 el soporte de <strong>WebP <\/strong>para im\u00e1genes animadas (como hace el formato GIF), transparencia (<em>canal alfa<\/em>), perfil <strong>ICC<\/strong>, soporta para metadatos en est\u00e1ndar <strong>XMP <\/strong>y soporte para creaci\u00f3n de im\u00e1genes de mosaico (<em>teselado<\/em>) de hasta 16384\u00d716384 unidades.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Caracter\u00edsticas y ventajas de WebP<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">De acuerdo a <strong>Google<\/strong>, <a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/webp_lossless_alpha_study#results\">las im\u00e1genes WebP <\/a><em><a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/webp_lossless_alpha_study#results\">lossless <\/a><\/em><a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/webp_lossless_alpha_study#results\">son 26% m\u00e1s peque\u00f1as en tama\u00f1os comparadas con su equivalente en PNGs<\/a>. Las im\u00e1genes WebP <em>lossy <\/em>son entre <a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/webp_study\">25 y 34% m\u00e1s peque\u00f1as que im\u00e1genes JPEG<\/a> con la misma calidad.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"752\" src=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/5.png?fit=640%2C470&amp;ssl=1\" alt=\"\" class=\"wp-image-333\" srcset=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/5.png?w=1024&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/5.png?resize=300%2C220&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/5.png?resize=768%2C564&amp;ssl=1 768w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption>Imagen en formato PNG: 1.15 Mb. Misma imagen en formato WebP: 75 Kb. <br><strong>Cr\u00e9dito: <\/strong><a href=\"http:\/\/www.lucnix.be\/\"><strong>Luc Viatour<\/strong><\/a><\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Las im\u00e1genes WebP <em>lossless<\/em> tienen soporte para transparencia (tambi\u00e9n conocido como <em>canal alfa<\/em>) al costo de solo <a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/webp_lossless_alpha_study#results\">22% bytes adicionales<\/a>. Para los casos en que la compresi\u00f3n RGB es aceptable, las im\u00e1genes WebP <em>lossy <\/em> tambi\u00e9n soportan transparencia, proveyendo archivos hasta tres veces m\u00e1s peque\u00f1os comparados con im\u00e1genes PNG de la misma calidad.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"184\" src=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/comparacion-webp-con-transparencia.png?resize=640%2C184&#038;ssl=1\" alt=\"\" class=\"wp-image-338\" srcset=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/comparacion-webp-con-transparencia.png?w=782&amp;ssl=1 782w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/comparacion-webp-con-transparencia.png?resize=300%2C86&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/comparacion-webp-con-transparencia.png?resize=768%2C221&amp;ssl=1 768w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption>Comparativa de im\u00e1genes PNG con WebP <em>lossless <\/em>y <em>lossy <\/em>con transparencia. <br>Fuente:<a href=\"https:\/\/developers.google.com\/speed\/webp\/gallery\">Galer\u00eda WebP de Google<\/a><\/figcaption><\/figure><\/div>\n\n\n\n<h4 class=\"wp-block-heading\">Soporte de WebP<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">A pesar de que WebP ya tiene casi 10 a\u00f1os de publicado, no hab\u00eda sido una alternativa viable para sustituir archivos JPG o PNG debido a la falta de <a href=\"https:\/\/developers.google.com\/speed\/webp\/faq#which_web_browsers_natively_support_webp\">soporte en los navegadores web<\/a>, aunque eso est\u00e1 cambiando r\u00e1pidamente. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">WebP es soportado actualmente por <strong>Google Chrome <\/strong>para desktop y mobile, <strong>Firefox<\/strong>, <strong>Opera <\/strong>y <strong>Edge<\/strong>; solo <strong>Internet Explorer <\/strong>y <strong>Safari <\/strong>no ofrecen soporte nativo para WebP todav\u00eda.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una opci\u00f3n para dar soporte a navegadores que no soportan WebP nativamente, es utilizar la etiqueta HTML <strong>picture<\/strong>, con un respaldo de la imagen en JPG o PNG:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;picture><br>   &lt;source srcset=\"img\/tesseractspace.webp\" type=\"image\/webp\"><br>   &lt;source srcset=\"img\/tesseractspace-old.jpg\" type=\"image\/jpeg\"><br>   &lt;img src=\"img\/tesseractspace-old.jpg\" alt=\"Texto Alt de la imagen\"> <br>&lt;\/picture> <\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Los navegadores m\u00e1s antiguos que no soporten la etiqueta <strong>picture<\/strong> usar\u00e1n la referencia de la etiqueta <strong>img<\/strong>. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Muchas aplicaciones de dise\u00f1o gr\u00e1fico ya soportan el formato <strong>WebP <\/strong>tanto para edici\u00f3n como para exportaci\u00f3n. <strong>Sketch <\/strong>tiene soporte nativo para Web; <a href=\"https:\/\/github.com\/fnordware\/AdobeWebM#download\">en <\/a><strong><a href=\"https:\/\/github.com\/fnordware\/AdobeWebM#download\">Adobe Photoshop <\/a><\/strong><a href=\"https:\/\/github.com\/fnordware\/AdobeWebM#download\">a\u00fan es necesario instalar un <\/a><em><a href=\"https:\/\/github.com\/fnordware\/AdobeWebM#download\">plug-in<\/a> <\/em>para esta funcionalidad.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"430\" height=\"222\" src=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/01-converting-images-to-webp-chapter.png?resize=430%2C222&#038;ssl=1\" alt=\"\" class=\"wp-image-336\" srcset=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/01-converting-images-to-webp-chapter.png?w=430&amp;ssl=1 430w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/01-converting-images-to-webp-chapter.png?resize=300%2C155&amp;ssl=1 300w\" sizes=\"auto, (max-width: 430px) 100vw, 430px\" \/><figcaption>El panel para exportar recursos en Sketch, configurado para WebP. Cr\u00e9dito: <a href=\"https:\/\/www.smashingmagazine.com\/author\/jeremywagner\/\">Jeremy Wagner<\/a><\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Herramientas para conversi\u00f3n a WebP<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/developers.google.com\/speed\/webp\/faq#why_did_google_release_webp_as_open_source\">WebP es un formato para im\u00e1genes digitales de c\u00f3digo abierto<\/a>, lo que facilita la creaci\u00f3n de herramientas para crear im\u00e1genes en este formato. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La principal herramienta para conversi\u00f3n de im\u00e1genes JPG o PNG a WebP o viceversa es la herramienta de l\u00ednea de comando <strong>cwebp<\/strong>, disponible sin costo para Windows, Mac o Linux <a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/precompiled\">precompiladas<\/a>, <a href=\"http:\/\/www.webmproject.org\/code\/#webp-repositories\">usando Git<\/a> o un gestor de paquetes como <strong>Chocolatey <\/strong>(<em>Windows<\/em>) o <strong>HomeBrew <\/strong>(<em>Mac<\/em>)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por ejemplo, para convertir todas las im\u00e1genes en una carpeta a WebP, se hace con este comando:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Para Windows:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\"> <code>&gt; for \/R . %I in (*.jpg) do ( cwebp.exe %I -o %~fnI.webp )<\/code><br><\/pre>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Para Mac \/ Linux:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">$ for F in *.jpg; do cwebp $F -o <code>basename ${F%.jpg}<\/code>.webp; done<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Tambi\u00e9n es posible hacer conversi\u00f3n de im\u00e1genes por lotes usando <strong>node.js<\/strong>, instalando antes los m\u00f3dulos <em>imagemin <\/em>y <em>imagemin-webp:<\/em><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>npm install imagemin imagemin-webp<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">El <em>script <\/em>en <strong>node.js<\/strong> ser\u00eda algo as\u00ed:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">const imagemin = require(\"imagemin\");<br> const webp = require(\"imagemin-webp\");<br> imagemin([\"originales\/*.png\"], \"imagenes\", {<br>   use: [<br>     webp({<br>       quality: 75<br>     })<br>   ]<br> }).then(function() {<br>   console.log(\"Todas la im\u00e1genes fueron convertidas\");<br> });<br><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Para <strong>Safari <\/strong>en Mac o en iOS, o para los usuarios de <strong>Internet Explorer<\/strong>, se pueden utilizar servicios en la Nube como <strong><a href=\"https:\/\/cloudinary.com\/\">Cloudinary<\/a><\/strong>, que ofrece <a href=\"https:\/\/cloudinary.com\/documentation\/image_transformations\">conversi\u00f3n de im\u00e1genes con un <\/a><strong><a href=\"https:\/\/cloudinary.com\/documentation\/image_transformations\">API REST <\/a><\/strong><a href=\"https:\/\/cloudinary.com\/documentation\/image_transformations\">que autom\u00e1ticamente ofrece una imagen en formato WebP<\/a> si el navegador del usuario la soporta, o la cambia a JPG\/PNG si el navegador no la soporta, conservando la extensi\u00f3n de los archivos.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>URI para WebP en Cloudinary:<\/strong><\/li><\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">https:\/\/res.cloudinary.com\/drp9iwjqz\/image\/upload\/f_auto,q_auto\/v1508291830\/jeremywagner.me\/using-webp-images\/tacos-2x.jpg<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Referencias<\/h3>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"alignleft\"><a href=\"https:\/\/www.smashingmagazine.com\/ebooks\/the-webp-manual\/\"><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/webp-manual-ipad-small-opt.png?resize=150%2C150&#038;ssl=1\" alt=\"\" class=\"wp-image-337\" srcset=\"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/webp-manual-ipad-small-opt.png?resize=150%2C150&amp;ssl=1 150w, https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/webp-manual-ipad-small-opt.png?zoom=2&amp;resize=150%2C150&amp;ssl=1 300w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/a><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Adem\u00e1s de <a href=\"https:\/\/developers.google.com\/speed\/webp\/docs\/using\">la documentaci\u00f3n oficial en el sitio de WebP<\/a>, el libro <a href=\"https:\/\/www.smashingmagazine.com\/ebooks\/the-webp-manual\/\">\u00abThe WebP Manual\u00bb de <\/a><strong><a href=\"https:\/\/www.smashingmagazine.com\/ebooks\/the-webp-manual\/\">Jeremy Wagner<\/a><\/strong> ofrece muchas t\u00e9cnicas para crear, convertir e implementar el formato WebP en sitios web y <em>apps <\/em>m\u00f3viles.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>El formato WebP es una alternativa a JPG y PNG para im\u00e1genes digitales con la misma calidad y hasta 30% m\u00e1s ligeras<\/p>\n","protected":false},"author":1,"featured_media":339,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[70],"tags":[111,110,108,112,106,4],"class_list":["post-332","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tecnologia","tag-formatos","tag-fotografia","tag-imagenes","tag-navegadores-web","tag-optimizacion","tag-web","entry"],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.tesseractspace.com\/blog\/wp-content\/uploads\/2019\/04\/guardar-webp-como-ong-jpeg.jpg?fit=1010%2C537&ssl=1","jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/posts\/332","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/comments?post=332"}],"version-history":[{"count":5,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/posts\/332\/revisions"}],"predecessor-version":[{"id":428,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/posts\/332\/revisions\/428"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/media\/339"}],"wp:attachment":[{"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/media?parent=332"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/categories?post=332"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tesseractspace.com\/blog\/wp-json\/wp\/v2\/tags?post=332"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}