@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.
Files changed (134) hide show
  1. package/package.json +2 -2
  2. package/src/category/i18n/de.ts +1 -1
  3. package/src/category/i18n/en.ts +1 -1
  4. package/src/category/i18n/fr.ts +1 -1
  5. package/src/category/i18n/id.ts +1 -1
  6. package/src/category/i18n/it.ts +1 -1
  7. package/src/category/i18n/nl.ts +1 -1
  8. package/src/category/i18n/pl.ts +1 -1
  9. package/src/category/i18n/pt.ts +1 -1
  10. package/src/category/i18n/sv.ts +1 -1
  11. package/src/entries.ts +6 -0
  12. package/src/tests/bibliography_wellformed_export.test.ts +46 -0
  13. package/src/tests/category_seo_quality.test.ts +74 -0
  14. package/src/tests/faq_count.test.ts +1 -1
  15. package/src/tests/no_h1_in_components.test.ts +1 -1
  16. package/src/tests/seo_parity.test.ts +2 -2
  17. package/src/tests/seo_wellformed_export.test.ts +65 -0
  18. package/src/tests/tool_validation.test.ts +15 -15
  19. package/src/tool/avifAJpg/i18n/en.ts +164 -164
  20. package/src/tool/avifAJpg/i18n/es.ts +164 -164
  21. package/src/tool/avifAJpg/i18n/fr.ts +164 -164
  22. package/src/tool/avifAJpg/i18n/ja.ts +166 -166
  23. package/src/tool/avifAJpg/i18n/ko.ts +166 -166
  24. package/src/tool/avifAJpg/i18n/zh.ts +166 -166
  25. package/src/tool/avifAJpg/seo.astro +15 -15
  26. package/src/tool/avifAPng/i18n/en.ts +164 -164
  27. package/src/tool/avifAPng/i18n/es.ts +164 -164
  28. package/src/tool/avifAPng/i18n/fr.ts +164 -164
  29. package/src/tool/avifAPng/i18n/ja.ts +166 -166
  30. package/src/tool/avifAPng/i18n/ko.ts +166 -166
  31. package/src/tool/avifAPng/i18n/zh.ts +166 -166
  32. package/src/tool/avifAPng/seo.astro +15 -15
  33. package/src/tool/avifAWebp/i18n/en.ts +164 -164
  34. package/src/tool/avifAWebp/i18n/es.ts +164 -164
  35. package/src/tool/avifAWebp/i18n/fr.ts +164 -164
  36. package/src/tool/avifAWebp/i18n/ja.ts +166 -166
  37. package/src/tool/avifAWebp/i18n/ko.ts +166 -166
  38. package/src/tool/avifAWebp/i18n/zh.ts +166 -166
  39. package/src/tool/avifAWebp/seo.astro +15 -15
  40. package/src/tool/bmpAJpg/i18n/en.ts +164 -164
  41. package/src/tool/bmpAJpg/i18n/es.ts +164 -164
  42. package/src/tool/bmpAJpg/i18n/fr.ts +164 -164
  43. package/src/tool/bmpAJpg/i18n/ja.ts +166 -166
  44. package/src/tool/bmpAJpg/i18n/ko.ts +166 -166
  45. package/src/tool/bmpAJpg/i18n/zh.ts +166 -166
  46. package/src/tool/bmpAJpg/seo.astro +15 -15
  47. package/src/tool/bmpAPng/i18n/en.ts +164 -164
  48. package/src/tool/bmpAPng/i18n/es.ts +164 -164
  49. package/src/tool/bmpAPng/i18n/fr.ts +164 -164
  50. package/src/tool/bmpAPng/i18n/ja.ts +165 -165
  51. package/src/tool/bmpAPng/i18n/ko.ts +165 -165
  52. package/src/tool/bmpAPng/i18n/zh.ts +165 -165
  53. package/src/tool/bmpAPng/seo.astro +15 -15
  54. package/src/tool/bmpAWebp/i18n/en.ts +164 -164
  55. package/src/tool/bmpAWebp/i18n/es.ts +164 -164
  56. package/src/tool/bmpAWebp/i18n/fr.ts +164 -164
  57. package/src/tool/bmpAWebp/i18n/ja.ts +166 -166
  58. package/src/tool/bmpAWebp/i18n/ko.ts +166 -166
  59. package/src/tool/bmpAWebp/i18n/zh.ts +166 -166
  60. package/src/tool/bmpAWebp/seo.astro +15 -15
  61. package/src/tool/gifAJpg/i18n/en.ts +164 -164
  62. package/src/tool/gifAJpg/i18n/es.ts +164 -164
  63. package/src/tool/gifAJpg/i18n/fr.ts +164 -164
  64. package/src/tool/gifAJpg/i18n/ja.ts +166 -166
  65. package/src/tool/gifAJpg/i18n/ko.ts +166 -166
  66. package/src/tool/gifAJpg/i18n/zh.ts +166 -166
  67. package/src/tool/gifAJpg/seo.astro +15 -15
  68. package/src/tool/gifAPng/i18n/en.ts +164 -164
  69. package/src/tool/gifAPng/i18n/es.ts +164 -164
  70. package/src/tool/gifAPng/i18n/fr.ts +164 -164
  71. package/src/tool/gifAPng/i18n/ja.ts +166 -166
  72. package/src/tool/gifAPng/i18n/ko.ts +166 -166
  73. package/src/tool/gifAPng/i18n/zh.ts +166 -166
  74. package/src/tool/gifAPng/seo.astro +15 -15
  75. package/src/tool/gifAWebp/i18n/en.ts +164 -164
  76. package/src/tool/gifAWebp/i18n/es.ts +164 -164
  77. package/src/tool/gifAWebp/i18n/fr.ts +164 -164
  78. package/src/tool/gifAWebp/i18n/ja.ts +166 -166
  79. package/src/tool/gifAWebp/i18n/ko.ts +166 -166
  80. package/src/tool/gifAWebp/i18n/zh.ts +166 -166
  81. package/src/tool/gifAWebp/seo.astro +15 -15
  82. package/src/tool/imagenBase64/i18n/en.ts +154 -154
  83. package/src/tool/imagenBase64/i18n/es.ts +154 -154
  84. package/src/tool/imagenBase64/i18n/fr.ts +154 -154
  85. package/src/tool/imagenBase64/seo.astro +15 -15
  86. package/src/tool/jpgAIco/seo.astro +15 -15
  87. package/src/tool/jpgAPng/i18n/en.ts +164 -164
  88. package/src/tool/jpgAPng/i18n/es.ts +164 -164
  89. package/src/tool/jpgAPng/i18n/fr.ts +164 -164
  90. package/src/tool/jpgAPng/i18n/ja.ts +166 -166
  91. package/src/tool/jpgAPng/i18n/ko.ts +166 -166
  92. package/src/tool/jpgAPng/i18n/zh.ts +166 -166
  93. package/src/tool/jpgAPng/seo.astro +15 -15
  94. package/src/tool/jpgAWebp/i18n/en.ts +164 -164
  95. package/src/tool/jpgAWebp/i18n/es.ts +164 -164
  96. package/src/tool/jpgAWebp/i18n/fr.ts +164 -164
  97. package/src/tool/jpgAWebp/seo.astro +15 -15
  98. package/src/tool/pngAIco/seo.astro +15 -15
  99. package/src/tool/pngAJpg/i18n/de.ts +21 -21
  100. package/src/tool/pngAJpg/i18n/es.ts +177 -177
  101. package/src/tool/pngAJpg/i18n/fr.ts +137 -137
  102. package/src/tool/pngAJpg/i18n/id.ts +89 -89
  103. package/src/tool/pngAJpg/i18n/it.ts +89 -89
  104. package/src/tool/pngAJpg/i18n/ko.ts +177 -177
  105. package/src/tool/pngAJpg/i18n/nl.ts +20 -20
  106. package/src/tool/pngAJpg/i18n/pl.ts +89 -89
  107. package/src/tool/pngAJpg/i18n/pt.ts +89 -89
  108. package/src/tool/pngAJpg/i18n/ru.ts +177 -177
  109. package/src/tool/pngAJpg/i18n/sv.ts +89 -89
  110. package/src/tool/pngAJpg/i18n/tr.ts +89 -89
  111. package/src/tool/pngAJpg/seo.astro +15 -15
  112. package/src/tool/pngAWebp/i18n/en.ts +164 -164
  113. package/src/tool/pngAWebp/i18n/es.ts +164 -164
  114. package/src/tool/pngAWebp/i18n/fr.ts +164 -164
  115. package/src/tool/pngAWebp/seo.astro +15 -15
  116. package/src/tool/svgAJpg/i18n/fr.ts +164 -164
  117. package/src/tool/svgAJpg/seo.astro +15 -15
  118. package/src/tool/svgAPng/i18n/fr.ts +164 -164
  119. package/src/tool/svgAPng/seo.astro +15 -15
  120. package/src/tool/webpAIco/seo.astro +15 -15
  121. package/src/tool/webpAJpg/seo.astro +15 -15
  122. package/src/tool/webpAPng/bibliography.ts +13 -13
  123. package/src/tool/webpAPng/i18n/de.ts +166 -166
  124. package/src/tool/webpAPng/i18n/es.ts +171 -171
  125. package/src/tool/webpAPng/i18n/fr.ts +166 -166
  126. package/src/tool/webpAPng/i18n/id.ts +166 -166
  127. package/src/tool/webpAPng/i18n/it.ts +166 -166
  128. package/src/tool/webpAPng/i18n/nl.ts +166 -166
  129. package/src/tool/webpAPng/i18n/pl.ts +166 -166
  130. package/src/tool/webpAPng/i18n/pt.ts +166 -166
  131. package/src/tool/webpAPng/i18n/ru.ts +166 -166
  132. package/src/tool/webpAPng/i18n/sv.ts +166 -166
  133. package/src/tool/webpAPng/i18n/tr.ts +167 -167
  134. 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 { AvifAWebpLocaleContent } from '../index';
5
-
6
- const slug = 'convertidor-avif-a-webp';
7
- const title = 'Convertir AVIF a WebP Online';
8
- const description =
9
- 'Convierte imágenes AVIF a WebP con mejor compatibilidad. Procesado local sin servidores. Gratis, privado e ilimitado.';
10
-
11
- const ui: ImageConverterUI = {
12
- dragText: 'Arrastra archivos AVIF...',
13
- convertText: 'Para convertirlos a WebP al instante',
14
- selectFiles: 'Seleccionar archivos',
15
- processedFiles: 'Archivos procesados',
16
- downloadAll: 'Descargar Todo (.zip)',
4
+ import type { AvifAWebpLocaleContent } from '../index';
5
+
6
+ const slug = 'convertidor-avif-a-webp';
7
+ const title = 'Convertir AVIF a WebP Online';
8
+ const description =
9
+ 'Convierte imágenes AVIF a WebP con mejor compatibilidad. Procesado local sin servidores. Gratis, privado e ilimitado.';
10
+
11
+ const ui: ImageConverterUI = {
12
+ dragText: 'Arrastra archivos AVIF...',
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: AvifAWebpLocaleContent['faq'] = [
23
- {
24
- question: '¿Cuál es la diferencia real entre convertir a WebP y a otros formatos?',
25
- answer:
26
- 'WebP ofrece lo mejor de ambos mundos: compresiones tan asombrosas como el JPG pero conservando la capacidad de albergar transparencias limpias como un PNG. Cambiar tu AVIF a WebP maximiza su compatibilidad para la web preservando todas sus ventajas.',
27
- },
28
- {
29
- question: '¿Cómo logran cambiar esto sin servidor y de forma rápida?',
30
- answer:
31
- 'Aprovechamos los módulos de decodificación incorporados y el objeto Image de JavaScript HTML5, lo que permite leer tu AVIF en memoria local y extraer un archivo WebP optimizado en tiempo récord.',
32
- },
33
- {
34
- question: '¿Es el formato WebP completamente compatible hoy en día?',
35
- answer:
36
- 'A diferencia del naciente AVIF, el formato WebP disfruta de un amplísimo soporte entre navegadores como Chrome, Firefox y Safari.',
37
- },
38
- ];
39
-
40
- const howTo: AvifAWebpLocaleContent['howTo'] = [
41
- {
42
- name: 'Inserta tus archivos fotográficos',
43
- text: 'Mueve y suelta todas las selecciones de formato AVIF hasta nuestro lienzo.',
44
- },
45
- {
46
- name: 'Traducción de Bytes Algorítmicos',
47
- text: 'Nuestro motor asimila los algoritmos sin subir nada y crea iteraciones exactas basadas en WebP comprimido.',
48
- },
49
- {
50
- name: 'Acumula tus Descargas Listas',
51
- text: 'Pulsa el panel y recibe lotes en cajas ZIP o sueltos para publicarlas directamente.',
52
- },
53
- ];
54
-
55
- const seo: AvifAWebpLocaleContent['seo'] = [
56
- {
57
- type: 'title',
58
- text: 'Convertidor AVIF a WebP: La Alternativa Moderna y Segura para la Web',
59
- level: 2,
60
- },
61
- {
62
- type: 'paragraph',
63
- html: 'AVIF es el formato de imagen más avanzado disponible hoy: más pequeño que WebP, más pequeño que JPG, con calidad visual superior. Sin embargo, su adopción ha sido irregular - Safari no lo soportó hasta 2024, y muchos dispositivos móviles más antiguos lo desconocen. WebP, en cambio, lleva años consolidado como el estándar moderno de la web con más del 95% de soporte global. Convertir AVIF a WebP es la decisión pragmática cuando necesitas modernidad sin arriesgar la compatibilidad.',
64
- },
65
- {
66
- type: 'title',
67
- text: 'AVIF vs WebP: El Más Nuevo vs El Más Seguro',
68
- level: 3,
69
- },
70
- {
71
- type: 'paragraph',
72
- html: 'AVIF ofrece la compresión más avanzada disponible - típicamente un 20-30% más pequeño que WebP a la misma calidad. Su tecnología basada en AV1 es la más moderna del sector. Sin embargo, el soporte de AVIF todavía tiene puntos ciegos: versiones antiguas de Safari, algunos navegadores en Android más antiguo, y ciertos reproductores de imagen de escritorio no lo reconocen. Para producción web con audiencias amplias y diversas, esto supone un riesgo.',
73
- },
74
- {
75
- type: 'paragraph',
76
- html: 'WebP tiene una historia de soporte mucho más sólida. Chrome lo adoptó en 2010, Firefox y Edge siguieron, y Safari lo incorporó en 2020. Con más del 95% de cobertura global en navegadores, WebP es la elección segura para cualquier sitio web que no quiera servir formatos de reserva. Soporta transparencias, compresión con y sin pérdida, y logra archivos mucho más pequeños que JPG o PNG.',
77
- },
78
- {
79
- type: 'title',
80
- text: 'Comparativa: Convertidores Cloud vs Nuestra Arquitectura Local',
81
- level: 3,
82
- },
83
- {
84
- type: 'comparative',
85
- items: [
86
- {
87
- title: 'Convertidores Cloud',
88
- description: 'Herramientas que suben tus archivos AVIF a un servidor remoto para procesarlos.',
89
- icon: 'mdi:cloud-upload',
90
- pointIcon: 'mdi:close-circle-outline',
91
- points: [
92
- 'Tus imágenes privadas transitan por servidores externos',
93
- 'Latencia de red que ralentiza el flujo de trabajo',
94
- 'Límites de archivos por conversión gratuita',
95
- 'Dependencia de servicios de terceros que pueden cambiar',
96
- ],
97
- },
98
- {
99
- title: 'Nuestra Arquitectura Local',
100
- description: 'Procesamiento directo en tu navegador mediante tecnología Vanilla JS y Canvas API.',
101
- icon: 'mdi:laptop-mac',
102
- highlight: true,
103
- points: [
104
- 'Privacidad total - 0 bytes salen de tu dispositivo',
105
- 'Velocidad instantánea sin dependencia de red',
106
- 'Sin límites de tamaño ni de número de archivos',
107
- 'Funciona sin conexión a internet',
108
- ],
109
- },
110
- ],
111
- },
112
- {
113
- type: 'title',
114
- text: 'Cómo funciona la conversión técnica en el navegador',
115
- level: 3,
116
- },
117
- {
118
- type: 'paragraph',
119
- html: 'Chrome, Firefox y Edge incluyen decodificadores AVIF nativos. Al cargar el archivo, el motor de imágenes del navegador lo decodifica en RAM manteniendo la información de canal alfa. La imagen se pinta sobre un <code>Canvas</code> HTML5 invisible usando el contexto 2D, que preserva las transparencias correctamente.',
120
- },
121
- {
122
- type: 'paragraph',
123
- html: 'La exportación se realiza con <code>toBlob(\'image/webp\', quality)</code>. El navegador aplica el algoritmo de compresión WebP internamente, generando un Blob que incluye canal alfa si la imagen original lo tenía. Este Blob se convierte en enlace de descarga directa. El proceso completo ocurre en microsegundos sin ninguna comunicación con servidores externos.',
124
- },
125
- {
126
- type: 'tip',
127
- title: 'WebP: la elección pragmática del desarrollador moderno',
128
- html: 'WebP tiene más del 95% de soporte en navegadores - AVIF está creciendo pero aún no llega a esa cifra. Para sitios en producción sin detección de formato adaptativa, WebP es la elección segura que cubre casi cualquier audiencia. Convierte tus AVIF a WebP y sirve imágenes modernas con confianza.',
129
- },
130
- {
131
- type: 'title',
132
- text: 'Casos de uso: cuándo elegir WebP sobre AVIF',
133
- level: 3,
134
- },
135
- {
136
- type: 'list',
137
- icon: 'mdi:check-circle',
138
- items: [
139
- 'Sitios web que necesitan soporte en navegadores desde 2020 sin polyfills.',
140
- 'CDNs y sistemas de entrega de imágenes que aceptan WebP pero no AVIF.',
141
- 'Aplicaciones móviles híbridas con WebViews que pueden no soportar AVIF.',
142
- 'Emails HTML modernos donde WebP tiene mayor soporte que AVIF.',
143
- 'Plataformas CMS y ecommerce con soporte de imagen WebP establecido.',
144
- ],
145
- },
146
- {
147
- type: 'title',
148
- text: 'Conclusión: Modernidad con compatibilidad garantizada',
149
- level: 3,
150
- },
151
- {
152
- type: 'paragraph',
153
- html: 'AVIF es la vanguardia de la compresión de imágenes, pero WebP es la elección fiable y universal del ecosistema web moderno. Con nuestra herramienta, conviertes de lo más nuevo a lo más soportado en un instante - sin subir nada a ningún servidor, con privacidad total y sin límites de tamaño.',
154
- },
155
- ];
156
-
18
+ bibliographyTitle: 'Referencias Bibliográficas',
19
+ faqTitle: 'Preguntas Frecuentes',
20
+ };
21
+
22
+ const faq: AvifAWebpLocaleContent['faq'] = [
23
+ {
24
+ question: '¿Cuál es la diferencia real entre convertir a WebP y a otros formatos?',
25
+ answer:
26
+ 'WebP ofrece lo mejor de ambos mundos: compresiones tan asombrosas como el JPG pero conservando la capacidad de albergar transparencias limpias como un PNG. Cambiar tu AVIF a WebP maximiza su compatibilidad para la web preservando todas sus ventajas.',
27
+ },
28
+ {
29
+ question: '¿Cómo logran cambiar esto sin servidor y de forma rápida?',
30
+ answer:
31
+ 'Aprovechamos los módulos de decodificación incorporados y el objeto Image de JavaScript HTML5, lo que permite leer tu AVIF en memoria local y extraer un archivo WebP optimizado en tiempo récord.',
32
+ },
33
+ {
34
+ question: '¿Es el formato WebP completamente compatible hoy en día?',
35
+ answer:
36
+ 'A diferencia del naciente AVIF, el formato WebP disfruta de un amplísimo soporte entre navegadores como Chrome, Firefox y Safari.',
37
+ },
38
+ ];
39
+
40
+ const howTo: AvifAWebpLocaleContent['howTo'] = [
41
+ {
42
+ name: 'Inserta tus archivos fotográficos',
43
+ text: 'Mueve y suelta todas las selecciones de formato AVIF hasta nuestro lienzo.',
44
+ },
45
+ {
46
+ name: 'Traducción de Bytes Algorítmicos',
47
+ text: 'Nuestro motor asimila los algoritmos sin subir nada y crea iteraciones exactas basadas en WebP comprimido.',
48
+ },
49
+ {
50
+ name: 'Acumula tus Descargas Listas',
51
+ text: 'Pulsa el panel y recibe lotes en cajas ZIP o sueltos para publicarlas directamente.',
52
+ },
53
+ ];
54
+
55
+ const seo: AvifAWebpLocaleContent['seo'] = [
56
+ {
57
+ type: 'title',
58
+ text: 'Convertidor AVIF a WebP: La Alternativa Moderna y Segura para la Web',
59
+ level: 2,
60
+ },
61
+ {
62
+ type: 'paragraph',
63
+ html: 'AVIF es el formato de imagen más avanzado disponible hoy: más pequeño que WebP, más pequeño que JPG, con calidad visual superior. Sin embargo, su adopción ha sido irregular - Safari no lo soportó hasta 2024, y muchos dispositivos móviles más antiguos lo desconocen. WebP, en cambio, lleva años consolidado como el estándar moderno de la web con más del 95% de soporte global. Convertir AVIF a WebP es la decisión pragmática cuando necesitas modernidad sin arriesgar la compatibilidad.',
64
+ },
65
+ {
66
+ type: 'title',
67
+ text: 'AVIF vs WebP: El Más Nuevo vs El Más Seguro',
68
+ level: 3,
69
+ },
70
+ {
71
+ type: 'paragraph',
72
+ html: 'AVIF ofrece la compresión más avanzada disponible - típicamente un 20-30% más pequeño que WebP a la misma calidad. Su tecnología basada en AV1 es la más moderna del sector. Sin embargo, el soporte de AVIF todavía tiene puntos ciegos: versiones antiguas de Safari, algunos navegadores en Android más antiguo, y ciertos reproductores de imagen de escritorio no lo reconocen. Para producción web con audiencias amplias y diversas, esto supone un riesgo.',
73
+ },
74
+ {
75
+ type: 'paragraph',
76
+ html: 'WebP tiene una historia de soporte mucho más sólida. Chrome lo adoptó en 2010, Firefox y Edge siguieron, y Safari lo incorporó en 2020. Con más del 95% de cobertura global en navegadores, WebP es la elección segura para cualquier sitio web que no quiera servir formatos de reserva. Soporta transparencias, compresión con y sin pérdida, y logra archivos mucho más pequeños que JPG o PNG.',
77
+ },
78
+ {
79
+ type: 'title',
80
+ text: 'Comparativa: Convertidores Cloud vs Nuestra Arquitectura Local',
81
+ level: 3,
82
+ },
83
+ {
84
+ type: 'comparative',
85
+ items: [
86
+ {
87
+ title: 'Convertidores Cloud',
88
+ description: 'Herramientas que suben tus archivos AVIF a un servidor remoto para procesarlos.',
89
+ icon: 'mdi:cloud-upload',
90
+ pointIcon: 'mdi:close-circle-outline',
91
+ points: [
92
+ 'Tus imágenes privadas transitan por servidores externos',
93
+ 'Latencia de red que ralentiza el flujo de trabajo',
94
+ 'Límites de archivos por conversión gratuita',
95
+ 'Dependencia de servicios de terceros que pueden cambiar',
96
+ ],
97
+ },
98
+ {
99
+ title: 'Nuestra Arquitectura Local',
100
+ description: 'Procesamiento directo en tu navegador mediante tecnología Vanilla JS y Canvas API.',
101
+ icon: 'mdi:laptop-mac',
102
+ highlight: true,
103
+ points: [
104
+ 'Privacidad total - 0 bytes salen de tu dispositivo',
105
+ 'Velocidad instantánea sin dependencia de red',
106
+ 'Sin límites de tamaño ni de número de archivos',
107
+ 'Funciona sin conexión a internet',
108
+ ],
109
+ },
110
+ ],
111
+ },
112
+ {
113
+ type: 'title',
114
+ text: 'Cómo funciona la conversión técnica en el navegador',
115
+ level: 3,
116
+ },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'Chrome, Firefox y Edge incluyen decodificadores AVIF nativos. Al cargar el archivo, el motor de imágenes del navegador lo decodifica en RAM manteniendo la información de canal alfa. La imagen se pinta sobre un <code>Canvas</code> HTML5 invisible usando el contexto 2D, que preserva las transparencias correctamente.',
120
+ },
121
+ {
122
+ type: 'paragraph',
123
+ html: 'La exportación se realiza con <code>toBlob(\'image/webp\', quality)</code>. El navegador aplica el algoritmo de compresión WebP internamente, generando un Blob que incluye canal alfa si la imagen original lo tenía. Este Blob se convierte en enlace de descarga directa. El proceso completo ocurre en microsegundos sin ninguna comunicación con servidores externos.',
124
+ },
125
+ {
126
+ type: 'tip',
127
+ title: 'WebP: la elección pragmática del desarrollador moderno',
128
+ html: 'WebP tiene más del 95% de soporte en navegadores - AVIF está creciendo pero aún no llega a esa cifra. Para sitios en producción sin detección de formato adaptativa, WebP es la elección segura que cubre casi cualquier audiencia. Convierte tus AVIF a WebP y sirve imágenes modernas con confianza.',
129
+ },
130
+ {
131
+ type: 'title',
132
+ text: 'Casos de uso: cuándo elegir WebP sobre AVIF',
133
+ level: 3,
134
+ },
135
+ {
136
+ type: 'list',
137
+ icon: 'mdi:check-circle',
138
+ items: [
139
+ 'Sitios web que necesitan soporte en navegadores desde 2020 sin polyfills.',
140
+ 'CDNs y sistemas de entrega de imágenes que aceptan WebP pero no AVIF.',
141
+ 'Aplicaciones móviles híbridas con WebViews que pueden no soportar AVIF.',
142
+ 'Emails HTML modernos donde WebP tiene mayor soporte que AVIF.',
143
+ 'Plataformas CMS y ecommerce con soporte de imagen WebP establecido.',
144
+ ],
145
+ },
146
+ {
147
+ type: 'title',
148
+ text: 'Conclusión: Modernidad con compatibilidad garantizada',
149
+ level: 3,
150
+ },
151
+ {
152
+ type: 'paragraph',
153
+ html: 'AVIF es la vanguardia de la compresión de imágenes, pero WebP es la elección fiable y universal del ecosistema web moderno. Con nuestra herramienta, conviertes de lo más nuevo a lo más soportado en un instante - sin subir nada a ningún servidor, con privacidad total y sin límites de tamaño.',
154
+ },
155
+ ];
157
156
 
158
- export const content: AvifAWebpLocaleContent = {
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
- };
157
+
158
+ export const content: AvifAWebpLocaleContent = {
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
+ };