@jjlmoya/utils-converters 1.15.0 → 1.18.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 (397) hide show
  1. package/package.json +8 -4
  2. package/scripts/clean_titles.py +95 -0
  3. package/scripts/postinstall.mjs +27 -0
  4. package/src/category/i18n/de.ts +1 -1
  5. package/src/category/i18n/fr.ts +9 -9
  6. package/src/category/i18n/ru.ts +1 -1
  7. package/src/category/i18n/sv.ts +1 -1
  8. package/src/data.ts +0 -21
  9. package/src/layouts/PreviewLayout.astro +2 -1
  10. package/src/pages/[locale]/[slug].astro +28 -12
  11. package/src/tests/diacritics_density.test.ts +118 -0
  12. package/src/tests/inverted_punctuation.test.ts +84 -0
  13. package/src/tests/no_en_dash.test.ts +70 -0
  14. package/src/tests/pagespeed_best_practices.test.ts +198 -0
  15. package/src/tests/script_density.test.ts +94 -0
  16. package/src/tests/shared-test-helpers.ts +56 -0
  17. package/src/tests/tool_exports.test.ts +34 -0
  18. package/src/tool/avifAJpg/bibliography.ts +12 -0
  19. package/src/tool/avifAJpg/entry.ts +2 -0
  20. package/src/tool/avifAJpg/i18n/de.ts +2 -12
  21. package/src/tool/avifAJpg/i18n/en.ts +2 -12
  22. package/src/tool/avifAJpg/i18n/es.ts +2 -12
  23. package/src/tool/avifAJpg/i18n/fr.ts +11 -21
  24. package/src/tool/avifAJpg/i18n/id.ts +2 -12
  25. package/src/tool/avifAJpg/i18n/it.ts +2 -12
  26. package/src/tool/avifAJpg/i18n/ja.ts +1 -11
  27. package/src/tool/avifAJpg/i18n/ko.ts +1 -11
  28. package/src/tool/avifAJpg/i18n/nl.ts +2 -12
  29. package/src/tool/avifAJpg/i18n/pl.ts +2 -12
  30. package/src/tool/avifAJpg/i18n/pt.ts +2 -12
  31. package/src/tool/avifAJpg/i18n/ru.ts +7 -17
  32. package/src/tool/avifAJpg/i18n/sv.ts +2 -12
  33. package/src/tool/avifAJpg/i18n/tr.ts +1 -11
  34. package/src/tool/avifAJpg/i18n/zh.ts +4 -14
  35. package/src/tool/avifAJpg/seo.astro +2 -1
  36. package/src/tool/avifAPng/bibliography.ts +12 -0
  37. package/src/tool/avifAPng/entry.ts +2 -0
  38. package/src/tool/avifAPng/i18n/de.ts +4 -14
  39. package/src/tool/avifAPng/i18n/en.ts +4 -14
  40. package/src/tool/avifAPng/i18n/es.ts +4 -14
  41. package/src/tool/avifAPng/i18n/fr.ts +10 -20
  42. package/src/tool/avifAPng/i18n/id.ts +4 -14
  43. package/src/tool/avifAPng/i18n/it.ts +1 -11
  44. package/src/tool/avifAPng/i18n/ja.ts +1 -11
  45. package/src/tool/avifAPng/i18n/ko.ts +1 -11
  46. package/src/tool/avifAPng/i18n/nl.ts +4 -14
  47. package/src/tool/avifAPng/i18n/pl.ts +4 -14
  48. package/src/tool/avifAPng/i18n/pt.ts +4 -14
  49. package/src/tool/avifAPng/i18n/ru.ts +5 -15
  50. package/src/tool/avifAPng/i18n/sv.ts +4 -14
  51. package/src/tool/avifAPng/i18n/tr.ts +1 -11
  52. package/src/tool/avifAPng/i18n/zh.ts +3 -13
  53. package/src/tool/avifAPng/seo.astro +2 -1
  54. package/src/tool/avifAWebp/bibliography.ts +12 -0
  55. package/src/tool/avifAWebp/entry.ts +2 -0
  56. package/src/tool/avifAWebp/i18n/de.ts +6 -16
  57. package/src/tool/avifAWebp/i18n/en.ts +6 -16
  58. package/src/tool/avifAWebp/i18n/es.ts +6 -16
  59. package/src/tool/avifAWebp/i18n/fr.ts +13 -23
  60. package/src/tool/avifAWebp/i18n/id.ts +6 -16
  61. package/src/tool/avifAWebp/i18n/it.ts +1 -11
  62. package/src/tool/avifAWebp/i18n/ja.ts +1 -11
  63. package/src/tool/avifAWebp/i18n/ko.ts +2 -12
  64. package/src/tool/avifAWebp/i18n/nl.ts +6 -16
  65. package/src/tool/avifAWebp/i18n/pl.ts +6 -16
  66. package/src/tool/avifAWebp/i18n/pt.ts +6 -16
  67. package/src/tool/avifAWebp/i18n/ru.ts +7 -17
  68. package/src/tool/avifAWebp/i18n/sv.ts +6 -16
  69. package/src/tool/avifAWebp/i18n/tr.ts +2 -12
  70. package/src/tool/avifAWebp/i18n/zh.ts +6 -16
  71. package/src/tool/avifAWebp/seo.astro +2 -1
  72. package/src/tool/bmpAJpg/bibliography.ts +12 -0
  73. package/src/tool/bmpAJpg/entry.ts +2 -0
  74. package/src/tool/bmpAJpg/i18n/de.ts +1 -11
  75. package/src/tool/bmpAJpg/i18n/en.ts +1 -11
  76. package/src/tool/bmpAJpg/i18n/es.ts +1 -11
  77. package/src/tool/bmpAJpg/i18n/fr.ts +9 -19
  78. package/src/tool/bmpAJpg/i18n/id.ts +1 -11
  79. package/src/tool/bmpAJpg/i18n/it.ts +1 -11
  80. package/src/tool/bmpAJpg/i18n/ja.ts +1 -11
  81. package/src/tool/bmpAJpg/i18n/ko.ts +1 -11
  82. package/src/tool/bmpAJpg/i18n/nl.ts +1 -11
  83. package/src/tool/bmpAJpg/i18n/pl.ts +1 -11
  84. package/src/tool/bmpAJpg/i18n/pt.ts +1 -11
  85. package/src/tool/bmpAJpg/i18n/ru.ts +5 -15
  86. package/src/tool/bmpAJpg/i18n/sv.ts +1 -11
  87. package/src/tool/bmpAJpg/i18n/tr.ts +1 -11
  88. package/src/tool/bmpAJpg/i18n/zh.ts +1 -11
  89. package/src/tool/bmpAJpg/seo.astro +2 -1
  90. package/src/tool/bmpAPng/bibliography.ts +12 -0
  91. package/src/tool/bmpAPng/entry.ts +2 -0
  92. package/src/tool/bmpAPng/i18n/de.ts +2 -12
  93. package/src/tool/bmpAPng/i18n/en.ts +3 -13
  94. package/src/tool/bmpAPng/i18n/es.ts +2 -12
  95. package/src/tool/bmpAPng/i18n/fr.ts +12 -22
  96. package/src/tool/bmpAPng/i18n/id.ts +2 -12
  97. package/src/tool/bmpAPng/i18n/it.ts +2 -12
  98. package/src/tool/bmpAPng/i18n/ja.ts +1 -11
  99. package/src/tool/bmpAPng/i18n/ko.ts +1 -11
  100. package/src/tool/bmpAPng/i18n/nl.ts +2 -12
  101. package/src/tool/bmpAPng/i18n/pl.ts +2 -12
  102. package/src/tool/bmpAPng/i18n/pt.ts +2 -12
  103. package/src/tool/bmpAPng/i18n/ru.ts +9 -19
  104. package/src/tool/bmpAPng/i18n/sv.ts +2 -12
  105. package/src/tool/bmpAPng/i18n/tr.ts +1 -11
  106. package/src/tool/bmpAPng/i18n/zh.ts +1 -11
  107. package/src/tool/bmpAPng/seo.astro +2 -1
  108. package/src/tool/bmpAWebp/bibliography.ts +12 -0
  109. package/src/tool/bmpAWebp/entry.ts +2 -0
  110. package/src/tool/bmpAWebp/i18n/de.ts +8 -18
  111. package/src/tool/bmpAWebp/i18n/en.ts +8 -18
  112. package/src/tool/bmpAWebp/i18n/es.ts +8 -18
  113. package/src/tool/bmpAWebp/i18n/fr.ts +13 -23
  114. package/src/tool/bmpAWebp/i18n/id.ts +8 -18
  115. package/src/tool/bmpAWebp/i18n/it.ts +8 -18
  116. package/src/tool/bmpAWebp/i18n/ja.ts +7 -17
  117. package/src/tool/bmpAWebp/i18n/ko.ts +7 -17
  118. package/src/tool/bmpAWebp/i18n/nl.ts +8 -18
  119. package/src/tool/bmpAWebp/i18n/pl.ts +8 -18
  120. package/src/tool/bmpAWebp/i18n/pt.ts +8 -18
  121. package/src/tool/bmpAWebp/i18n/ru.ts +10 -20
  122. package/src/tool/bmpAWebp/i18n/sv.ts +8 -18
  123. package/src/tool/bmpAWebp/i18n/tr.ts +8 -18
  124. package/src/tool/bmpAWebp/i18n/zh.ts +8 -18
  125. package/src/tool/bmpAWebp/seo.astro +2 -1
  126. package/src/tool/gifAJpg/bibliography.ts +12 -0
  127. package/src/tool/gifAJpg/entry.ts +2 -0
  128. package/src/tool/gifAJpg/i18n/de.ts +1 -11
  129. package/src/tool/gifAJpg/i18n/en.ts +1 -11
  130. package/src/tool/gifAJpg/i18n/es.ts +1 -11
  131. package/src/tool/gifAJpg/i18n/fr.ts +9 -19
  132. package/src/tool/gifAJpg/i18n/id.ts +1 -11
  133. package/src/tool/gifAJpg/i18n/it.ts +1 -11
  134. package/src/tool/gifAJpg/i18n/ja.ts +1 -11
  135. package/src/tool/gifAJpg/i18n/ko.ts +1 -11
  136. package/src/tool/gifAJpg/i18n/nl.ts +1 -11
  137. package/src/tool/gifAJpg/i18n/pl.ts +1 -11
  138. package/src/tool/gifAJpg/i18n/pt.ts +1 -11
  139. package/src/tool/gifAJpg/i18n/ru.ts +2 -12
  140. package/src/tool/gifAJpg/i18n/sv.ts +1 -11
  141. package/src/tool/gifAJpg/i18n/tr.ts +1 -11
  142. package/src/tool/gifAJpg/i18n/zh.ts +1 -11
  143. package/src/tool/gifAJpg/seo.astro +2 -1
  144. package/src/tool/gifAPng/bibliography.ts +12 -0
  145. package/src/tool/gifAPng/entry.ts +2 -0
  146. package/src/tool/gifAPng/i18n/de.ts +2 -12
  147. package/src/tool/gifAPng/i18n/en.ts +3 -13
  148. package/src/tool/gifAPng/i18n/es.ts +2 -12
  149. package/src/tool/gifAPng/i18n/fr.ts +11 -21
  150. package/src/tool/gifAPng/i18n/id.ts +2 -12
  151. package/src/tool/gifAPng/i18n/it.ts +2 -12
  152. package/src/tool/gifAPng/i18n/ja.ts +1 -11
  153. package/src/tool/gifAPng/i18n/ko.ts +1 -11
  154. package/src/tool/gifAPng/i18n/nl.ts +2 -12
  155. package/src/tool/gifAPng/i18n/pl.ts +3 -13
  156. package/src/tool/gifAPng/i18n/pt.ts +2 -12
  157. package/src/tool/gifAPng/i18n/ru.ts +3 -13
  158. package/src/tool/gifAPng/i18n/sv.ts +3 -13
  159. package/src/tool/gifAPng/i18n/tr.ts +1 -11
  160. package/src/tool/gifAPng/i18n/zh.ts +2 -12
  161. package/src/tool/gifAPng/seo.astro +2 -1
  162. package/src/tool/gifAWebp/bibliography.ts +12 -0
  163. package/src/tool/gifAWebp/entry.ts +2 -0
  164. package/src/tool/gifAWebp/i18n/de.ts +3 -13
  165. package/src/tool/gifAWebp/i18n/en.ts +3 -13
  166. package/src/tool/gifAWebp/i18n/es.ts +1 -11
  167. package/src/tool/gifAWebp/i18n/fr.ts +11 -21
  168. package/src/tool/gifAWebp/i18n/id.ts +3 -13
  169. package/src/tool/gifAWebp/i18n/it.ts +1 -11
  170. package/src/tool/gifAWebp/i18n/ja.ts +1 -11
  171. package/src/tool/gifAWebp/i18n/ko.ts +1 -11
  172. package/src/tool/gifAWebp/i18n/nl.ts +3 -13
  173. package/src/tool/gifAWebp/i18n/pl.ts +3 -13
  174. package/src/tool/gifAWebp/i18n/pt.ts +3 -13
  175. package/src/tool/gifAWebp/i18n/ru.ts +7 -17
  176. package/src/tool/gifAWebp/i18n/sv.ts +3 -13
  177. package/src/tool/gifAWebp/i18n/tr.ts +1 -11
  178. package/src/tool/gifAWebp/i18n/zh.ts +4 -14
  179. package/src/tool/gifAWebp/seo.astro +2 -1
  180. package/src/tool/imagenBase64/bibliography.ts +12 -0
  181. package/src/tool/imagenBase64/component.astro +0 -301
  182. package/src/tool/imagenBase64/entry.ts +2 -0
  183. package/src/tool/imagenBase64/i18n/de.ts +7 -17
  184. package/src/tool/imagenBase64/i18n/en.ts +7 -17
  185. package/src/tool/imagenBase64/i18n/es.ts +7 -17
  186. package/src/tool/imagenBase64/i18n/fr.ts +17 -27
  187. package/src/tool/imagenBase64/i18n/id.ts +7 -17
  188. package/src/tool/imagenBase64/i18n/it.ts +6 -16
  189. package/src/tool/imagenBase64/i18n/ja.ts +1 -11
  190. package/src/tool/imagenBase64/i18n/ko.ts +1 -11
  191. package/src/tool/imagenBase64/i18n/nl.ts +7 -17
  192. package/src/tool/imagenBase64/i18n/pl.ts +7 -17
  193. package/src/tool/imagenBase64/i18n/pt.ts +7 -17
  194. package/src/tool/imagenBase64/i18n/ru.ts +9 -19
  195. package/src/tool/imagenBase64/i18n/sv.ts +7 -17
  196. package/src/tool/imagenBase64/i18n/tr.ts +2 -12
  197. package/src/tool/imagenBase64/i18n/zh.ts +7 -17
  198. package/src/tool/imagenBase64/image-to-base64-converter.css +299 -0
  199. package/src/tool/imagenBase64/seo.astro +2 -1
  200. package/src/tool/jpgAIco/bibliography.ts +12 -0
  201. package/src/tool/jpgAIco/entry.ts +2 -0
  202. package/src/tool/jpgAIco/i18n/de.ts +9 -19
  203. package/src/tool/jpgAIco/i18n/en.ts +9 -19
  204. package/src/tool/jpgAIco/i18n/es.ts +7 -17
  205. package/src/tool/jpgAIco/i18n/fr.ts +13 -23
  206. package/src/tool/jpgAIco/i18n/id.ts +9 -19
  207. package/src/tool/jpgAIco/i18n/it.ts +3 -13
  208. package/src/tool/jpgAIco/i18n/ja.ts +2 -12
  209. package/src/tool/jpgAIco/i18n/ko.ts +2 -12
  210. package/src/tool/jpgAIco/i18n/nl.ts +9 -19
  211. package/src/tool/jpgAIco/i18n/pl.ts +9 -19
  212. package/src/tool/jpgAIco/i18n/pt.ts +9 -19
  213. package/src/tool/jpgAIco/i18n/ru.ts +11 -21
  214. package/src/tool/jpgAIco/i18n/sv.ts +9 -19
  215. package/src/tool/jpgAIco/i18n/tr.ts +3 -13
  216. package/src/tool/jpgAIco/i18n/zh.ts +9 -19
  217. package/src/tool/jpgAIco/seo.astro +2 -1
  218. package/src/tool/jpgAPng/bibliography.ts +12 -0
  219. package/src/tool/jpgAPng/entry.ts +2 -0
  220. package/src/tool/jpgAPng/i18n/de.ts +7 -17
  221. package/src/tool/jpgAPng/i18n/en.ts +9 -19
  222. package/src/tool/jpgAPng/i18n/es.ts +7 -17
  223. package/src/tool/jpgAPng/i18n/fr.ts +13 -23
  224. package/src/tool/jpgAPng/i18n/id.ts +7 -17
  225. package/src/tool/jpgAPng/i18n/it.ts +5 -15
  226. package/src/tool/jpgAPng/i18n/ja.ts +3 -13
  227. package/src/tool/jpgAPng/i18n/ko.ts +3 -13
  228. package/src/tool/jpgAPng/i18n/nl.ts +7 -17
  229. package/src/tool/jpgAPng/i18n/pl.ts +7 -17
  230. package/src/tool/jpgAPng/i18n/pt.ts +7 -17
  231. package/src/tool/jpgAPng/i18n/ru.ts +10 -20
  232. package/src/tool/jpgAPng/i18n/sv.ts +7 -17
  233. package/src/tool/jpgAPng/i18n/tr.ts +6 -16
  234. package/src/tool/jpgAPng/i18n/zh.ts +8 -18
  235. package/src/tool/jpgAPng/seo.astro +2 -1
  236. package/src/tool/jpgAWebp/bibliography.ts +12 -0
  237. package/src/tool/jpgAWebp/entry.ts +2 -0
  238. package/src/tool/jpgAWebp/i18n/de.ts +10 -20
  239. package/src/tool/jpgAWebp/i18n/en.ts +10 -20
  240. package/src/tool/jpgAWebp/i18n/es.ts +4 -14
  241. package/src/tool/jpgAWebp/i18n/fr.ts +16 -26
  242. package/src/tool/jpgAWebp/i18n/id.ts +10 -20
  243. package/src/tool/jpgAWebp/i18n/it.ts +6 -16
  244. package/src/tool/jpgAWebp/i18n/ja.ts +2 -12
  245. package/src/tool/jpgAWebp/i18n/ko.ts +3 -13
  246. package/src/tool/jpgAWebp/i18n/nl.ts +10 -20
  247. package/src/tool/jpgAWebp/i18n/pl.ts +10 -20
  248. package/src/tool/jpgAWebp/i18n/pt.ts +10 -20
  249. package/src/tool/jpgAWebp/i18n/ru.ts +10 -20
  250. package/src/tool/jpgAWebp/i18n/sv.ts +10 -20
  251. package/src/tool/jpgAWebp/i18n/tr.ts +5 -15
  252. package/src/tool/jpgAWebp/i18n/zh.ts +9 -19
  253. package/src/tool/jpgAWebp/seo.astro +2 -1
  254. package/src/tool/pngAIco/bibliography.ts +12 -0
  255. package/src/tool/pngAIco/entry.ts +2 -0
  256. package/src/tool/pngAIco/i18n/de.ts +8 -18
  257. package/src/tool/pngAIco/i18n/en.ts +8 -18
  258. package/src/tool/pngAIco/i18n/es.ts +8 -18
  259. package/src/tool/pngAIco/i18n/fr.ts +14 -24
  260. package/src/tool/pngAIco/i18n/id.ts +8 -18
  261. package/src/tool/pngAIco/i18n/it.ts +4 -14
  262. package/src/tool/pngAIco/i18n/ja.ts +2 -12
  263. package/src/tool/pngAIco/i18n/ko.ts +2 -12
  264. package/src/tool/pngAIco/i18n/nl.ts +8 -18
  265. package/src/tool/pngAIco/i18n/pl.ts +8 -18
  266. package/src/tool/pngAIco/i18n/pt.ts +8 -18
  267. package/src/tool/pngAIco/i18n/ru.ts +11 -21
  268. package/src/tool/pngAIco/i18n/sv.ts +8 -18
  269. package/src/tool/pngAIco/i18n/tr.ts +7 -17
  270. package/src/tool/pngAIco/i18n/zh.ts +8 -18
  271. package/src/tool/pngAIco/seo.astro +2 -1
  272. package/src/tool/pngAJpg/bibliography.ts +12 -0
  273. package/src/tool/pngAJpg/entry.ts +2 -0
  274. package/src/tool/pngAJpg/i18n/de.ts +1 -11
  275. package/src/tool/pngAJpg/i18n/en.ts +1 -11
  276. package/src/tool/pngAJpg/i18n/es.ts +1 -11
  277. package/src/tool/pngAJpg/i18n/fr.ts +3 -13
  278. package/src/tool/pngAJpg/i18n/id.ts +1 -11
  279. package/src/tool/pngAJpg/i18n/it.ts +1 -11
  280. package/src/tool/pngAJpg/i18n/ja.ts +1 -11
  281. package/src/tool/pngAJpg/i18n/ko.ts +1 -11
  282. package/src/tool/pngAJpg/i18n/nl.ts +1 -11
  283. package/src/tool/pngAJpg/i18n/pl.ts +7 -17
  284. package/src/tool/pngAJpg/i18n/pt.ts +1 -11
  285. package/src/tool/pngAJpg/i18n/ru.ts +9 -19
  286. package/src/tool/pngAJpg/i18n/sv.ts +1 -11
  287. package/src/tool/pngAJpg/i18n/tr.ts +1 -11
  288. package/src/tool/pngAJpg/i18n/zh.ts +6 -16
  289. package/src/tool/pngAJpg/seo.astro +2 -1
  290. package/src/tool/pngAWebp/bibliography.ts +16 -0
  291. package/src/tool/pngAWebp/entry.ts +2 -0
  292. package/src/tool/pngAWebp/i18n/de.ts +7 -21
  293. package/src/tool/pngAWebp/i18n/en.ts +7 -21
  294. package/src/tool/pngAWebp/i18n/es.ts +6 -20
  295. package/src/tool/pngAWebp/i18n/fr.ts +13 -27
  296. package/src/tool/pngAWebp/i18n/id.ts +7 -21
  297. package/src/tool/pngAWebp/i18n/it.ts +3 -17
  298. package/src/tool/pngAWebp/i18n/ja.ts +2 -16
  299. package/src/tool/pngAWebp/i18n/ko.ts +2 -16
  300. package/src/tool/pngAWebp/i18n/nl.ts +7 -21
  301. package/src/tool/pngAWebp/i18n/pl.ts +7 -21
  302. package/src/tool/pngAWebp/i18n/pt.ts +6 -20
  303. package/src/tool/pngAWebp/i18n/ru.ts +8 -22
  304. package/src/tool/pngAWebp/i18n/sv.ts +7 -21
  305. package/src/tool/pngAWebp/i18n/tr.ts +6 -20
  306. package/src/tool/pngAWebp/i18n/zh.ts +6 -20
  307. package/src/tool/pngAWebp/seo.astro +2 -1
  308. package/src/tool/svgAJpg/bibliography.ts +12 -0
  309. package/src/tool/svgAJpg/entry.ts +2 -0
  310. package/src/tool/svgAJpg/i18n/de.ts +2 -12
  311. package/src/tool/svgAJpg/i18n/en.ts +1 -11
  312. package/src/tool/svgAJpg/i18n/es.ts +1 -11
  313. package/src/tool/svgAJpg/i18n/fr.ts +6 -16
  314. package/src/tool/svgAJpg/i18n/id.ts +1 -11
  315. package/src/tool/svgAJpg/i18n/it.ts +1 -11
  316. package/src/tool/svgAJpg/i18n/ja.ts +1 -11
  317. package/src/tool/svgAJpg/i18n/ko.ts +1 -11
  318. package/src/tool/svgAJpg/i18n/nl.ts +1 -11
  319. package/src/tool/svgAJpg/i18n/pl.ts +1 -11
  320. package/src/tool/svgAJpg/i18n/pt.ts +1 -11
  321. package/src/tool/svgAJpg/i18n/ru.ts +3 -13
  322. package/src/tool/svgAJpg/i18n/sv.ts +1 -11
  323. package/src/tool/svgAJpg/i18n/tr.ts +1 -11
  324. package/src/tool/svgAJpg/i18n/zh.ts +1 -11
  325. package/src/tool/svgAJpg/seo.astro +2 -1
  326. package/src/tool/svgAPng/bibliography.ts +12 -0
  327. package/src/tool/svgAPng/entry.ts +2 -0
  328. package/src/tool/svgAPng/i18n/de.ts +3 -13
  329. package/src/tool/svgAPng/i18n/en.ts +3 -13
  330. package/src/tool/svgAPng/i18n/es.ts +1 -11
  331. package/src/tool/svgAPng/i18n/fr.ts +9 -19
  332. package/src/tool/svgAPng/i18n/id.ts +3 -13
  333. package/src/tool/svgAPng/i18n/it.ts +3 -13
  334. package/src/tool/svgAPng/i18n/ja.ts +1 -11
  335. package/src/tool/svgAPng/i18n/ko.ts +1 -11
  336. package/src/tool/svgAPng/i18n/nl.ts +3 -13
  337. package/src/tool/svgAPng/i18n/pl.ts +3 -13
  338. package/src/tool/svgAPng/i18n/pt.ts +3 -13
  339. package/src/tool/svgAPng/i18n/ru.ts +5 -15
  340. package/src/tool/svgAPng/i18n/sv.ts +3 -13
  341. package/src/tool/svgAPng/i18n/tr.ts +3 -13
  342. package/src/tool/svgAPng/i18n/zh.ts +3 -13
  343. package/src/tool/svgAPng/seo.astro +2 -1
  344. package/src/tool/webpAIco/bibliography.ts +12 -0
  345. package/src/tool/webpAIco/entry.ts +2 -0
  346. package/src/tool/webpAIco/i18n/de.ts +1 -11
  347. package/src/tool/webpAIco/i18n/en.ts +1 -11
  348. package/src/tool/webpAIco/i18n/es.ts +1 -11
  349. package/src/tool/webpAIco/i18n/fr.ts +5 -15
  350. package/src/tool/webpAIco/i18n/id.ts +1 -11
  351. package/src/tool/webpAIco/i18n/it.ts +1 -11
  352. package/src/tool/webpAIco/i18n/ja.ts +1 -11
  353. package/src/tool/webpAIco/i18n/ko.ts +1 -11
  354. package/src/tool/webpAIco/i18n/nl.ts +1 -11
  355. package/src/tool/webpAIco/i18n/pl.ts +1 -11
  356. package/src/tool/webpAIco/i18n/pt.ts +1 -11
  357. package/src/tool/webpAIco/i18n/ru.ts +3 -13
  358. package/src/tool/webpAIco/i18n/sv.ts +1 -11
  359. package/src/tool/webpAIco/i18n/tr.ts +1 -11
  360. package/src/tool/webpAIco/i18n/zh.ts +1 -12
  361. package/src/tool/webpAIco/seo.astro +2 -1
  362. package/src/tool/webpAJpg/bibliography.ts +16 -0
  363. package/src/tool/webpAJpg/entry.ts +2 -0
  364. package/src/tool/webpAJpg/i18n/de.ts +3 -17
  365. package/src/tool/webpAJpg/i18n/en.ts +3 -17
  366. package/src/tool/webpAJpg/i18n/es.ts +1 -15
  367. package/src/tool/webpAJpg/i18n/fr.ts +10 -24
  368. package/src/tool/webpAJpg/i18n/id.ts +3 -17
  369. package/src/tool/webpAJpg/i18n/it.ts +2 -16
  370. package/src/tool/webpAJpg/i18n/ja.ts +1 -15
  371. package/src/tool/webpAJpg/i18n/ko.ts +1 -15
  372. package/src/tool/webpAJpg/i18n/nl.ts +2 -16
  373. package/src/tool/webpAJpg/i18n/pl.ts +3 -17
  374. package/src/tool/webpAJpg/i18n/pt.ts +3 -17
  375. package/src/tool/webpAJpg/i18n/ru.ts +7 -21
  376. package/src/tool/webpAJpg/i18n/sv.ts +3 -17
  377. package/src/tool/webpAJpg/i18n/tr.ts +2 -16
  378. package/src/tool/webpAJpg/i18n/zh.ts +2 -16
  379. package/src/tool/webpAJpg/seo.astro +2 -1
  380. package/src/tool/webpAPng/bibliography.ts +16 -0
  381. package/src/tool/webpAPng/entry.ts +2 -0
  382. package/src/tool/webpAPng/i18n/de.ts +3 -17
  383. package/src/tool/webpAPng/i18n/en.ts +3 -17
  384. package/src/tool/webpAPng/i18n/es.ts +1 -15
  385. package/src/tool/webpAPng/i18n/fr.ts +9 -23
  386. package/src/tool/webpAPng/i18n/id.ts +3 -17
  387. package/src/tool/webpAPng/i18n/it.ts +3 -17
  388. package/src/tool/webpAPng/i18n/ja.ts +1 -15
  389. package/src/tool/webpAPng/i18n/ko.ts +1 -15
  390. package/src/tool/webpAPng/i18n/nl.ts +3 -17
  391. package/src/tool/webpAPng/i18n/pl.ts +3 -17
  392. package/src/tool/webpAPng/i18n/pt.ts +3 -17
  393. package/src/tool/webpAPng/i18n/ru.ts +4 -18
  394. package/src/tool/webpAPng/i18n/sv.ts +3 -17
  395. package/src/tool/webpAPng/i18n/tr.ts +2 -17
  396. package/src/tool/webpAPng/i18n/zh.ts +3 -17
  397. package/src/tool/webpAPng/seo.astro +2 -1
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 adalah teknik pengkodean yang mengubah data biner seperti gambar menjadi string teks ASCII murni. Hasilnya adalah Data URI: URL mandiri yang dimulai dengan <code>data:image/png;base64,...</code> dan berisi seluruh gambar yang dikodekan. Dengan menyematkan kode ini langsung di HTML, CSS, atau JSON Anda, gambar akan dimuat tanpa permintaan HTTP tambahan ke server nol latensi jaringan, pemuatan instan.',
72
+ html: 'Base64 adalah teknik pengkodean yang mengubah data biner - seperti gambar - menjadi string teks ASCII murni. Hasilnya adalah Data URI: URL mandiri yang dimulai dengan <code>data:image/png;base64,...</code> dan berisi seluruh gambar yang dikodekan. Dengan menyematkan kode ini langsung di HTML, CSS, atau JSON Anda, gambar akan dimuat tanpa permintaan HTTP tambahan ke server - nol latensi jaringan, pemuatan instan.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'Argumen utama untuk Base64 adalah penghapusan permintaan jaringan. Setiap gambar pada halaman web berarti permintaan HTTP dengan overhead koneksi, DNS, jabat tangan TLS, dan latensi. Untuk gambar kritis yang sangat kecil logo aplikasi utama, favicon, ikon UI menyematkannya dalam Base64 di CSS atau HTML akan menghapus biaya tersebut dan menjamin gambar ditampilkan secara instan bahkan sebelum browser menyimpan apa pun di cache.',
81
+ html: 'Argumen utama untuk Base64 adalah penghapusan permintaan jaringan. Setiap gambar pada halaman web berarti permintaan HTTP dengan overhead koneksi, DNS, jabat tangan TLS, dan latensi. Untuk gambar kritis yang sangat kecil - logo aplikasi utama, favicon, ikon UI - menyematkannya dalam Base64 di CSS atau HTML akan menghapus biaya tersebut dan menjamin gambar ditampilkan secara instan bahkan sebelum browser menyimpan apa pun di cache.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'Saat Anda memilih atau menarik gambar, API <code>FileReader</code> browser membacanya langsung dari disk sebagai data biner di RAM. Metode <code>readAsDataURL()</code> mengubah byte biner tersebut menjadi representasi Base64 menggunakan algoritme RFC 4648 setiap 3 byte data asli direpresentasikan sebagai 4 karakter ASCII dari alfabet Base64. Hasilnya mencakup tipe MIME yang benar yang dideteksi secara otomatis.',
110
+ html: 'Saat Anda memilih atau menarik gambar, API <code>FileReader</code> browser membacanya langsung dari disk sebagai data biner di RAM. Metode <code>readAsDataURL()</code> mengubah byte biner tersebut menjadi representasi Base64 menggunakan algoritme RFC 4648 - setiap 3 byte data asli direpresentasikan sebagai 4 karakter ASCII dari alfabet Base64. Hasilnya mencakup tipe MIME yang benar yang dideteksi secara otomatis.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Gunakan hanya untuk gambar kecil (di bawah 10 KB)',
125
- html: 'Base64 meningkatkan ukuran file sekitar 33%: gambar 10 KB menjadi teks ~13,3 KB. Untuk ikon dan logo kecil, biaya ini minimal dan penghapusan permintaan HTTP mengimbanginya. Untuk foto atau gambar besar, overhead ukurannya signifikan selalu gunakan CDN untuk gambar besar.',
115
+ html: 'Base64 meningkatkan ukuran file sekitar 33%: gambar 10 KB menjadi teks ~13,3 KB. Untuk ikon dan logo kecil, biaya ini minimal dan penghapusan permintaan HTTP mengimbanginya. Untuk foto atau gambar besar, overhead ukurannya signifikan - selalu gunakan CDN untuk gambar besar.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Hindari Base64 untuk gambar besar gunakan CDN sebagai gantinya',
124
+ title: 'Hindari Base64 untuk gambar besar: gunakan CDN sebagai gantinya',
135
125
  html: 'Jika Anda memiliki gambar yang lebih besar dari 10-20 KB, Base64 merusak kinerja: ia membengkakkan ukuran HTML/CSS, mencegah browser menyimpan gambar secara independen di cache, dan memblokir rendering saat parser memproses string raksasa tersebut. Untuk gambar besar, selalu sajikan dari CDN dengan header cache yang sesuai.',
136
126
  },
137
127
  {
@@ -141,7 +131,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
141
131
  },
142
132
  {
143
133
  type: 'paragraph',
144
- html: 'Data URI kompatibel dengan 100% browser modern dan sebagian besar klien email. Alat kami memproses semuanya secara lokal melalui API FileReader gambar Anda tidak pernah meninggalkan perangkat Anda. Hal ini membuatnya cocok untuk gambar perusahaan, tangkapan layar pribadi, atau konten visual rahasia apa pun yang perlu Anda konversi ke Base64.',
134
+ html: 'Data URI kompatibel dengan 100% browser modern dan sebagian besar klien email. Alat kami memproses semuanya secara lokal melalui API FileReader - gambar Anda tidak pernah meninggalkan perangkat Anda. Hal ini membuatnya cocok untuk gambar perusahaan, tangkapan layar pribadi, atau konten visual rahasia apa pun yang perlu Anda konversi ke Base64.',
145
135
  },
146
136
  {
147
137
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 è una tecnica di codifica che trasforma i dati binari come un\'immagine in una stringa di testo ASCII pura. Il risultato è un Data URI: un URL autonomo che inizia con <code>data:image/png;base64,...</code> e contiene l\'intera immagine codificata. Incorporando questo codice direttamente nel tuo HTML, CSS o JSON, l\'immagine viene caricata senza alcuna richiesta HTTP aggiuntiva al server latenza di rete zero, caricamento istantaneo.',
72
+ html: 'Base64 è una tecnica di codifica che trasforma i dati binari - come un\'immagine - in una stringa di testo ASCII pura. Il risultato è un Data URI: un URL autonomo che inizia con <code>data:image/png;base64,...</code> e contiene l\'intera immagine codificata. Incorporando questo codice direttamente nel tuo HTML, CSS o JSON, l\'immagine viene caricata senza alcuna richiesta HTTP aggiuntiva al server - latenza di rete zero, caricamento istantaneo.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'L\'argomento principale a favore di Base64 è l\'eliminazione delle richieste di rete. Ogni immagine su una pagina web significa una richiesta HTTP con il suo overhead di connessione, DNS, handshake TLS e latenza. Per immagini critiche molto piccole il logo principale dell\'applicazione, la favicon, un\'icona dell\'interfaccia utente incorporarle in Base64 nel CSS o nell\'HTML elimina quel costo e garantisce che vengano visualizzate istantaneamente anche prima che il browser abbia memorizzato qualcosa in cache.',
81
+ html: 'L\'argomento principale a favore di Base64 è l\'eliminazione delle richieste di rete. Ogni immagine su una pagina web significa una richiesta HTTP con il suo overhead di connessione, DNS, handshake TLS e latenza. Per immagini critiche molto piccole - il logo principale dell\'applicazione, la favicon, un\'icona dell\'interfaccia utente - incorporarle in Base64 nel CSS o nell\'HTML elimina quel costo e garantisce che vengano visualizzate istantaneamente anche prima che il browser abbia memorizzato qualcosa in cache.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'Quando selezioni o trascini un\'immagine, l\'API <code>FileReader</code> del browser la legge direttamente dal disco come dati binari nella RAM. Il metodo <code>readAsDataURL()</code> converte quei byte binari nella loro rappresentazione Base64 utilizzando l\'algoritmo RFC 4648 ogni 3 byte di dati originali sono rappresentati come 4 caratteri ASCII dall\'alfabeto Base64. Il risultato include il tipo MIME corretto rilevato automaticamente.',
110
+ html: 'Quando selezioni o trascini un\'immagine, l\'API <code>FileReader</code> del browser la legge direttamente dal disco come dati binari nella RAM. Il metodo <code>readAsDataURL()</code> converte quei byte binari nella loro rappresentazione Base64 utilizzando l\'algoritmo RFC 4648 - ogni 3 byte di dati originali sono rappresentati come 4 caratteri ASCII dall\'alfabeto Base64. Il risultato include il tipo MIME corretto rilevato automaticamente.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Usalo solo per immagini piccole (sotto i 10 KB)',
125
- html: 'Base64 aumenta la dimensione del file di circa il 33%: un\'immagine da 10 KB diventa circa 13,3 KB di testo. Per icone e logo piccoli questo costo è minimo e l\'eliminazione della richiesta HTTP lo compensa. Per fotografie o immagini di grandi dimensioni, il sovrapprezzo dimensionale è significativo usa sempre una CDN per le immagini grandi.',
115
+ html: 'Base64 aumenta la dimensione del file di circa il 33%: un\'immagine da 10 KB diventa circa 13,3 KB di testo. Per icone e logo piccoli questo costo è minimo e l\'eliminazione della richiesta HTTP lo compensa. Per fotografie o immagini di grandi dimensioni, il sovrapprezzo dimensionale è significativo - usa sempre una CDN per le immagini grandi.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Evita Base64 per immagini grandi usa invece una CDN',
124
+ title: 'Evita Base64 per immagini grandi: usa invece una CDN',
135
125
  html: 'Se hai immagini più grandi di 10-20 KB, Base64 danneggia le prestazioni: gonfia la dimensione di HTML/CSS, impedisce al browser di memorizzare l\'immagine in cache in modo indipendente e blocca il rendering mentre il parser elabora la stringa gigante. Per le immagini grandi, servi sempre da una CDN con intestazioni di cache appropriate.',
136
126
  },
137
127
  {
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Codering RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 is een coderingstechniek die binaire data zoals een afbeelding transformeert naar een pure ASCII-tekstreeks. Het resultaat is een Data URI: een onafhankelijke URL die begint met <code>data:image/png;base64,...</code> en de volledige gecodeerde afbeelding bevat. Door deze code direct in je HTML, CSS of JSON in te sluiten, wordt de afbeelding geladen zonder enig extra HTTP-verzoek aan de server nul netwerklatentie, direct laden.',
72
+ html: 'Base64 is een coderingstechniek die binaire data - zoals een afbeelding - transformeert naar een pure ASCII-tekstreeks. Het resultaat is een Data URI: een onafhankelijke URL die begint met <code>data:image/png;base64,...</code> en de volledige gecodeerde afbeelding bevat. Door deze code direct in je HTML, CSS of JSON in te sluiten, wordt de afbeelding geladen zonder enig extra HTTP-verzoek aan de server - nul netwerklatentie, direct laden.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'Het belangrijkste argument voor Base64 is het elimineren van netwerkverzoeken. Elke afbeelding op een webpagina betekent een HTTP-verzoek met bijbehorende overhead van verbinding, DNS, TLS-handshake en latentie. Voor zeer kleine kritieke afbeeldingen het hoofdbestand van de applicatie, favicon, een UI-icoon elimineert het insluiten in Base64 in de CSS of HTML die kosten en garandeert het dat ze onmiddellijk worden weergegeven, zelfs voordat de browser iets heeft kunnen cachen.',
81
+ html: 'Het belangrijkste argument voor Base64 is het elimineren van netwerkverzoeken. Elke afbeelding op een webpagina betekent een HTTP-verzoek met bijbehorende overhead van verbinding, DNS, TLS-handshake en latentie. Voor zeer kleine kritieke afbeeldingen - het hoofdbestand van de applicatie, favicon, een UI-icoon - elimineert het insluiten in Base64 in de CSS of HTML die kosten en garandeert het dat ze onmiddellijk worden weergegeven, zelfs voordat de browser iets heeft kunnen cachen.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'Wanneer je een afbeelding selecteert of sleept, leest de <code>FileReader</code>-API van de browser deze direct van de schijf als binaire data in het RAM. De methode <code>readAsDataURL()</code> converteert die binaire bytes naar hun Base64-representatie met behulp van het RFC 4648-algoritme elke 3 bytes aan originele data worden weergegeven als 4 ASCII-tekens uit het Base64-alfabet. Het resultaat bevat het automatisch gedetecteerde correcte MIME-type.',
110
+ html: 'Wanneer je een afbeelding selecteert of sleept, leest de <code>FileReader</code>-API van de browser deze direct van de schijf als binaire data in het RAM. De methode <code>readAsDataURL()</code> converteert die binaire bytes naar hun Base64-representatie met behulp van het RFC 4648-algoritme - elke 3 bytes aan originele data worden weergegeven als 4 ASCII-tekens uit het Base64-alfabet. Het resultaat bevat het automatisch gedetecteerde correcte MIME-type.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Gebruik het alleen voor kleine afbeeldingen (onder de 10 KB)',
125
- html: 'Base64 verhoogt de bestandsgrootte met ongeveer 33%: een afbeelding van 10 KB wordt ~13,3 KB aan tekst. Voor kleine iconen en logo\'s zijn deze kosten minimaal en compenseert de eliminatie van het HTTP-verzoek dit. Voor foto\'s of grote afbeeldingen is de extra grootte aanzienlijk gebruik altijd een CDN voor grote afbeeldingen.',
115
+ html: 'Base64 verhoogt de bestandsgrootte met ongeveer 33%: een afbeelding van 10 KB wordt ~13,3 KB aan tekst. Voor kleine iconen en logo\'s zijn deze kosten minimaal en compenseert de eliminatie van het HTTP-verzoek dit. Voor foto\'s of grote afbeeldingen is de extra grootte aanzienlijk - gebruik altijd een CDN voor grote afbeeldingen.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Vermijd Base64 voor grote afbeeldingen gebruik een CDN',
124
+ title: 'Vermijd Base64 voor grote afbeeldingen: gebruik een CDN',
135
125
  html: 'Als je afbeeldingen hebt die groter zijn dan 10-20 KB, schaad Base64 de prestaties: het blaast de HTML/CSS-grootte op, voorkomt dat de browser de afbeelding onafhankelijk kan cachen en blokkeert de rendering terwijl de parser de gigantische string verwerkt. Gebruik voor grote afbeeldingen altijd een CDN met de juiste cache-headers.',
136
126
  },
137
127
  {
@@ -141,7 +131,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
141
131
  },
142
132
  {
143
133
  type: 'paragraph',
144
- html: 'Data URI\'s zijn compatibel met 100% van de moderne browsers en de meeste e-mailclients. Onze tool verwerkt alles lokaal via de FileReader-API je afbeeldingen verlaten nooit je apparaat. Dit maakt het geschikt voor bedrijfsafbeeldingen, privé-screenshots of andere vertrouwelijke visuele inhoud die je naar Base64 wilt converteren.',
134
+ html: 'Data URI\'s zijn compatibel met 100% van de moderne browsers en de meeste e-mailclients. Onze tool verwerkt alles lokaal via de FileReader-API - je afbeeldingen verlaten nooit je apparaat. Dit maakt het geschikt voor bedrijfsafbeeldingen, privé-screenshots of andere vertrouwelijke visuele inhoud die je naar Base64 wilt converteren.',
145
135
  },
146
136
  {
147
137
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 to technika kodowania, która przekształca dane binarne takie jak obraz w czysty ciąg tekstowy ASCII. Wynikiem jest Data URI: samodzielny adres URL zaczynający się od <code>data:image/png;base64,...</code>, który zawiera cały zakodowany obraz. Osadzając ten kod bezpośrednio w HTML, CSS lub JSON, obraz ładuje się bez żadnego dodatkowego żądania HTTP do serwera zero opóźnień sieciowych, natychmiastowe ładowanie.',
72
+ html: 'Base64 to technika kodowania, która przekształca dane binarne - takie jak obraz - w czysty ciąg tekstowy ASCII. Wynikiem jest Data URI: samodzielny adres URL zaczynający się od <code>data:image/png;base64,...</code>, który zawiera cały zakodowany obraz. Osadzając ten kod bezpośrednio w HTML, CSS lub JSON, obraz ładuje się bez żadnego dodatkowego żądania HTTP do serwera - zero opóźnień sieciowych, natychmiastowe ładowanie.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'Głównym argumentem za Base64 jest wyeliminowanie żądań sieciowych. Każdy obraz na stronie internetowej oznacza żądanie HTTP z jego narzutem połączenia, DNS, handshake TLS i opóźnieniem. W przypadku bardzo małych, krytycznych obrazów głównego logo aplikacji, favicony, ikony interfejsu osadzenie ich w Base64 w CSS lub HTML eliminuje ten koszt i gwarantuje, że zostaną wyświetlone natychmiast, nawet zanim przeglądarka zdąży cokolwiek zapisać w pamięci podręcznej.',
81
+ html: 'Głównym argumentem za Base64 jest wyeliminowanie żądań sieciowych. Każdy obraz na stronie internetowej oznacza żądanie HTTP z jego narzutem połączenia, DNS, handshake TLS i opóźnieniem. W przypadku bardzo małych, krytycznych obrazów - głównego logo aplikacji, favicony, ikony interfejsu - osadzenie ich w Base64 w CSS lub HTML eliminuje ten koszt i gwarantuje, że zostaną wyświetlone natychmiast, nawet zanim przeglądarka zdąży cokolwiek zapisać w pamięci podręcznej.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'Podczas wyboru lub przeciągania obrazu, API <code>FileReader</code> przeglądarki odczytuje go bezpośrednio z dysku jako dane binarne w pamięci RAM. Metoda <code>readAsDataURL()</code> konwertuje te binarne bajty na ich reprezentację Base64 przy użyciu algorytmu RFC 4648 każde 3 bajty oryginalnych danych są reprezentowane przez 4 znaki ASCII z alfabetu Base64. Wynik zawiera automatycznie wykryty poprawny typ MIME.',
110
+ html: 'Podczas wyboru lub przeciągania obrazu, API <code>FileReader</code> przeglądarki odczytuje go bezpośrednio z dysku jako dane binarne w pamięci RAM. Metoda <code>readAsDataURL()</code> konwertuje te binarne bajty na ich reprezentację Base64 przy użyciu algorytmu RFC 4648 - każde 3 bajty oryginalnych danych są reprezentowane przez 4 znaki ASCII z alfabetu Base64. Wynik zawiera automatycznie wykryty poprawny typ MIME.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Używaj tylko dla małych obrazów (poniżej 10 KB)',
125
- html: 'Base64 zwiększa rozmiar pliku o około 33%: obraz o rozmiarze 10 KB staje się tekstem o wadze ~13,3 KB. W przypadku małych ikon i logo koszt ten jest minimalny, a wyeliminowanie żądania HTTP to rekompensuje. W przypadku dużych fotografii lub obrazów narzut rozmiaru jest znaczący dla dużych plików zawsze używaj sieci CDN.',
115
+ html: 'Base64 zwiększa rozmiar pliku o około 33%: obraz o rozmiarze 10 KB staje się tekstem o wadze ~13,3 KB. W przypadku małych ikon i logo koszt ten jest minimalny, a wyeliminowanie żądania HTTP to rekompensuje. W przypadku dużych fotografii lub obrazów narzut rozmiaru jest znaczący - dla dużych plików zawsze używaj sieci CDN.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Unikaj Base64 dla dużych obrazów użyj sieci CDN',
124
+ title: 'Unikaj Base64 dla dużych obrazów: użyj sieci CDN',
135
125
  html: 'Jeśli masz obrazy większe niż 10-20 KB, Base64 pogarsza wydajność: zwiększa rozmiar HTML/CSS, uniemożliwia przeglądarce niezależne buforowanie obrazu i blokuje renderowanie, podczas gdy parser przetwarza gigantyczny ciąg znaków. W przypadku dużych obrazów zawsze korzystaj z sieci CDN z odpowiednimi nagłówkami pamięci podręcznej.',
136
126
  },
137
127
  {
@@ -141,7 +131,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
141
131
  },
142
132
  {
143
133
  type: 'paragraph',
144
- html: 'Data URI są kompatybilne ze 100% nowoczesnych przeglądarek i większością klientów poczty e-mail. Nasze narzędzie przetwarza wszystko lokalnie za pomocą API FileReader Twoje obrazy nigdy nie opuszczają Twojego urządzenia. Dzięki temu nadaje się do obrazów firmowych, prywatnych zrzutów ekranu lub wszelkich poufnych treści wizualnych, które musisz przekonwertować na Base64.',
134
+ html: 'Data URI są kompatybilne ze 100% nowoczesnych przeglądarek i większością klientów poczty e-mail. Nasze narzędzie przetwarza wszystko lokalnie za pomocą API FileReader - Twoje obrazy nigdy nie opuszczają Twojego urządzenia. Dzięki temu nadaje się do obrazów firmowych, prywatnych zrzutów ekranu lub wszelkich poufnych treści wizualnych, które musisz przekonwertować na Base64.',
145
135
  },
146
136
  {
147
137
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImageToBase64UI } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImagenBase64LocaleContent } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 é uma técnica de codificação que transforma dados binários como uma imagem numa string de texto ASCII pura. O resultado é um Data URI: um URL autónomo que começa com <code>data:image/png;base64,...</code> e contém toda a imagem codificada. Ao incorporar este código diretamente no seu HTML, CSS ou JSON, a imagem é carregada sem qualquer pedido HTTP adicional ao servidor latência de rede zero, carregamento instantâneo.',
72
+ html: 'Base64 é uma técnica de codificação que transforma dados binários - como uma imagem - numa string de texto ASCII pura. O resultado é um Data URI: um URL autónomo que começa com <code>data:image/png;base64,...</code> e contém toda a imagem codificada. Ao incorporar este código diretamente no seu HTML, CSS ou JSON, a imagem é carregada sem qualquer pedido HTTP adicional ao servidor - latência de rede zero, carregamento instantâneo.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'O principal argumento a favor do Base64 é a eliminação de pedidos de rede. Cada imagem numa página web significa um pedido HTTP com o seu overhead de ligação, DNS, handshake TLS e latência. Para imagens críticas muito pequenas o logótipo principal da aplicação, favicon, um ícone de UI incorporá-las em Base64 no CSS ou no HTML elimina esse custo e garante que sejam exibidas instantaneamente, mesmo antes de o navegador ter colocado algo em cache.',
81
+ html: 'O principal argumento a favor do Base64 é a eliminação de pedidos de rede. Cada imagem numa página web significa um pedido HTTP com o seu overhead de ligação, DNS, handshake TLS e latência. Para imagens críticas muito pequenas - o logótipo principal da aplicação, favicon, um ícone de UI - incorporá-las em Base64 no CSS ou no HTML elimina esse custo e garante que sejam exibidas instantaneamente, mesmo antes de o navegador ter colocado algo em cache.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'Quando seleciona ou arrasta uma imagem, a API <code>FileReader</code> do navegador lê-a diretamente do disco como dados binários na RAM. O método <code>readAsDataURL()</code> converte esses bytes binários na sua representação Base64 utilizando o algoritmo RFC 4648 a cada 3 bytes de dados originais são representados como 4 caracteres ASCII do alfabeto Base64. O resultado inclui o tipo MIME correto detetado automaticamente.',
110
+ html: 'Quando seleciona ou arrasta uma imagem, a API <code>FileReader</code> do navegador lê-a diretamente do disco como dados binários na RAM. O método <code>readAsDataURL()</code> converte esses bytes binários na sua representação Base64 utilizando o algoritmo RFC 4648 - a cada 3 bytes de dados originais são representados como 4 caracteres ASCII do alfabeto Base64. O resultado inclui o tipo MIME correto detetado automaticamente.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Utilize apenas para imagens pequenas (abaixo de 10 KB)',
125
- html: 'O Base64 aumenta o tamanho do arquivo em aproximadamente 33%: uma imagem de 10 KB torna-se ~13,3 KB de texto. Para ícones e logótipos pequenos, este custo é mínimo e a eliminação do pedido HTTP compensa-o. Para fotografias ou imagens grandes, o excesso de tamanho é significativo utilize sempre um CDN para imagens grandes.',
115
+ html: 'O Base64 aumenta o tamanho do arquivo em aproximadamente 33%: uma imagem de 10 KB torna-se ~13,3 KB de texto. Para ícones e logótipos pequenos, este custo é mínimo e a eliminação do pedido HTTP compensa-o. Para fotografias ou imagens grandes, o excesso de tamanho é significativo - utilize sempre um CDN para imagens grandes.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Evite Base64 para imagens grandes utilize um CDN',
124
+ title: 'Evite Base64 para imagens grandes: utilize um CDN',
135
125
  html: 'Se tiver imagens maiores que 10-20 KB, o Base64 prejudica o desempenho: infla o tamanho do HTML/CSS, impede que o navegador coloque a imagem em cache de forma independente e bloqueia a renderização enquanto o parser processa a string gigante. Para imagens grandes, sirva sempre a partir de un CDN com cabeçalhos de cache apropriados.',
136
126
  },
137
127
  {
@@ -141,7 +131,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
141
131
  },
142
132
  {
143
133
  type: 'paragraph',
144
- html: 'Os Data URIs são compatíveis com 100% dos navegadores modernos e a maioria dos clientes de e-mail. A nossa ferramenta processa tudo localmente através da API FileReader as suas imagens nunca saem do seu dispositivo. Isto torna-a adequada para imagens corporativas, capturas de ecrã privadas ou qualquer conteúdo visual confidencial que precise de converter para Base64.',
134
+ html: 'Os Data URIs são compatíveis com 100% dos navegadores modernos e a maioria dos clientes de e-mail. A nossa ferramenta processa tudo localmente através da API FileReader - as suas imagens nunca saem do seu dispositivo. Isto torna-a adequada para imagens corporativas, capturas de ecrã privadas ou qualquer conteúdo visual confidencial que precise de converter para Base64.',
145
135
  },
146
136
  {
147
137
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -26,7 +27,7 @@ const faq: ImagenBase64LocaleContent['faq'] = [
26
27
  {
27
28
  question: 'Что такое Base64 и для чего он используется в веб-разработке?',
28
29
  answer:
29
- 'Base64 это система кодирования, которая преобразует бинарные данные в текстовую строку ASCII. В веб-разработке она используется для вставки изображений непосредственно в файлы HTML или CSS через Data URI, что сокращает количество HTTP-запросов к серверу.',
30
+ 'Base64 - это система кодирования, которая преобразует бинарные данные в текстовую строку ASCII. В веб-разработке она используется для вставки изображений непосредственно в файлы HTML или CSS через Data URI, что сокращает количество HTTP-запросов к серверу.',
30
31
  },
31
32
  {
32
33
  question: 'Безопасно ли конвертировать здесь мои изображения в Base64?',
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Кодирование Base64 RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 это техника кодирования, которая преобразует бинарные данные (например, изображение) в чистую текстовую строку ASCII. Результатом является Data URI: самодостаточный URL, который начинается с <code>data:image/png;base64,...</code> и содержит все закодированное изображение. Вставляя этот код непосредственно в HTML, CSS или JSON, изображение загружается без дополнительных HTTP-запросов к серверу нулевая сетевая задержка, мгновенная загрузка.',
72
+ html: 'Base64 - это техника кодирования, которая преобразует бинарные данные (например, изображение) в чистую текстовую строку ASCII. Результатом является Data URI: самодостаточный URL, который начинается с <code>data:image/png;base64,...</code> и содержит все закодированное изображение. Вставляя этот код непосредственно в HTML, CSS или JSON, изображение загружается без дополнительных HTTP-запросов к серверу - нулевая сетевая задержка, мгновенная загрузка.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'Основной аргумент в пользу Base64 это исключение сетевых запросов. Каждое изображение на веб-странице означает HTTP-запрос со своими накладными расходами на соединение, DNS, TLS-рукопожатие и задержку. Для очень маленьких критически важных изображений основного логотипа приложения, фавикона, иконки интерфейса вставка их в Base64 в CSS или HTML исключает эти затраты и гарантирует их мгновенное отображение еще до того, как браузер что-либо закеширует.',
81
+ html: 'Основной аргумент в пользу Base64 - это исключение сетевых запросов. Каждое изображение на веб-странице означает HTTP-запрос со своими накладными расходами на соединение, DNS, TLS-рукопожатие и задержку. Для очень маленьких критически важных изображений - основного логотипа приложения, фавикона, иконки интерфейса - вставка их в Base64 в CSS или HTML исключает эти затраты и гарантирует их мгновенное отображение еще до того, как браузер что-либо закеширует.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'Когда вы выбираете или перетаскиваете изображение, API <code>FileReader</code> браузера читает его непосредственно с диска как бинарные данные в оперативную память. Метод <code>readAsDataURL()</code> преобразует эти бинарные байты в их представление Base64 с использованием алгоритма RFC 4648 каждые 3 байта исходных данных представляются как 4 символа ASCII из алфавита Base64. Результат включает автоматически определенный корректный MIME-тип.',
110
+ html: 'Когда вы выбираете или перетаскиваете изображение, API <code>FileReader</code> браузера читает его непосредственно с диска как бинарные данные в оперативную память. Метод <code>readAsDataURL()</code> преобразует эти бинарные байты в их представление Base64 с использованием алгоритма RFC 4648 - каждые 3 байта исходных данных представляются как 4 символа ASCII из алфавита Base64. Результат включает автоматически определенный корректный MIME-тип.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Используйте только для маленьких изображений (до 10 КБ)',
125
- html: 'Base64 увеличивает размер файла примерно на 33%: изображение весом 10 КБ превращается в ~13,3 КБ текста. Для небольших иконок и логотипов эти затраты минимальны, а отсутствие HTTP-запроса компенсирует их. Для фотографий или больших изображений накладные расходы на размер значительны для больших изображений всегда используйте CDN.',
115
+ html: 'Base64 увеличивает размер файла примерно на 33%: изображение весом 10 КБ превращается в ~13,3 КБ текста. Для небольших иконок и логотипов эти затраты минимальны, а отсутствие HTTP-запроса компенсирует их. Для фотографий или больших изображений накладные расходы на размер значительны - для больших изображений всегда используйте CDN.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Избегайте Base64 для больших изображений используйте CDN',
124
+ title: 'Избегайте Base64 для больших изображений: используйте CDN',
135
125
  html: 'Если у вас есть изображения размером более 10-20 КБ, Base64 вредит производительности: он раздувает размер HTML/CSS, мешает браузеру кешировать изображение независимо и блокирует рендеринг, пока парсер обрабатывает гигантскую строку. Для больших изображений всегда используйте CDN с соответствующими заголовками кеширования.',
136
126
  },
137
127
  {
@@ -141,7 +131,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
141
131
  },
142
132
  {
143
133
  type: 'paragraph',
144
- html: 'Data URI совместимы со 100% современных браузеров и большинством почтовых клиентов. Наш инструмент обрабатывает все локально через API FileReader ваши изображения никогда не покидают ваше устройство. Это делает его подходящим для корпоративных изображений, частных скриншотов или любого конфиденциального визуального контента, который вам нужно конвертировать в Base64.',
134
+ html: 'Data URI совместимы со 100% современных браузеров и большинством почтовых клиентов. Наш инструмент обрабатывает все локально через API FileReader - ваши изображения никогда не покидают ваше устройство. Это делает его подходящим для корпоративных изображений, частных скриншотов или любого конфиденциального визуального контента, который вам нужно конвертировать в Base64.',
145
135
  },
146
136
  {
147
137
  type: 'title',
@@ -150,7 +140,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
150
140
  },
151
141
  {
152
142
  type: 'paragraph',
153
- html: 'Конвертация изображений в Base64 это узкоспециализированная, но очень мощная техника при правильном применении. Используйте ее для небольших критически важных изображений, где отсутствие HTTP-запросов имеет значение, и избегайте ее для больших изображений, где CDN всегда выигрывает. С нашим инструментом вы получите Data URI мгновенно, ничего не загружая на сервер.',
143
+ html: 'Конвертация изображений в Base64 - это узкоспециализированная, но очень мощная техника при правильном применении. Используйте ее для небольших критически важных изображений, где отсутствие HTTP-запросов имеет значение, и избегайте ее для больших изображений, где CDN всегда выигрывает. С нашим инструментом вы получите Data URI мгновенно, ничего не загружая на сервер.',
154
144
  },
155
145
  ];
156
146
 
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -79,7 +69,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
79
69
  },
80
70
  {
81
71
  type: 'paragraph',
82
- html: 'Base64 är en kodningsteknik som transformerar binära data som en bild till en ren ASCII-textsträng. Resultatet är en Data URI: en självständig URL som börjar med <code>data:image/png;base64,...</code> och innehåller hela den kodade bilden. Genom att bädda in denna kod direkt i din HTML, CSS eller JSON, laddas bilden utan något extra HTTP-anrop till servern noll nätverkslatens, omedelbar laddning.',
72
+ html: 'Base64 är en kodningsteknik som transformerar binära data - som en bild - till en ren ASCII-textsträng. Resultatet är en Data URI: en självständig URL som börjar med <code>data:image/png;base64,...</code> och innehåller hela den kodade bilden. Genom att bädda in denna kod direkt i din HTML, CSS eller JSON, laddas bilden utan något extra HTTP-anrop till servern - noll nätverkslatens, omedelbar laddning.',
83
73
  },
84
74
  {
85
75
  type: 'title',
@@ -88,7 +78,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
88
78
  },
89
79
  {
90
80
  type: 'paragraph',
91
- html: 'Huvudargumentet för Base64 är elimineringen av nätverksanrop. Varje bild på en webbsida innebär ett HTTP-anrop med dess overhead för anslutning, DNS, TLS-handskakning och latens. För mycket små kritiska bilder applikationens huvudlogotyp, favicon, en UI-ikon eliminerar inbäddning i Base64 i CSS eller HTML den kostnaden och garanterar att de visas omedelbart även innan webbläsaren har hunnit cacha något.',
81
+ html: 'Huvudargumentet för Base64 är elimineringen av nätverksanrop. Varje bild på en webbsida innebär ett HTTP-anrop med dess overhead för anslutning, DNS, TLS-handskakning och latens. För mycket små kritiska bilder - applikationens huvudlogotyp, favicon, en UI-ikon - eliminerar inbäddning i Base64 i CSS eller HTML den kostnaden och garanterar att de visas omedelbart även innan webbläsaren har hunnit cacha något.',
92
82
  },
93
83
  {
94
84
  type: 'paragraph',
@@ -117,12 +107,12 @@ const seo: ImagenBase64LocaleContent['seo'] = [
117
107
  },
118
108
  {
119
109
  type: 'paragraph',
120
- html: 'När du väljer eller drar en bild på plats, läser webbläsarens <code>FileReader</code>-API den direkt från disken som binära data i RAM-minnet. Metoden <code>readAsDataURL()</code> konverterar de binära byten till deras Base64-representation med RFC 4648-algoritmen var 3:e byte av originaldata representeras som 4 ASCII-tecken från Base64-alfabetet. Resultatet inkluderar den automatiskt detekterade korrekta MIME-typen.',
110
+ html: 'När du väljer eller drar en bild på plats, läser webbläsarens <code>FileReader</code>-API den direkt från disken som binära data i RAM-minnet. Metoden <code>readAsDataURL()</code> konverterar de binära byten till deras Base64-representation med RFC 4648-algoritmen - var 3:e byte av originaldata representeras som 4 ASCII-tecken från Base64-alfabetet. Resultatet inkluderar den automatiskt detekterade korrekta MIME-typen.',
121
111
  },
122
112
  {
123
113
  type: 'tip',
124
114
  title: 'Använd det endast för små bilder (under 10 KB)',
125
- html: 'Base64 ökar filstorleken med cirka 33%: en bild på 10 KB blir ~13,3 KB text. För små ikoner och logotyper är denna kostnad minimal och elimineringen av HTTP-anropet kompenserar för det. För fotografier eller stora bilder är storleksökningen betydande använd alltid ett CDN för stora bilder.',
115
+ html: 'Base64 ökar filstorleken med cirka 33%: en bild på 10 KB blir ~13,3 KB text. För små ikoner och logotyper är denna kostnad minimal och elimineringen av HTTP-anropet kompenserar för det. För fotografier eller stora bilder är storleksökningen betydande - använd alltid ett CDN för stora bilder.',
126
116
  },
127
117
  {
128
118
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Undvik Base64 för stora bilder använd ett CDN istället',
124
+ title: 'Undvik Base64 för stora bilder: använd ett CDN istället',
135
125
  html: 'Om du har bilder som är större än 10-20 KB, skadar Base64 prestandan: det blåser upp HTML/CSS-storleken, förhindrar att webbläsaren kan cacha bilden oberoende och blockerar renderingen medan tolken bearbetar den gigantiska strängen. För stora bilder, leverera alltid från ett CDN med lämpliga cache-headers.',
136
126
  },
137
127
  {
@@ -141,7 +131,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
141
131
  },
142
132
  {
143
133
  type: 'paragraph',
144
- html: 'Data URI:er är kompatibla med 100% av moderna webbläsare och de flesta e-postklienter. Vårt verktyg bearbetar allt lokalt via FileReader-API:et dina bilder lämnar aldrig din enhet. Detta gör det lämpligt för företagsbilder, privata skärmdumpar eller annat konfidentiellt visuellt innehåll som du behöver konvertera till Base64.',
134
+ html: 'Data URI:er är kompatibla med 100% av moderna webbläsare och de flesta e-postklienter. Vårt verktyg bearbetar allt lokalt via FileReader-API:et - dina bilder lämnar aldrig din enhet. Detta gör det lämpligt för företagsbilder, privata skärmdumpar eller annat konfidentiellt visuellt innehåll som du behöver konvertera till Base64.',
145
135
  },
146
136
  {
147
137
  type: 'title',
@@ -1,3 +1,4 @@
1
+ import { bibliography } from '../bibliography';
1
2
  import type { ImagenBase64LocaleContent } from '../index';
2
3
  import { generateSchemas } from '../../../shared/logic/schemas';
3
4
  import type { ImageToBase64UI } from '../index';
@@ -60,17 +61,6 @@ const howTo: ImagenBase64LocaleContent['howTo'] = [
60
61
  },
61
62
  ];
62
63
 
63
- const bibliography: ImagenBase64LocaleContent['bibliography'] = [
64
- {
65
- name: 'MDN Web Docs: Data URIs',
66
- url: 'https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs',
67
- },
68
- {
69
- name: 'Base64 Encoding RFC 4648',
70
- url: 'https://datatracker.ietf.org/doc/html/rfc4648',
71
- },
72
- ];
73
-
74
64
  const seo: ImagenBase64LocaleContent['seo'] = [
75
65
  {
76
66
  type: 'title',
@@ -131,7 +121,7 @@ const seo: ImagenBase64LocaleContent['seo'] = [
131
121
  },
132
122
  {
133
123
  type: 'tip',
134
- title: 'Büyük görüntüler için Base64\'ten kaçının bunun yerine bir CDN kullanın',
124
+ title: 'Büyük görüntüler için Base64\'ten kaçının - bunun yerine bir CDN kullanın',
135
125
  html: '10-20 KB\'tan daha büyük görüntüleriniz varsa, Base64 performansa zarar verir: HTML/CSS boyutunu şişirir, tarayıcının görüntüyü bağımsız olarak önbelleğe almasını engeller ve ayrıştırıcı devasa dizeyi işlerken oluşturmayı engeller. Büyük görüntüler için her zaman uygun önbellek başlıklarına sahip bir CDN\'den sunun.',
136
126
  },
137
127
  {