@jjlmoya/utils-converters 1.24.0 → 1.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/src/category/i18n/de.ts +1 -1
- package/src/category/i18n/en.ts +1 -1
- package/src/category/i18n/fr.ts +1 -1
- package/src/category/i18n/id.ts +1 -1
- package/src/category/i18n/it.ts +1 -1
- package/src/category/i18n/nl.ts +1 -1
- package/src/category/i18n/pl.ts +1 -1
- package/src/category/i18n/pt.ts +1 -1
- package/src/category/i18n/sv.ts +1 -1
- package/src/entries.ts +6 -0
- package/src/tests/bibliography_wellformed_export.test.ts +46 -0
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/seo_wellformed_export.test.ts +65 -0
- package/src/tests/tool_validation.test.ts +15 -15
- package/src/tool/avifAJpg/i18n/en.ts +164 -164
- package/src/tool/avifAJpg/i18n/es.ts +164 -164
- package/src/tool/avifAJpg/i18n/fr.ts +164 -164
- package/src/tool/avifAJpg/i18n/ja.ts +166 -166
- package/src/tool/avifAJpg/i18n/ko.ts +166 -166
- package/src/tool/avifAJpg/i18n/zh.ts +166 -166
- package/src/tool/avifAJpg/seo.astro +15 -15
- package/src/tool/avifAPng/i18n/en.ts +164 -164
- package/src/tool/avifAPng/i18n/es.ts +164 -164
- package/src/tool/avifAPng/i18n/fr.ts +164 -164
- package/src/tool/avifAPng/i18n/ja.ts +166 -166
- package/src/tool/avifAPng/i18n/ko.ts +166 -166
- package/src/tool/avifAPng/i18n/zh.ts +166 -166
- package/src/tool/avifAPng/seo.astro +15 -15
- package/src/tool/avifAWebp/i18n/en.ts +164 -164
- package/src/tool/avifAWebp/i18n/es.ts +164 -164
- package/src/tool/avifAWebp/i18n/fr.ts +164 -164
- package/src/tool/avifAWebp/i18n/ja.ts +166 -166
- package/src/tool/avifAWebp/i18n/ko.ts +166 -166
- package/src/tool/avifAWebp/i18n/zh.ts +166 -166
- package/src/tool/avifAWebp/seo.astro +15 -15
- package/src/tool/bmpAJpg/i18n/en.ts +164 -164
- package/src/tool/bmpAJpg/i18n/es.ts +164 -164
- package/src/tool/bmpAJpg/i18n/fr.ts +164 -164
- package/src/tool/bmpAJpg/i18n/ja.ts +166 -166
- package/src/tool/bmpAJpg/i18n/ko.ts +166 -166
- package/src/tool/bmpAJpg/i18n/zh.ts +166 -166
- package/src/tool/bmpAJpg/seo.astro +15 -15
- package/src/tool/bmpAPng/i18n/en.ts +164 -164
- package/src/tool/bmpAPng/i18n/es.ts +164 -164
- package/src/tool/bmpAPng/i18n/fr.ts +164 -164
- package/src/tool/bmpAPng/i18n/ja.ts +165 -165
- package/src/tool/bmpAPng/i18n/ko.ts +165 -165
- package/src/tool/bmpAPng/i18n/zh.ts +165 -165
- package/src/tool/bmpAPng/seo.astro +15 -15
- package/src/tool/bmpAWebp/i18n/en.ts +164 -164
- package/src/tool/bmpAWebp/i18n/es.ts +164 -164
- package/src/tool/bmpAWebp/i18n/fr.ts +164 -164
- package/src/tool/bmpAWebp/i18n/ja.ts +166 -166
- package/src/tool/bmpAWebp/i18n/ko.ts +166 -166
- package/src/tool/bmpAWebp/i18n/zh.ts +166 -166
- package/src/tool/bmpAWebp/seo.astro +15 -15
- package/src/tool/gifAJpg/i18n/en.ts +164 -164
- package/src/tool/gifAJpg/i18n/es.ts +164 -164
- package/src/tool/gifAJpg/i18n/fr.ts +164 -164
- package/src/tool/gifAJpg/i18n/ja.ts +166 -166
- package/src/tool/gifAJpg/i18n/ko.ts +166 -166
- package/src/tool/gifAJpg/i18n/zh.ts +166 -166
- package/src/tool/gifAJpg/seo.astro +15 -15
- package/src/tool/gifAPng/i18n/en.ts +164 -164
- package/src/tool/gifAPng/i18n/es.ts +164 -164
- package/src/tool/gifAPng/i18n/fr.ts +164 -164
- package/src/tool/gifAPng/i18n/ja.ts +166 -166
- package/src/tool/gifAPng/i18n/ko.ts +166 -166
- package/src/tool/gifAPng/i18n/zh.ts +166 -166
- package/src/tool/gifAPng/seo.astro +15 -15
- package/src/tool/gifAWebp/i18n/en.ts +164 -164
- package/src/tool/gifAWebp/i18n/es.ts +164 -164
- package/src/tool/gifAWebp/i18n/fr.ts +164 -164
- package/src/tool/gifAWebp/i18n/ja.ts +166 -166
- package/src/tool/gifAWebp/i18n/ko.ts +166 -166
- package/src/tool/gifAWebp/i18n/zh.ts +166 -166
- package/src/tool/gifAWebp/seo.astro +15 -15
- package/src/tool/imagenBase64/i18n/en.ts +154 -154
- package/src/tool/imagenBase64/i18n/es.ts +154 -154
- package/src/tool/imagenBase64/i18n/fr.ts +154 -154
- package/src/tool/imagenBase64/seo.astro +15 -15
- package/src/tool/jpgAIco/seo.astro +15 -15
- package/src/tool/jpgAPng/i18n/en.ts +164 -164
- package/src/tool/jpgAPng/i18n/es.ts +164 -164
- package/src/tool/jpgAPng/i18n/fr.ts +164 -164
- package/src/tool/jpgAPng/i18n/ja.ts +166 -166
- package/src/tool/jpgAPng/i18n/ko.ts +166 -166
- package/src/tool/jpgAPng/i18n/zh.ts +166 -166
- package/src/tool/jpgAPng/seo.astro +15 -15
- package/src/tool/jpgAWebp/i18n/en.ts +164 -164
- package/src/tool/jpgAWebp/i18n/es.ts +164 -164
- package/src/tool/jpgAWebp/i18n/fr.ts +164 -164
- package/src/tool/jpgAWebp/seo.astro +15 -15
- package/src/tool/pngAIco/seo.astro +15 -15
- package/src/tool/pngAJpg/i18n/de.ts +21 -21
- package/src/tool/pngAJpg/i18n/es.ts +177 -177
- package/src/tool/pngAJpg/i18n/fr.ts +137 -137
- package/src/tool/pngAJpg/i18n/id.ts +89 -89
- package/src/tool/pngAJpg/i18n/it.ts +89 -89
- package/src/tool/pngAJpg/i18n/ko.ts +177 -177
- package/src/tool/pngAJpg/i18n/nl.ts +20 -20
- package/src/tool/pngAJpg/i18n/pl.ts +89 -89
- package/src/tool/pngAJpg/i18n/pt.ts +89 -89
- package/src/tool/pngAJpg/i18n/ru.ts +177 -177
- package/src/tool/pngAJpg/i18n/sv.ts +89 -89
- package/src/tool/pngAJpg/i18n/tr.ts +89 -89
- package/src/tool/pngAJpg/seo.astro +15 -15
- package/src/tool/pngAWebp/i18n/en.ts +164 -164
- package/src/tool/pngAWebp/i18n/es.ts +164 -164
- package/src/tool/pngAWebp/i18n/fr.ts +164 -164
- package/src/tool/pngAWebp/seo.astro +15 -15
- package/src/tool/svgAJpg/i18n/fr.ts +164 -164
- package/src/tool/svgAJpg/seo.astro +15 -15
- package/src/tool/svgAPng/i18n/fr.ts +164 -164
- package/src/tool/svgAPng/seo.astro +15 -15
- package/src/tool/webpAIco/seo.astro +15 -15
- package/src/tool/webpAJpg/seo.astro +15 -15
- package/src/tool/webpAPng/bibliography.ts +13 -13
- package/src/tool/webpAPng/i18n/de.ts +166 -166
- package/src/tool/webpAPng/i18n/es.ts +171 -171
- package/src/tool/webpAPng/i18n/fr.ts +166 -166
- package/src/tool/webpAPng/i18n/id.ts +166 -166
- package/src/tool/webpAPng/i18n/it.ts +166 -166
- package/src/tool/webpAPng/i18n/nl.ts +166 -166
- package/src/tool/webpAPng/i18n/pl.ts +166 -166
- package/src/tool/webpAPng/i18n/pt.ts +166 -166
- package/src/tool/webpAPng/i18n/ru.ts +166 -166
- package/src/tool/webpAPng/i18n/sv.ts +166 -166
- package/src/tool/webpAPng/i18n/tr.ts +167 -167
- package/src/tool/webpAPng/seo.astro +15 -15
|
@@ -1,168 +1,168 @@
|
|
|
1
1
|
import { bibliography } from '../bibliography';
|
|
2
|
-
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
2
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
3
3
|
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
4
|
-
import type { JpgAWebpLocaleContent } from '../index';
|
|
5
|
-
|
|
6
|
-
const slug = 'convertidor-jpg-a-webp';
|
|
7
|
-
const title = 'Convertir JPG a WebP Online y Gratis';
|
|
8
|
-
const description =
|
|
9
|
-
'Convierte imágenes JPG a WebP en tu navegador. Compresión superior sin pérdida visible. Sin subir archivos. Gratuito, ilimitado y privado.';
|
|
10
|
-
|
|
11
|
-
const ui: ImageConverterUI = {
|
|
12
|
-
dragText: 'Arrastra archivos JPG...',
|
|
13
|
-
convertText: 'Para convertirlos a WebP al instante',
|
|
14
|
-
selectFiles: 'Seleccionar archivos',
|
|
15
|
-
processedFiles: 'Archivos procesados',
|
|
16
|
-
downloadAll: 'Descargar Todo (.zip)',
|
|
4
|
+
import type { JpgAWebpLocaleContent } from '../index';
|
|
5
|
+
|
|
6
|
+
const slug = 'convertidor-jpg-a-webp';
|
|
7
|
+
const title = 'Convertir JPG a WebP Online y Gratis';
|
|
8
|
+
const description =
|
|
9
|
+
'Convierte imágenes JPG a WebP en tu navegador. Compresión superior sin pérdida visible. Sin subir archivos. Gratuito, ilimitado y privado.';
|
|
10
|
+
|
|
11
|
+
const ui: ImageConverterUI = {
|
|
12
|
+
dragText: 'Arrastra archivos JPG...',
|
|
13
|
+
convertText: 'Para convertirlos a WebP al instante',
|
|
14
|
+
selectFiles: 'Seleccionar archivos',
|
|
15
|
+
processedFiles: 'Archivos procesados',
|
|
16
|
+
downloadAll: 'Descargar Todo (.zip)',
|
|
17
17
|
pending: 'Pendiente',
|
|
18
|
-
bibliographyTitle: 'Referencias Bibliográficas',
|
|
19
|
-
faqTitle: 'Preguntas Frecuentes',
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const faq: JpgAWebpLocaleContent['faq'] = [
|
|
23
|
-
{
|
|
24
|
-
question: '¿Por qué convertir fotos JPG a WebP?',
|
|
25
|
-
answer:
|
|
26
|
-
'WebP permite comprimir significativamente más los archivos JPG tradicionales sin que el ojo humano note la diferencia, resultando en sitios web más rápidos y modernos.',
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
question: '¿Tengo que pagar por imagen?',
|
|
30
|
-
answer:
|
|
31
|
-
'No, la herramienta es gratis y todo se procesa directamente en tu ordenador. Es ilimitada para uso doméstico o profesional.',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
question: '¿Es segura la conversión?',
|
|
35
|
-
answer:
|
|
36
|
-
'Sí, totalmente. Todo el procesamiento ocurre en el Canvas HTML5 de tu navegador local sin enviar ningún dato a servidores externos.',
|
|
37
|
-
},
|
|
38
|
-
];
|
|
39
|
-
|
|
40
|
-
const howTo: JpgAWebpLocaleContent['howTo'] = [
|
|
41
|
-
{
|
|
42
|
-
name: 'Inserta tus fotografías JPG',
|
|
43
|
-
text: 'Pega tus archivos JPG o arrástralos directamente al área superior. La detección es instantánea.',
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
name: 'Procesado a WebP',
|
|
47
|
-
text: 'El motor de renderizado local convertirá cada archivo de imagen a un WebP ultra optimizado listo para la web.',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: 'Descarga los resultados',
|
|
51
|
-
text: 'Guarda cada WebP individualmente o descarga el ZIP con todos los archivos convertidos.',
|
|
52
|
-
},
|
|
53
|
-
];
|
|
54
|
-
|
|
55
|
-
const seo: JpgAWebpLocaleContent['seo'] = [
|
|
56
|
-
{
|
|
57
|
-
type: 'title',
|
|
58
|
-
text: 'Convertidor de JPG a WebP: Acelera tu Web con el Formato de Google',
|
|
59
|
-
level: 2,
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
type: 'paragraph',
|
|
63
|
-
html: 'El formato <strong>JPG</strong> ha dominado la fotografía digital durante décadas: universal, compacto y compatible con cualquier dispositivo. Sin embargo, Google diseñó <strong>WebP</strong> para superar al JPG en su propio terreno: mismo nivel visual, un 25-35% menos de peso. Para los desarrolladores web y los equipos de marketing que luchan contra tiempos de carga lentos, convertir JPG a WebP es la palanca de optimización con mayor retorno por esfuerzo.',
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
type: 'title',
|
|
67
|
-
text: '¿JPG o WebP? Cuándo usar cada formato',
|
|
68
|
-
level: 3,
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
type: 'paragraph',
|
|
72
|
-
html: 'El <strong>JPG</strong> sigue siendo la opción correcta cuando necesitas compatibilidad universal: correos electrónicos a clientes, documentos de Word, redes sociales heredadas o sistemas CMS que no aceptan WebP. Su ecosistema de treinta años garantiza que cualquier pantalla, impresora o visor lo abrirá sin problemas. El mayor inconveniente es su tamaño: un JPG de cabecera de 1,5 MB puede lastrar el LCP de tu página hasta hacerlo reprobar en Core Web Vitals.',
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
type: 'paragraph',
|
|
76
|
-
html: '<strong>WebP</strong> es la elección inteligente para todo el contenido que vive en tu sitio web. Chrome, Firefox, Safari y Edge lo soportan de forma nativa desde hace años. Las imágenes de producto en e-commerce, los banners de blog, las miniaturas de vídeo y cualquier fotografía publicada en línea se benefician directamente: páginas más ligeras, mejor puntuación en Google PageSpeed Insights y una experiencia de usuario más fluida, especialmente en conexiones móviles.',
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
type: 'title',
|
|
80
|
-
text: 'Comparativa: Conversión Local vs Nube',
|
|
81
|
-
level: 3,
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
type: 'comparative',
|
|
85
|
-
items: [
|
|
86
|
-
{
|
|
87
|
-
title: 'Convertidores Cloud',
|
|
88
|
-
description: 'Herramientas que suben tus archivos a un servidor remoto.',
|
|
89
|
-
icon: 'mdi:cloud-upload',
|
|
90
|
-
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
-
points: [
|
|
92
|
-
'Latencia de red en upload y download',
|
|
93
|
-
'Tus fotografías quedan en servidores ajenos',
|
|
94
|
-
'Límites de tamaño y conversiones diarias',
|
|
95
|
-
'Publicidad intrusiva y rastreadores de terceros',
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
title: 'Nuestra Arquitectura Local',
|
|
100
|
-
description: 'Procesamiento directo en tu hardware mediante tecnología Vanilla JS.',
|
|
101
|
-
icon: 'mdi:laptop-mac',
|
|
102
|
-
highlight: true,
|
|
103
|
-
points: [
|
|
104
|
-
'Velocidad instantánea: cero latencia de red',
|
|
105
|
-
'Privacidad total - 0 bytes enviados al exterior',
|
|
106
|
-
'Sin límites de MB ni de número de archivos',
|
|
107
|
-
'Interfaz limpia, sin anuncios ni rastreos',
|
|
108
|
-
],
|
|
109
|
-
},
|
|
110
|
-
],
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
type: 'title',
|
|
114
|
-
text: 'Cómo funciona técnicamente',
|
|
115
|
-
level: 3,
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
type: 'paragraph',
|
|
119
|
-
html: 'Cuando arrastras un JPG a la herramienta, el navegador crea un objeto <strong>Blob</strong> que reside únicamente en tu RAM. Ese Blob se decodifica y se dibuja sobre un elemento <strong>Canvas de HTML5</strong> invisible. Como el JPG no tiene canal alfa, la conversión a WebP es directa: el motor exporta el canvas llamando a <code>toDataURL(\'image/webp\')</code>, generando un flujo de bytes que tu sistema operativo descarga al instante sin pasar por ningún servidor.',
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
type: 'paragraph',
|
|
123
|
-
html: 'El algoritmo de compresión WebP combina técnicas de predicción de bloques (similares a las de VP8, el codec de vídeo de Google) con transformadas de color y codificación aritmética. El resultado es un archivo que contiene la misma información perceptual que el JPG original pero empaquetada de forma mucho más eficiente, lo que se traduce directamente en menos kilobytes transferidos por cada visita a tu página.',
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
type: 'tip',
|
|
127
|
-
title: 'Consejo Core Web Vitals: LCP y el peso de las imágenes',
|
|
128
|
-
html: 'El <strong>Largest Contentful Paint (LCP)</strong> es la métrica de Google que mide cuánto tarda en cargarse el elemento visual más grande de tu página. Un JPG de cabecera de 1,5 MB puede convertirse en un WebP de apenas 900 KB - o incluso 600 KB - sin diferencia visual apreciable. Ese ahorro del <strong>25-35%</strong> puede mover tu LCP de "Necesita mejorar" a "Bueno" y subir posiciones en los resultados de búsqueda.',
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
type: 'title',
|
|
132
|
-
text: 'Casos de uso y compatibilidad',
|
|
133
|
-
level: 3,
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
type: 'list',
|
|
137
|
-
icon: 'mdi:check-circle',
|
|
138
|
-
items: [
|
|
139
|
-
'Imágenes de producto en tiendas WooCommerce o Shopify: menos peso, más conversiones.',
|
|
140
|
-
'Fotografías de blog y artículos de contenido: mejor puntuación PageSpeed sin retocar el diseño.',
|
|
141
|
-
'Banners y creatividades publicitarias web: archivos más ligeros con la misma nitidez.',
|
|
142
|
-
'Galerías de portfolio o portafolios de arquitectura/fotografía con muchas imágenes.',
|
|
143
|
-
'Miniaturas de vídeo en sitios de streaming o plataformas de cursos online.',
|
|
144
|
-
],
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
type: 'title',
|
|
148
|
-
text: 'Conclusión',
|
|
149
|
-
level: 3,
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
type: 'paragraph',
|
|
153
|
-
html: 'Convertir tus JPG a WebP es hoy una de las optimizaciones más sencillas y rentables que puedes aplicar a cualquier sitio web. Con esta herramienta lo haces en segundos, de forma gratuita y sin que tus imágenes salgan de tu dispositivo. Menos kilobytes, mejor LCP, más velocidad - y todo eso con el mismo aspecto visual que ya tenías.',
|
|
154
|
-
},
|
|
155
|
-
];
|
|
156
|
-
|
|
18
|
+
bibliographyTitle: 'Referencias Bibliográficas',
|
|
19
|
+
faqTitle: 'Preguntas Frecuentes',
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const faq: JpgAWebpLocaleContent['faq'] = [
|
|
23
|
+
{
|
|
24
|
+
question: '¿Por qué convertir fotos JPG a WebP?',
|
|
25
|
+
answer:
|
|
26
|
+
'WebP permite comprimir significativamente más los archivos JPG tradicionales sin que el ojo humano note la diferencia, resultando en sitios web más rápidos y modernos.',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
question: '¿Tengo que pagar por imagen?',
|
|
30
|
+
answer:
|
|
31
|
+
'No, la herramienta es gratis y todo se procesa directamente en tu ordenador. Es ilimitada para uso doméstico o profesional.',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
question: '¿Es segura la conversión?',
|
|
35
|
+
answer:
|
|
36
|
+
'Sí, totalmente. Todo el procesamiento ocurre en el Canvas HTML5 de tu navegador local sin enviar ningún dato a servidores externos.',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
const howTo: JpgAWebpLocaleContent['howTo'] = [
|
|
41
|
+
{
|
|
42
|
+
name: 'Inserta tus fotografías JPG',
|
|
43
|
+
text: 'Pega tus archivos JPG o arrástralos directamente al área superior. La detección es instantánea.',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'Procesado a WebP',
|
|
47
|
+
text: 'El motor de renderizado local convertirá cada archivo de imagen a un WebP ultra optimizado listo para la web.',
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
name: 'Descarga los resultados',
|
|
51
|
+
text: 'Guarda cada WebP individualmente o descarga el ZIP con todos los archivos convertidos.',
|
|
52
|
+
},
|
|
53
|
+
];
|
|
54
|
+
|
|
55
|
+
const seo: JpgAWebpLocaleContent['seo'] = [
|
|
56
|
+
{
|
|
57
|
+
type: 'title',
|
|
58
|
+
text: 'Convertidor de JPG a WebP: Acelera tu Web con el Formato de Google',
|
|
59
|
+
level: 2,
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'paragraph',
|
|
63
|
+
html: 'El formato <strong>JPG</strong> ha dominado la fotografía digital durante décadas: universal, compacto y compatible con cualquier dispositivo. Sin embargo, Google diseñó <strong>WebP</strong> para superar al JPG en su propio terreno: mismo nivel visual, un 25-35% menos de peso. Para los desarrolladores web y los equipos de marketing que luchan contra tiempos de carga lentos, convertir JPG a WebP es la palanca de optimización con mayor retorno por esfuerzo.',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
type: 'title',
|
|
67
|
+
text: '¿JPG o WebP? Cuándo usar cada formato',
|
|
68
|
+
level: 3,
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'paragraph',
|
|
72
|
+
html: 'El <strong>JPG</strong> sigue siendo la opción correcta cuando necesitas compatibilidad universal: correos electrónicos a clientes, documentos de Word, redes sociales heredadas o sistemas CMS que no aceptan WebP. Su ecosistema de treinta años garantiza que cualquier pantalla, impresora o visor lo abrirá sin problemas. El mayor inconveniente es su tamaño: un JPG de cabecera de 1,5 MB puede lastrar el LCP de tu página hasta hacerlo reprobar en Core Web Vitals.',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: 'paragraph',
|
|
76
|
+
html: '<strong>WebP</strong> es la elección inteligente para todo el contenido que vive en tu sitio web. Chrome, Firefox, Safari y Edge lo soportan de forma nativa desde hace años. Las imágenes de producto en e-commerce, los banners de blog, las miniaturas de vídeo y cualquier fotografía publicada en línea se benefician directamente: páginas más ligeras, mejor puntuación en Google PageSpeed Insights y una experiencia de usuario más fluida, especialmente en conexiones móviles.',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
type: 'title',
|
|
80
|
+
text: 'Comparativa: Conversión Local vs Nube',
|
|
81
|
+
level: 3,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: 'comparative',
|
|
85
|
+
items: [
|
|
86
|
+
{
|
|
87
|
+
title: 'Convertidores Cloud',
|
|
88
|
+
description: 'Herramientas que suben tus archivos a un servidor remoto.',
|
|
89
|
+
icon: 'mdi:cloud-upload',
|
|
90
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
+
points: [
|
|
92
|
+
'Latencia de red en upload y download',
|
|
93
|
+
'Tus fotografías quedan en servidores ajenos',
|
|
94
|
+
'Límites de tamaño y conversiones diarias',
|
|
95
|
+
'Publicidad intrusiva y rastreadores de terceros',
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
title: 'Nuestra Arquitectura Local',
|
|
100
|
+
description: 'Procesamiento directo en tu hardware mediante tecnología Vanilla JS.',
|
|
101
|
+
icon: 'mdi:laptop-mac',
|
|
102
|
+
highlight: true,
|
|
103
|
+
points: [
|
|
104
|
+
'Velocidad instantánea: cero latencia de red',
|
|
105
|
+
'Privacidad total - 0 bytes enviados al exterior',
|
|
106
|
+
'Sin límites de MB ni de número de archivos',
|
|
107
|
+
'Interfaz limpia, sin anuncios ni rastreos',
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: 'Cómo funciona técnicamente',
|
|
115
|
+
level: 3,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'paragraph',
|
|
119
|
+
html: 'Cuando arrastras un JPG a la herramienta, el navegador crea un objeto <strong>Blob</strong> que reside únicamente en tu RAM. Ese Blob se decodifica y se dibuja sobre un elemento <strong>Canvas de HTML5</strong> invisible. Como el JPG no tiene canal alfa, la conversión a WebP es directa: el motor exporta el canvas llamando a <code>toDataURL(\'image/webp\')</code>, generando un flujo de bytes que tu sistema operativo descarga al instante sin pasar por ningún servidor.',
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'paragraph',
|
|
123
|
+
html: 'El algoritmo de compresión WebP combina técnicas de predicción de bloques (similares a las de VP8, el codec de vídeo de Google) con transformadas de color y codificación aritmética. El resultado es un archivo que contiene la misma información perceptual que el JPG original pero empaquetada de forma mucho más eficiente, lo que se traduce directamente en menos kilobytes transferidos por cada visita a tu página.',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'tip',
|
|
127
|
+
title: 'Consejo Core Web Vitals: LCP y el peso de las imágenes',
|
|
128
|
+
html: 'El <strong>Largest Contentful Paint (LCP)</strong> es la métrica de Google que mide cuánto tarda en cargarse el elemento visual más grande de tu página. Un JPG de cabecera de 1,5 MB puede convertirse en un WebP de apenas 900 KB - o incluso 600 KB - sin diferencia visual apreciable. Ese ahorro del <strong>25-35%</strong> puede mover tu LCP de "Necesita mejorar" a "Bueno" y subir posiciones en los resultados de búsqueda.',
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'title',
|
|
132
|
+
text: 'Casos de uso y compatibilidad',
|
|
133
|
+
level: 3,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'list',
|
|
137
|
+
icon: 'mdi:check-circle',
|
|
138
|
+
items: [
|
|
139
|
+
'Imágenes de producto en tiendas WooCommerce o Shopify: menos peso, más conversiones.',
|
|
140
|
+
'Fotografías de blog y artículos de contenido: mejor puntuación PageSpeed sin retocar el diseño.',
|
|
141
|
+
'Banners y creatividades publicitarias web: archivos más ligeros con la misma nitidez.',
|
|
142
|
+
'Galerías de portfolio o portafolios de arquitectura/fotografía con muchas imágenes.',
|
|
143
|
+
'Miniaturas de vídeo en sitios de streaming o plataformas de cursos online.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Conclusión',
|
|
149
|
+
level: 3,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'paragraph',
|
|
153
|
+
html: 'Convertir tus JPG a WebP es hoy una de las optimizaciones más sencillas y rentables que puedes aplicar a cualquier sitio web. Con esta herramienta lo haces en segundos, de forma gratuita y sin que tus imágenes salgan de tu dispositivo. Menos kilobytes, mejor LCP, más velocidad - y todo eso con el mismo aspecto visual que ya tenías.',
|
|
154
|
+
},
|
|
155
|
+
];
|
|
157
156
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
}
|
|
157
|
+
|
|
158
|
+
export const content: JpgAWebpLocaleContent = {
|
|
159
|
+
slug,
|
|
160
|
+
title,
|
|
161
|
+
description,
|
|
162
|
+
ui,
|
|
163
|
+
seo,
|
|
164
|
+
faq,
|
|
165
|
+
bibliography,
|
|
166
|
+
howTo,
|
|
167
|
+
schemas: generateSchemas({ title, description, inLanguage: 'es', faq, howTo }),
|
|
168
|
+
};
|