@jjlmoya/utils-converters 1.6.0 → 1.8.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 (346) hide show
  1. package/package.json +60 -59
  2. package/src/shared/ImageConverter.astro +2 -1
  3. package/src/shared/logic/schemas.ts +57 -0
  4. package/src/tests/faq_count.test.ts +13 -4
  5. package/src/tests/i18n_coverage.test.ts +36 -0
  6. package/src/tests/locale_completeness.test.ts +42 -0
  7. package/src/tests/no_h1_in_components.test.ts +48 -0
  8. package/src/tests/schemas_fulfillment.test.ts +23 -0
  9. package/src/tests/seo_length.test.ts +1 -1
  10. package/src/tests/title_quality.test.ts +55 -0
  11. package/src/tool/avifAJpg/i18n/de.ts +178 -0
  12. package/src/tool/avifAJpg/i18n/en.ts +2 -12
  13. package/src/tool/avifAJpg/i18n/es.ts +2 -12
  14. package/src/tool/avifAJpg/i18n/fr.ts +2 -12
  15. package/src/tool/avifAJpg/i18n/id.ts +178 -0
  16. package/src/tool/avifAJpg/i18n/it.ts +178 -0
  17. package/src/tool/avifAJpg/i18n/ja.ts +178 -0
  18. package/src/tool/avifAJpg/i18n/ko.ts +178 -0
  19. package/src/tool/avifAJpg/i18n/nl.ts +178 -0
  20. package/src/tool/avifAJpg/i18n/pl.ts +178 -0
  21. package/src/tool/avifAJpg/i18n/pt.ts +178 -0
  22. package/src/tool/avifAJpg/i18n/ru.ts +178 -0
  23. package/src/tool/avifAJpg/i18n/sv.ts +178 -0
  24. package/src/tool/avifAJpg/i18n/tr.ts +178 -0
  25. package/src/tool/avifAJpg/i18n/zh.ts +178 -0
  26. package/src/tool/avifAJpg/index.ts +13 -1
  27. package/src/tool/avifAPng/i18n/de.ts +178 -0
  28. package/src/tool/avifAPng/i18n/en.ts +2 -12
  29. package/src/tool/avifAPng/i18n/es.ts +2 -12
  30. package/src/tool/avifAPng/i18n/fr.ts +2 -12
  31. package/src/tool/avifAPng/i18n/id.ts +178 -0
  32. package/src/tool/avifAPng/i18n/it.ts +178 -0
  33. package/src/tool/avifAPng/i18n/ja.ts +178 -0
  34. package/src/tool/avifAPng/i18n/ko.ts +178 -0
  35. package/src/tool/avifAPng/i18n/nl.ts +178 -0
  36. package/src/tool/avifAPng/i18n/pl.ts +178 -0
  37. package/src/tool/avifAPng/i18n/pt.ts +178 -0
  38. package/src/tool/avifAPng/i18n/ru.ts +178 -0
  39. package/src/tool/avifAPng/i18n/sv.ts +178 -0
  40. package/src/tool/avifAPng/i18n/tr.ts +178 -0
  41. package/src/tool/avifAPng/i18n/zh.ts +178 -0
  42. package/src/tool/avifAPng/index.ts +13 -1
  43. package/src/tool/avifAWebp/i18n/de.ts +178 -0
  44. package/src/tool/avifAWebp/i18n/en.ts +2 -12
  45. package/src/tool/avifAWebp/i18n/es.ts +2 -12
  46. package/src/tool/avifAWebp/i18n/fr.ts +2 -12
  47. package/src/tool/avifAWebp/i18n/id.ts +178 -0
  48. package/src/tool/avifAWebp/i18n/it.ts +178 -0
  49. package/src/tool/avifAWebp/i18n/ja.ts +178 -0
  50. package/src/tool/avifAWebp/i18n/ko.ts +178 -0
  51. package/src/tool/avifAWebp/i18n/nl.ts +178 -0
  52. package/src/tool/avifAWebp/i18n/pl.ts +178 -0
  53. package/src/tool/avifAWebp/i18n/pt.ts +178 -0
  54. package/src/tool/avifAWebp/i18n/ru.ts +178 -0
  55. package/src/tool/avifAWebp/i18n/sv.ts +178 -0
  56. package/src/tool/avifAWebp/i18n/tr.ts +178 -0
  57. package/src/tool/avifAWebp/i18n/zh.ts +178 -0
  58. package/src/tool/avifAWebp/index.ts +13 -1
  59. package/src/tool/bmpAJpg/i18n/de.ts +178 -0
  60. package/src/tool/bmpAJpg/i18n/en.ts +2 -12
  61. package/src/tool/bmpAJpg/i18n/es.ts +2 -12
  62. package/src/tool/bmpAJpg/i18n/fr.ts +2 -12
  63. package/src/tool/bmpAJpg/i18n/id.ts +178 -0
  64. package/src/tool/bmpAJpg/i18n/it.ts +178 -0
  65. package/src/tool/bmpAJpg/i18n/ja.ts +178 -0
  66. package/src/tool/bmpAJpg/i18n/ko.ts +178 -0
  67. package/src/tool/bmpAJpg/i18n/nl.ts +178 -0
  68. package/src/tool/bmpAJpg/i18n/pl.ts +178 -0
  69. package/src/tool/bmpAJpg/i18n/pt.ts +178 -0
  70. package/src/tool/bmpAJpg/i18n/ru.ts +178 -0
  71. package/src/tool/bmpAJpg/i18n/sv.ts +178 -0
  72. package/src/tool/bmpAJpg/i18n/tr.ts +178 -0
  73. package/src/tool/bmpAJpg/i18n/zh.ts +178 -0
  74. package/src/tool/bmpAJpg/index.ts +13 -1
  75. package/src/tool/bmpAPng/i18n/de.ts +177 -0
  76. package/src/tool/bmpAPng/i18n/en.ts +2 -12
  77. package/src/tool/bmpAPng/i18n/es.ts +2 -12
  78. package/src/tool/bmpAPng/i18n/fr.ts +2 -12
  79. package/src/tool/bmpAPng/i18n/id.ts +177 -0
  80. package/src/tool/bmpAPng/i18n/it.ts +177 -0
  81. package/src/tool/bmpAPng/i18n/ja.ts +177 -0
  82. package/src/tool/bmpAPng/i18n/ko.ts +177 -0
  83. package/src/tool/bmpAPng/i18n/nl.ts +177 -0
  84. package/src/tool/bmpAPng/i18n/pl.ts +177 -0
  85. package/src/tool/bmpAPng/i18n/pt.ts +177 -0
  86. package/src/tool/bmpAPng/i18n/ru.ts +177 -0
  87. package/src/tool/bmpAPng/i18n/sv.ts +177 -0
  88. package/src/tool/bmpAPng/i18n/tr.ts +177 -0
  89. package/src/tool/bmpAPng/i18n/zh.ts +177 -0
  90. package/src/tool/bmpAPng/index.ts +13 -1
  91. package/src/tool/bmpAWebp/i18n/de.ts +178 -0
  92. package/src/tool/bmpAWebp/i18n/en.ts +2 -12
  93. package/src/tool/bmpAWebp/i18n/es.ts +2 -12
  94. package/src/tool/bmpAWebp/i18n/fr.ts +2 -12
  95. package/src/tool/bmpAWebp/i18n/id.ts +178 -0
  96. package/src/tool/bmpAWebp/i18n/it.ts +178 -0
  97. package/src/tool/bmpAWebp/i18n/ja.ts +178 -0
  98. package/src/tool/bmpAWebp/i18n/ko.ts +178 -0
  99. package/src/tool/bmpAWebp/i18n/nl.ts +178 -0
  100. package/src/tool/bmpAWebp/i18n/pl.ts +178 -0
  101. package/src/tool/bmpAWebp/i18n/pt.ts +178 -0
  102. package/src/tool/bmpAWebp/i18n/ru.ts +178 -0
  103. package/src/tool/bmpAWebp/i18n/sv.ts +178 -0
  104. package/src/tool/bmpAWebp/i18n/tr.ts +178 -0
  105. package/src/tool/bmpAWebp/i18n/zh.ts +178 -0
  106. package/src/tool/bmpAWebp/index.ts +13 -1
  107. package/src/tool/gifAJpg/i18n/de.ts +178 -0
  108. package/src/tool/gifAJpg/i18n/en.ts +2 -12
  109. package/src/tool/gifAJpg/i18n/es.ts +2 -12
  110. package/src/tool/gifAJpg/i18n/fr.ts +2 -12
  111. package/src/tool/gifAJpg/i18n/id.ts +178 -0
  112. package/src/tool/gifAJpg/i18n/it.ts +178 -0
  113. package/src/tool/gifAJpg/i18n/ja.ts +178 -0
  114. package/src/tool/gifAJpg/i18n/ko.ts +178 -0
  115. package/src/tool/gifAJpg/i18n/nl.ts +178 -0
  116. package/src/tool/gifAJpg/i18n/pl.ts +178 -0
  117. package/src/tool/gifAJpg/i18n/pt.ts +178 -0
  118. package/src/tool/gifAJpg/i18n/ru.ts +178 -0
  119. package/src/tool/gifAJpg/i18n/sv.ts +178 -0
  120. package/src/tool/gifAJpg/i18n/tr.ts +178 -0
  121. package/src/tool/gifAJpg/i18n/zh.ts +178 -0
  122. package/src/tool/gifAJpg/index.ts +13 -1
  123. package/src/tool/gifAPng/i18n/de.ts +178 -0
  124. package/src/tool/gifAPng/i18n/en.ts +2 -12
  125. package/src/tool/gifAPng/i18n/es.ts +2 -12
  126. package/src/tool/gifAPng/i18n/fr.ts +2 -12
  127. package/src/tool/gifAPng/i18n/id.ts +178 -0
  128. package/src/tool/gifAPng/i18n/it.ts +178 -0
  129. package/src/tool/gifAPng/i18n/ja.ts +178 -0
  130. package/src/tool/gifAPng/i18n/ko.ts +178 -0
  131. package/src/tool/gifAPng/i18n/nl.ts +178 -0
  132. package/src/tool/gifAPng/i18n/pl.ts +178 -0
  133. package/src/tool/gifAPng/i18n/pt.ts +178 -0
  134. package/src/tool/gifAPng/i18n/ru.ts +178 -0
  135. package/src/tool/gifAPng/i18n/sv.ts +178 -0
  136. package/src/tool/gifAPng/i18n/tr.ts +178 -0
  137. package/src/tool/gifAPng/i18n/zh.ts +178 -0
  138. package/src/tool/gifAPng/index.ts +12 -0
  139. package/src/tool/gifAWebp/i18n/de.ts +178 -0
  140. package/src/tool/gifAWebp/i18n/en.ts +2 -12
  141. package/src/tool/gifAWebp/i18n/es.ts +2 -12
  142. package/src/tool/gifAWebp/i18n/fr.ts +2 -12
  143. package/src/tool/gifAWebp/i18n/id.ts +178 -0
  144. package/src/tool/gifAWebp/i18n/it.ts +178 -0
  145. package/src/tool/gifAWebp/i18n/ja.ts +178 -0
  146. package/src/tool/gifAWebp/i18n/ko.ts +178 -0
  147. package/src/tool/gifAWebp/i18n/nl.ts +178 -0
  148. package/src/tool/gifAWebp/i18n/pl.ts +178 -0
  149. package/src/tool/gifAWebp/i18n/pt.ts +178 -0
  150. package/src/tool/gifAWebp/i18n/ru.ts +178 -0
  151. package/src/tool/gifAWebp/i18n/sv.ts +178 -0
  152. package/src/tool/gifAWebp/i18n/tr.ts +178 -0
  153. package/src/tool/gifAWebp/i18n/zh.ts +178 -0
  154. package/src/tool/gifAWebp/index.ts +12 -0
  155. package/src/tool/imagenBase64/i18n/de.ts +168 -0
  156. package/src/tool/imagenBase64/i18n/en.ts +2 -12
  157. package/src/tool/imagenBase64/i18n/es.ts +2 -12
  158. package/src/tool/imagenBase64/i18n/fr.ts +2 -12
  159. package/src/tool/imagenBase64/i18n/id.ts +168 -0
  160. package/src/tool/imagenBase64/i18n/it.ts +168 -0
  161. package/src/tool/imagenBase64/i18n/ja.ts +168 -0
  162. package/src/tool/imagenBase64/i18n/ko.ts +168 -0
  163. package/src/tool/imagenBase64/i18n/nl.ts +168 -0
  164. package/src/tool/imagenBase64/i18n/pl.ts +168 -0
  165. package/src/tool/imagenBase64/i18n/pt.ts +173 -0
  166. package/src/tool/imagenBase64/i18n/ru.ts +168 -0
  167. package/src/tool/imagenBase64/i18n/sv.ts +168 -0
  168. package/src/tool/imagenBase64/i18n/tr.ts +168 -0
  169. package/src/tool/imagenBase64/i18n/zh.ts +168 -0
  170. package/src/tool/imagenBase64/index.ts +12 -0
  171. package/src/tool/jpgAIco/i18n/de.ts +183 -0
  172. package/src/tool/jpgAIco/i18n/en.ts +8 -13
  173. package/src/tool/jpgAIco/i18n/es.ts +13 -18
  174. package/src/tool/jpgAIco/i18n/fr.ts +9 -14
  175. package/src/tool/jpgAIco/i18n/id.ts +183 -0
  176. package/src/tool/jpgAIco/i18n/it.ts +183 -0
  177. package/src/tool/jpgAIco/i18n/ja.ts +183 -0
  178. package/src/tool/jpgAIco/i18n/ko.ts +183 -0
  179. package/src/tool/jpgAIco/i18n/nl.ts +183 -0
  180. package/src/tool/jpgAIco/i18n/pl.ts +183 -0
  181. package/src/tool/jpgAIco/i18n/pt.ts +183 -0
  182. package/src/tool/jpgAIco/i18n/ru.ts +183 -0
  183. package/src/tool/jpgAIco/i18n/sv.ts +183 -0
  184. package/src/tool/jpgAIco/i18n/tr.ts +183 -0
  185. package/src/tool/jpgAIco/i18n/zh.ts +183 -0
  186. package/src/tool/jpgAIco/index.ts +12 -0
  187. package/src/tool/jpgAPng/i18n/de.ts +178 -0
  188. package/src/tool/jpgAPng/i18n/en.ts +2 -12
  189. package/src/tool/jpgAPng/i18n/es.ts +2 -12
  190. package/src/tool/jpgAPng/i18n/fr.ts +2 -12
  191. package/src/tool/jpgAPng/i18n/id.ts +178 -0
  192. package/src/tool/jpgAPng/i18n/it.ts +178 -0
  193. package/src/tool/jpgAPng/i18n/ja.ts +178 -0
  194. package/src/tool/jpgAPng/i18n/ko.ts +178 -0
  195. package/src/tool/jpgAPng/i18n/nl.ts +178 -0
  196. package/src/tool/jpgAPng/i18n/pl.ts +178 -0
  197. package/src/tool/jpgAPng/i18n/pt.ts +178 -0
  198. package/src/tool/jpgAPng/i18n/ru.ts +178 -0
  199. package/src/tool/jpgAPng/i18n/sv.ts +178 -0
  200. package/src/tool/jpgAPng/i18n/tr.ts +178 -0
  201. package/src/tool/jpgAPng/i18n/zh.ts +178 -0
  202. package/src/tool/jpgAPng/index.ts +13 -1
  203. package/src/tool/jpgAWebp/i18n/de.ts +178 -0
  204. package/src/tool/jpgAWebp/i18n/en.ts +2 -12
  205. package/src/tool/jpgAWebp/i18n/es.ts +2 -12
  206. package/src/tool/jpgAWebp/i18n/fr.ts +2 -12
  207. package/src/tool/jpgAWebp/i18n/id.ts +178 -0
  208. package/src/tool/jpgAWebp/i18n/it.ts +178 -0
  209. package/src/tool/jpgAWebp/i18n/ja.ts +178 -0
  210. package/src/tool/jpgAWebp/i18n/ko.ts +178 -0
  211. package/src/tool/jpgAWebp/i18n/nl.ts +178 -0
  212. package/src/tool/jpgAWebp/i18n/pl.ts +178 -0
  213. package/src/tool/jpgAWebp/i18n/pt.ts +178 -0
  214. package/src/tool/jpgAWebp/i18n/ru.ts +178 -0
  215. package/src/tool/jpgAWebp/i18n/sv.ts +178 -0
  216. package/src/tool/jpgAWebp/i18n/tr.ts +178 -0
  217. package/src/tool/jpgAWebp/i18n/zh.ts +178 -0
  218. package/src/tool/jpgAWebp/index.ts +12 -0
  219. package/src/tool/pngAIco/i18n/de.ts +183 -0
  220. package/src/tool/pngAIco/i18n/en.ts +8 -13
  221. package/src/tool/pngAIco/i18n/es.ts +19 -24
  222. package/src/tool/pngAIco/i18n/fr.ts +20 -25
  223. package/src/tool/pngAIco/i18n/id.ts +183 -0
  224. package/src/tool/pngAIco/i18n/it.ts +183 -0
  225. package/src/tool/pngAIco/i18n/ja.ts +183 -0
  226. package/src/tool/pngAIco/i18n/ko.ts +183 -0
  227. package/src/tool/pngAIco/i18n/nl.ts +183 -0
  228. package/src/tool/pngAIco/i18n/pl.ts +183 -0
  229. package/src/tool/pngAIco/i18n/pt.ts +183 -0
  230. package/src/tool/pngAIco/i18n/ru.ts +183 -0
  231. package/src/tool/pngAIco/i18n/sv.ts +183 -0
  232. package/src/tool/pngAIco/i18n/tr.ts +183 -0
  233. package/src/tool/pngAIco/i18n/zh.ts +183 -0
  234. package/src/tool/pngAIco/index.ts +12 -0
  235. package/src/tool/pngAJpg/i18n/de.ts +191 -0
  236. package/src/tool/pngAJpg/i18n/en.ts +2 -12
  237. package/src/tool/pngAJpg/i18n/es.ts +2 -12
  238. package/src/tool/pngAJpg/i18n/fr.ts +2 -12
  239. package/src/tool/pngAJpg/i18n/id.ts +191 -0
  240. package/src/tool/pngAJpg/i18n/it.ts +191 -0
  241. package/src/tool/pngAJpg/i18n/ja.ts +191 -0
  242. package/src/tool/pngAJpg/i18n/ko.ts +191 -0
  243. package/src/tool/pngAJpg/i18n/nl.ts +191 -0
  244. package/src/tool/pngAJpg/i18n/pl.ts +191 -0
  245. package/src/tool/pngAJpg/i18n/pt.ts +191 -0
  246. package/src/tool/pngAJpg/i18n/ru.ts +191 -0
  247. package/src/tool/pngAJpg/i18n/sv.ts +191 -0
  248. package/src/tool/pngAJpg/i18n/tr.ts +191 -0
  249. package/src/tool/pngAJpg/i18n/zh.ts +191 -0
  250. package/src/tool/pngAJpg/index.ts +13 -1
  251. package/src/tool/pngAWebp/i18n/de.ts +182 -0
  252. package/src/tool/pngAWebp/i18n/en.ts +2 -12
  253. package/src/tool/pngAWebp/i18n/es.ts +2 -12
  254. package/src/tool/pngAWebp/i18n/fr.ts +2 -12
  255. package/src/tool/pngAWebp/i18n/id.ts +182 -0
  256. package/src/tool/pngAWebp/i18n/it.ts +182 -0
  257. package/src/tool/pngAWebp/i18n/ja.ts +182 -0
  258. package/src/tool/pngAWebp/i18n/ko.ts +182 -0
  259. package/src/tool/pngAWebp/i18n/nl.ts +182 -0
  260. package/src/tool/pngAWebp/i18n/pl.ts +182 -0
  261. package/src/tool/pngAWebp/i18n/pt.ts +182 -0
  262. package/src/tool/pngAWebp/i18n/ru.ts +182 -0
  263. package/src/tool/pngAWebp/i18n/sv.ts +182 -0
  264. package/src/tool/pngAWebp/i18n/tr.ts +182 -0
  265. package/src/tool/pngAWebp/i18n/zh.ts +182 -0
  266. package/src/tool/pngAWebp/index.ts +12 -0
  267. package/src/tool/svgAJpg/i18n/de.ts +178 -0
  268. package/src/tool/svgAJpg/i18n/en.ts +8 -13
  269. package/src/tool/svgAJpg/i18n/es.ts +8 -13
  270. package/src/tool/svgAJpg/i18n/fr.ts +2 -12
  271. package/src/tool/svgAJpg/i18n/id.ts +178 -0
  272. package/src/tool/svgAJpg/i18n/it.ts +178 -0
  273. package/src/tool/svgAJpg/i18n/ja.ts +178 -0
  274. package/src/tool/svgAJpg/i18n/ko.ts +178 -0
  275. package/src/tool/svgAJpg/i18n/nl.ts +178 -0
  276. package/src/tool/svgAJpg/i18n/pl.ts +178 -0
  277. package/src/tool/svgAJpg/i18n/pt.ts +178 -0
  278. package/src/tool/svgAJpg/i18n/ru.ts +178 -0
  279. package/src/tool/svgAJpg/i18n/sv.ts +178 -0
  280. package/src/tool/svgAJpg/i18n/tr.ts +178 -0
  281. package/src/tool/svgAJpg/i18n/zh.ts +178 -0
  282. package/src/tool/svgAJpg/index.ts +12 -0
  283. package/src/tool/svgAPng/i18n/de.ts +178 -0
  284. package/src/tool/svgAPng/i18n/en.ts +8 -13
  285. package/src/tool/svgAPng/i18n/es.ts +31 -36
  286. package/src/tool/svgAPng/i18n/fr.ts +2 -12
  287. package/src/tool/svgAPng/i18n/id.ts +178 -0
  288. package/src/tool/svgAPng/i18n/it.ts +178 -0
  289. package/src/tool/svgAPng/i18n/ja.ts +178 -0
  290. package/src/tool/svgAPng/i18n/ko.ts +178 -0
  291. package/src/tool/svgAPng/i18n/nl.ts +178 -0
  292. package/src/tool/svgAPng/i18n/pl.ts +178 -0
  293. package/src/tool/svgAPng/i18n/pt.ts +178 -0
  294. package/src/tool/svgAPng/i18n/ru.ts +178 -0
  295. package/src/tool/svgAPng/i18n/sv.ts +178 -0
  296. package/src/tool/svgAPng/i18n/tr.ts +178 -0
  297. package/src/tool/svgAPng/i18n/zh.ts +178 -0
  298. package/src/tool/svgAPng/index.ts +12 -0
  299. package/src/tool/webpAIco/i18n/de.ts +183 -0
  300. package/src/tool/webpAIco/i18n/en.ts +8 -13
  301. package/src/tool/webpAIco/i18n/es.ts +9 -14
  302. package/src/tool/webpAIco/i18n/fr.ts +11 -16
  303. package/src/tool/webpAIco/i18n/id.ts +183 -0
  304. package/src/tool/webpAIco/i18n/it.ts +183 -0
  305. package/src/tool/webpAIco/i18n/ja.ts +183 -0
  306. package/src/tool/webpAIco/i18n/ko.ts +183 -0
  307. package/src/tool/webpAIco/i18n/nl.ts +183 -0
  308. package/src/tool/webpAIco/i18n/pl.ts +183 -0
  309. package/src/tool/webpAIco/i18n/pt.ts +183 -0
  310. package/src/tool/webpAIco/i18n/ru.ts +183 -0
  311. package/src/tool/webpAIco/i18n/sv.ts +183 -0
  312. package/src/tool/webpAIco/i18n/tr.ts +183 -0
  313. package/src/tool/webpAIco/i18n/zh.ts +183 -0
  314. package/src/tool/webpAIco/index.ts +12 -0
  315. package/src/tool/webpAJpg/i18n/de.ts +187 -0
  316. package/src/tool/webpAJpg/i18n/en.ts +9 -13
  317. package/src/tool/webpAJpg/i18n/es.ts +37 -42
  318. package/src/tool/webpAJpg/i18n/fr.ts +35 -40
  319. package/src/tool/webpAJpg/i18n/id.ts +182 -0
  320. package/src/tool/webpAJpg/i18n/it.ts +182 -0
  321. package/src/tool/webpAJpg/i18n/ja.ts +182 -0
  322. package/src/tool/webpAJpg/i18n/ko.ts +182 -0
  323. package/src/tool/webpAJpg/i18n/nl.ts +182 -0
  324. package/src/tool/webpAJpg/i18n/pl.ts +182 -0
  325. package/src/tool/webpAJpg/i18n/pt.ts +182 -0
  326. package/src/tool/webpAJpg/i18n/ru.ts +182 -0
  327. package/src/tool/webpAJpg/i18n/sv.ts +182 -0
  328. package/src/tool/webpAJpg/i18n/tr.ts +182 -0
  329. package/src/tool/webpAJpg/i18n/zh.ts +182 -0
  330. package/src/tool/webpAJpg/index.ts +12 -0
  331. package/src/tool/webpAPng/i18n/de.ts +182 -0
  332. package/src/tool/webpAPng/i18n/en.ts +8 -13
  333. package/src/tool/webpAPng/i18n/es.ts +35 -40
  334. package/src/tool/webpAPng/i18n/fr.ts +2 -12
  335. package/src/tool/webpAPng/i18n/id.ts +182 -0
  336. package/src/tool/webpAPng/i18n/it.ts +182 -0
  337. package/src/tool/webpAPng/i18n/ja.ts +182 -0
  338. package/src/tool/webpAPng/i18n/ko.ts +182 -0
  339. package/src/tool/webpAPng/i18n/nl.ts +182 -0
  340. package/src/tool/webpAPng/i18n/pl.ts +182 -0
  341. package/src/tool/webpAPng/i18n/pt.ts +182 -0
  342. package/src/tool/webpAPng/i18n/ru.ts +182 -0
  343. package/src/tool/webpAPng/i18n/sv.ts +182 -0
  344. package/src/tool/webpAPng/i18n/tr.ts +182 -0
  345. package/src/tool/webpAPng/i18n/zh.ts +182 -0
  346. package/src/tool/webpAPng/index.ts +12 -0
@@ -0,0 +1,182 @@
1
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import { generateSchemas } from '../../../shared/logic/schemas';
3
+ import type { WebpAJpgLocaleContent } from '../index';
4
+
5
+ const slug = 'konverter-webp-v-jpg';
6
+ const title = 'Конвертировать WebP в JPG Онлайн и Бесплатно';
7
+ const description =
8
+ 'Конвертируйте изображения WebP в JPG без загрузки на сервер. 100% приватная локальная обработка. Прозрачный фон автоматически заменяется белым.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'Перетащите файлы WebP...',
12
+ convertText: 'Чтобы мгновенно конвертировать их в JPG',
13
+ selectFiles: 'Выбрать файлы',
14
+ processedFiles: 'Обработанные файлы',
15
+ downloadAll: 'Скачать всё (.zip)',
16
+ pending: 'В ожидании',
17
+ bibliographyTitle: 'Библиографические ссылки',
18
+ faqTitle: 'Часто задаваемые вопросы',
19
+ };
20
+
21
+ const faq: WebpAJpgLocaleContent['faq'] = [
22
+ {
23
+ question: 'Могу ли я безопасно конвертировать личные фотографии?',
24
+ answer:
25
+ 'Да. У нас нет сервера для загрузки. Ваш браузер обрабатывает WebP прямо на вашем компьютере и генерирует JPG для скачивания. Никто больше их не увидит.',
26
+ },
27
+ {
28
+ question: 'Что произойдет с прозрачным фоном в WebP?',
29
+ answer:
30
+ 'Так как формат JPG не поддерживает прозрачность, конвертер автоматически заполнит прозрачные области сплошным белым фоном.',
31
+ },
32
+ {
33
+ question: 'Есть ли ограничения на количество файлов или их размер?',
34
+ answer:
35
+ 'Мы не накладываем никаких ограничений. Вы можете конвертировать сотни изображений, пока у вашего компьютера достаточно мощности процессора и оперативной памяти.',
36
+ },
37
+ ];
38
+
39
+ const howTo: WebpAJpgLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Перетащите ваши файлы',
42
+ text: 'Переместите ваши файлы WebP в область загрузки или выберите их с помощью интерактивного проводника.',
43
+ },
44
+ {
45
+ name: 'Локальная конвертация',
46
+ text: 'Наблюдайте, как локальный движок применяет фон и интерпретирует каждый пиксель в универсальный формат JPG.',
47
+ },
48
+ {
49
+ name: 'Получите результат',
50
+ text: 'Скачивайте изображения по отдельности или используйте ZIP-архив, чтобы собрать все новые фотографии вместе.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: WebpAJpgLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'JPEG.org: стандарты JPEG',
57
+ url: 'https://jpeg.org/jpeg/',
58
+ },
59
+ {
60
+ name: 'Mozilla Developer Network - image/jpeg',
61
+ url: 'https://developer.mozilla.org/ru/docs/Web/Media/Formats/Image_types#jpeg',
62
+ },
63
+ {
64
+ name: 'Совместимость WebP и JPEG',
65
+ url: 'https://developers.google.com/speed/webp/faq',
66
+ },
67
+ ];
68
+
69
+ const seo: WebpAJpgLocaleContent['seo'] = [
70
+ {
71
+ type: 'title',
72
+ text: 'Конвертер WebP в JPG: универсальная совместимость без компромиссов с приватностью',
73
+ level: 2,
74
+ },
75
+ {
76
+ type: 'paragraph',
77
+ html: '<strong>WebP</strong> — это ставка Google на эффективность: более легкие изображения при качестве, сопоставимом с традиционным JPG. Однако совместимость остается проблемой в реальном мире. Почтовые клиенты, такие как Outlook, устаревшее ПО для дизайна, мессенджеры и корпоративные рабочие процессы по-прежнему зависят от вездесущего <strong>JPG</strong>. Конвертирование WebP в JPG — это мост между современным вебом и реальностью.',
78
+ },
79
+ {
80
+ type: 'title',
81
+ text: 'WebP против JPG: когда использовать какой формат?',
82
+ level: 3,
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: 'WebP превосходен в контролируемых средах: современные веб-сайты в Chrome, Edge или Firefox, где совместимость браузеров гарантирована. Его превосходное сжатие уменьшает размер файла на 25–35% по сравнению с эквивалентным JPG, улучшая время загрузки и показатели Core Web Vitals. Это идеальный формат, когда вы контролируете среду просмотра.',
87
+ },
88
+ {
89
+ type: 'paragraph',
90
+ html: 'JPG, с другой стороны, работает в <em>абсолютно любом контексте</em>: вложения в электронную почту, презентации PowerPoint, документы Word, домашние принтеры, старые приложения для редактирования и социальные сети без исключения. Если вам нужно, чтобы кто-то открыл ваше изображение без технических сложностей, JPG — правильный ответ.',
91
+ },
92
+ {
93
+ type: 'title',
94
+ text: 'Сравнение: локальная vs облачная конвертация',
95
+ level: 3,
96
+ },
97
+ {
98
+ type: 'comparative',
99
+ items: [
100
+ {
101
+ title: 'Облачные конвертеры',
102
+ description: 'Инструменты, которые загружают ваши файлы на удаленный сервер.',
103
+ icon: 'mdi:cloud-upload',
104
+ pointIcon: 'mdi:close-circle-outline',
105
+ points: [
106
+ 'Ваши фотографии передаются через интернет на неизвестные серверы',
107
+ 'Время ожидания загрузки и удаленной обработки',
108
+ 'Дневные лимиты на размер файлов и количество бесплатных конвертаций',
109
+ 'Реальный риск хранения данных на сторонних серверах',
110
+ ],
111
+ },
112
+ {
113
+ title: 'Наша локальная архитектура',
114
+ description: 'Прямая обработка на вашем оборудовании с использованием технологии Vanilla JS.',
115
+ icon: 'mdi:laptop-mac',
116
+ highlight: true,
117
+ points: [
118
+ 'Передано ноль байт: всё происходит в вашей оперативной памяти',
119
+ 'Мгновенная скорость без зависимости от интернет-соединения',
120
+ 'Нет ограничений на размер или количество файлов',
121
+ 'Идеально для личных, медицинских или корпоративных фотографий',
122
+ ],
123
+ },
124
+ ],
125
+ },
126
+ {
127
+ type: 'title',
128
+ text: 'Как это работает технически',
129
+ level: 3,
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'Когда вы перетаскиваете файл WebP в инструмент, браузер декодирует его нативно с помощью своего внутреннего движка рендеринга. Затем изображение отрисовывается на невидимом элементе <strong>HTML5 Canvas</strong>. Поскольку JPG не поддерживает прозрачность, алгоритм предварительно заполняет холст сплошным белым фоном перед наложением изображения.',
134
+ },
135
+ {
136
+ type: 'paragraph',
137
+ html: 'Заключительный этап — экспорт: метод Canvas <code>toDataURL(\'image/jpeg\')</code> преобразует пиксели холста в высококачественный поток байтов сжатого JPG. Этот поток доставляется непосредственно в систему загрузки браузера без какой-либо сетевой активности. Весь процесс занимает миллисекунды даже для многомегапиксельных изображений.',
138
+ },
139
+ {
140
+ type: 'tip',
141
+ title: 'Совет по совместимости',
142
+ html: 'При обмене фотографиями с обычными пользователями или отправке по почте всегда используйте JPG — никаких проблем с совместимостью в любых почтовых клиентах, ОС или устройствах, без исключений и неприятных сюрпризов.',
143
+ },
144
+ {
145
+ type: 'title',
146
+ text: 'Варианты использования и совместимость',
147
+ level: 3,
148
+ },
149
+ {
150
+ type: 'list',
151
+ icon: 'mdi:check-circle',
152
+ items: [
153
+ 'Прикрепление фотографий в письмах Outlook, Gmail или Apple Mail.',
154
+ 'Вставка изображений в документы Word, Excel или презентации PowerPoint.',
155
+ 'Публикация в социальных сетях, которые не принимают WebP.',
156
+ 'Обмен через WhatsApp или мессенджеры с ограниченной поддержкой форматов.',
157
+ 'Печать фотографий в сервисах, которые принимают только JPG или PNG.',
158
+ ],
159
+ },
160
+ {
161
+ type: 'title',
162
+ text: 'Заключение',
163
+ level: 3,
164
+ },
165
+ {
166
+ type: 'paragraph',
167
+ html: 'WebP — это будущее изображений в вебе, но JPG остается королем универсальной совместимости. Этот инструмент позволяет преодолеть этот разрыв за считанные секунды, полностью приватно и без установки программ. Ваше изображение никогда не покидает ваше устройство.',
168
+ },
169
+ ];
170
+
171
+
172
+ export const content: WebpAJpgLocaleContent = {
173
+ slug,
174
+ title,
175
+ description,
176
+ ui,
177
+ seo,
178
+ faq,
179
+ bibliography,
180
+ howTo,
181
+ schemas: generateSchemas({ title, description, inLanguage: 'ru', faq, howTo }),
182
+ };
@@ -0,0 +1,182 @@
1
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import { generateSchemas } from '../../../shared/logic/schemas';
3
+ import type { WebpAJpgLocaleContent } from '../index';
4
+
5
+ const slug = 'webp-till-jpg-konverterare';
6
+ const title = 'Konvertera WebP till JPG Online och Gratis';
7
+ const description =
8
+ 'Konvertera WebP-bilder till JPG utan att ladda upp filer. 100 % privat lokal bearbetning. Transparenta bakgrunder ersätts automatiskt med vitt.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'Dra WebP-filer hit...',
12
+ convertText: 'För att konvertera dem till JPG direkt',
13
+ selectFiles: 'Välj filer',
14
+ processedFiles: 'Bearbetade filer',
15
+ downloadAll: 'Ladda ner alla (.zip)',
16
+ pending: 'Väntande',
17
+ bibliographyTitle: 'Bibliografiska Referenser',
18
+ faqTitle: 'Vanliga Frågor',
19
+ };
20
+
21
+ const faq: WebpAJpgLocaleContent['faq'] = [
22
+ {
23
+ question: 'Kan jag ladda upp privata bilder säkert?',
24
+ answer:
25
+ 'Ja. Det finns ingen uppladdningsserver. Din webbläsare bearbetar WebP-filen på din dator och genererar en JPG-fil som du kan ladda ner. Ingen annan ser den.',
26
+ },
27
+ {
28
+ question: 'Vad händer med min WebP-bakgrund om den är transparent?',
29
+ answer:
30
+ 'Eftersom JPG inte stöder transparens kommer konverteraren automatiskt att fylla transparenta områden med en solid vit bakgrund.',
31
+ },
32
+ {
33
+ question: 'Finns det någon gräns för konverteringar eller filstorlek?',
34
+ answer:
35
+ 'Vi sätter inga begränsningar. Du kan konvertera hundratals bilder så länge din dator har tillräcklig processorkraft och RAM.',
36
+ },
37
+ ];
38
+
39
+ const howTo: WebpAJpgLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Dra dina filer',
42
+ text: 'Släpp dina moderna WebP-filer i uppladdningsområdet eller välj dem med den interaktiva filbläddraren.',
43
+ },
44
+ {
45
+ name: 'Lokal konvertering',
46
+ text: 'Se hur den lokala motorn applicerar en bakgrund och tolkar varje pixel till det universella JPG-formatet.',
47
+ },
48
+ {
49
+ name: 'Hämta dina resultat',
50
+ text: 'Ladda ner individuellt eller använd ZIP-paketet för att samla alla dina nya fotografier.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: WebpAJpgLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'JPEG.org: JPEG-standarderna',
57
+ url: 'https://jpeg.org/jpeg/',
58
+ },
59
+ {
60
+ name: 'Mozilla Developer Network - image/jpeg',
61
+ url: 'https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Image_types#jpeg',
62
+ },
63
+ {
64
+ name: 'Kompatibilitet mellan WebP och JPEG',
65
+ url: 'https://developers.google.com/speed/webp/faq',
66
+ },
67
+ ];
68
+
69
+ const seo: WebpAJpgLocaleContent['seo'] = [
70
+ {
71
+ type: 'title',
72
+ text: 'WebP till JPG-konverterare: Universell kompatibilitet utan att kompromissa med integriteten',
73
+ level: 2,
74
+ },
75
+ {
76
+ type: 'paragraph',
77
+ html: '<strong>WebP</strong> är Googles satsning på effektivitet: lättare bilder med kvalitet jämförbar med traditionell JPG. Dess kompatibilitet förblir dock ett problem i den verkliga världen. E-postklienter som Outlook, äldre designprogram, meddelandeappar och företagets arbetsflöden är fortfarande beroende av det allestädes närvarande <strong>JPG</strong>-formatet. Att konvertera WebP till JPG är bryggan mellan den moderna webben och den verkliga världen.',
78
+ },
79
+ {
80
+ type: 'title',
81
+ text: 'WebP vs JPG: När ska man använda respektive format?',
82
+ level: 3,
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: 'WebP briljerar i kontrollerade miljöer: moderna webbplatser i Chrome, Edge eller Firefox där webbläsarkompatibilitet kan garanteras. Dess överlägsna komprimering minskar filstorleken med 25–35 % jämfört med motsvarande JPG, vilket förbättrar laddningstider och mätvärden för Core Web Vitals. Det är det ideala formatet när du kontrollerar visningsmiljön.',
87
+ },
88
+ {
89
+ type: 'paragraph',
90
+ html: 'JPG å andra sidan fungerar i <em>absolut alla sammanhang</em>: e-postbilagor, PowerPoint presentationer, Word dokument, hemmaskrivare, äldre redigeringsprogram och sociala medieplattformar utan undantag. Om du behöver att någon ska kunna öppna din bild utan tekniska hinder är JPG det rätta svaret.',
91
+ },
92
+ {
93
+ type: 'title',
94
+ text: 'Jämförelse: Lokal vs Molnkonvertering',
95
+ level: 3,
96
+ },
97
+ {
98
+ type: 'comparative',
99
+ items: [
100
+ {
101
+ title: 'Molnkonverterare',
102
+ description: 'Verktyg som laddar upp dina filer till en fjärrserver.',
103
+ icon: 'mdi:cloud-upload',
104
+ pointIcon: 'mdi:close-circle-outline',
105
+ points: [
106
+ 'Dina foton skickas över internet till okända servrar',
107
+ 'Väntetid för uppladdning och fjärrbearbetning',
108
+ 'Dagliga begränsningar för filstorlek och gratis konverteringar',
109
+ 'Verklig risk för datalagring på servrar från tredje part',
110
+ ],
111
+ },
112
+ {
113
+ title: 'Vår Lokala Arkitektur',
114
+ description: 'Direkt bearbetning på din hårdvara med Vanilla JS-teknik.',
115
+ icon: 'mdi:laptop-mac',
116
+ highlight: true,
117
+ points: [
118
+ 'Noll byte skickas: allt sker i ditt RAM-minne',
119
+ 'Omedelbar hastighet utan att bero på din anslutning',
120
+ 'Inga gränser för filstorlek eller antal filer',
121
+ 'Perfekt för personliga, medicinska eller företagsfoton',
122
+ ],
123
+ },
124
+ ],
125
+ },
126
+ {
127
+ type: 'title',
128
+ text: 'Hur det fungerar tekniskt',
129
+ level: 3,
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'När du drar en WebP-fil till verktyget avkodar webbläsaren den nativt med sin interna renderingsmotor. Filen ritas sedan på ett osynligt <strong>HTML5 Canvas</strong>-element. Eftersom JPG inte har stöd för transparens fyller algoritmen duken med en solid vit bakgrund innan bilden läggs ovanpå.',
134
+ },
135
+ {
136
+ type: 'paragraph',
137
+ html: 'Sista steget är export: Canvas-metoden <code>toDataURL(\'image/jpeg\')</code> omvandlar pixlarna till en högkvalitativ komprimerad JPG-byteström. Denna ström levereras direkt till webbläsarens nedladdningssystem, utan någon nätverkskommunikation. Hela processen tar millisekunder även för bilder på flera megapixel.',
138
+ },
139
+ {
140
+ type: 'tip',
141
+ title: 'Tips för kompatibilitet',
142
+ html: 'När du delar foton med icke-tekniska användare eller skickar dem via e-post, använd alltid JPG – noll kompatibilitetsproblem i alla e-postklienter, operativsystem eller enheter, inga undantag och inga obehagliga överraskningar.',
143
+ },
144
+ {
145
+ type: 'title',
146
+ text: 'Användningsområden och kompatibilitet',
147
+ level: 3,
148
+ },
149
+ {
150
+ type: 'list',
151
+ icon: 'mdi:check-circle',
152
+ items: [
153
+ 'Bifoga foton i e-postmeddelanden från Outlook, Gmail eller Apple Mail.',
154
+ 'Infoga bilder i Word dokument, Excel eller PowerPoint presentationer.',
155
+ 'Publicera på sociala medieplattformar som nekar WebP.',
156
+ 'Dela via WhatsApp eller meddelandeappar med begränsat formatstöd.',
157
+ 'Skriva ut fotografier hos utskriftstjänster som endast accepterar JPG eller PNG.',
158
+ ],
159
+ },
160
+ {
161
+ type: 'title',
162
+ text: 'Slutsats',
163
+ level: 3,
164
+ },
165
+ {
166
+ type: 'paragraph',
167
+ html: 'WebP är framtiden för webbbilder, men JPG förblir kungen av universell kompatibilitet. Detta verktyg låter dig korsa den bryggan på några sekunder, helt privat och utan att installera något. Din bild lämnar aldrig din enhet.',
168
+ },
169
+ ];
170
+
171
+
172
+ export const content: WebpAJpgLocaleContent = {
173
+ slug,
174
+ title,
175
+ description,
176
+ ui,
177
+ seo,
178
+ faq,
179
+ bibliography,
180
+ howTo,
181
+ schemas: generateSchemas({ title, description, inLanguage: 'sv', faq, howTo }),
182
+ };
@@ -0,0 +1,182 @@
1
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import { generateSchemas } from '../../../shared/logic/schemas';
3
+ import type { WebpAJpgLocaleContent } from '../index';
4
+
5
+ const slug = 'webp-den-jpg-ye-donusturucu';
6
+ const title = 'WebP\'yi JPG\'ye Çevrimiçi ve Ücretsiz Dönüştürün';
7
+ const description =
8
+ 'Dosyaları yüklemeden WebP görüntülerini JPG\'ye dönüştürün. %100 özel yerel işleme. Şeffaf arka planlar otomatik olarak beyazla değiştirilir.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'WebP dosyalarını sürükleyin...',
12
+ convertText: 'Onları anında JPG\'ye dönüştürmek için',
13
+ selectFiles: 'Dosyaları seçin',
14
+ processedFiles: 'İşlenmiş dosyalar',
15
+ downloadAll: 'Tümünü İndir (.zip)',
16
+ pending: 'Bekliyor',
17
+ bibliographyTitle: 'Bibliyografik Referanslar',
18
+ faqTitle: 'Sıkça Sorulan Sorular',
19
+ };
20
+
21
+ const faq: WebpAJpgLocaleContent['faq'] = [
22
+ {
23
+ question: 'Özel resimleri güvenli bir şekilde yükleyebilir miyim?',
24
+ answer:
25
+ 'Evet. Herhangi bir yükleme sunucusu yok. Tarayıcınız WebP\'yi bilgisayarınızda işler ve indirmeniz için JPG\'yi oluşturur. Başka kimse görmez.',
26
+ },
27
+ {
28
+ question: 'WebP arka planım şeffafsa ne olur?',
29
+ answer:
30
+ 'JPG şeffaflığı desteklemediğinden, dönüştürücü şeffaf alanları otomatik olarak düz beyaz bir arka planla dolduracaktır.',
31
+ },
32
+ {
33
+ question: 'Dönüştürmelerde veya dosya boyutunda bir sınır var mı?',
34
+ answer:
35
+ 'Herhangi bir kısıtlama getirmiyoruz. Bilgisayarınız yeterli işlem gücüne ve RAM\'e sahip olduğu sürece yüzlerce görüntüyü dönüştürebilirsiniz.',
36
+ },
37
+ ];
38
+
39
+ const howTo: WebpAJpgLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Dosyalarınızı sürükleyin',
42
+ text: 'Modern WebP dosyalarınızı yükleme alanına bırakın veya etkileşimli dosya tarayıcısını kullanarak seçin.',
43
+ },
44
+ {
45
+ name: 'Yerel Dönüştürme',
46
+ text: 'Yerel motorun bir arka plan uygulamasını ve her pikseli evrensel JPG formatına yorumlamasını izleyin.',
47
+ },
48
+ {
49
+ name: 'Sonuçlarınızı alın',
50
+ text: 'Tek tek indirin veya tüm yeni fotoğraflarınızı birleştirmek için ZIP paketini kullanın.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: WebpAJpgLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'JPEG.org: JPEG standartları',
57
+ url: 'https://jpeg.org/jpeg/',
58
+ },
59
+ {
60
+ name: 'Mozilla Developer Network - image/jpeg',
61
+ url: 'https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Image_types#jpeg',
62
+ },
63
+ {
64
+ name: 'WebP\'den JPEG\'e uyumluluk',
65
+ url: 'https://developers.google.com/speed/webp/faq',
66
+ },
67
+ ];
68
+
69
+ const seo: WebpAJpgLocaleContent['seo'] = [
70
+ {
71
+ type: 'title',
72
+ text: 'WebP\'den JPG\'ye Dönüştürücü: Gizlilikten Ödün Vermeden Evrensel Uyumluluk',
73
+ level: 2,
74
+ },
75
+ {
76
+ type: 'paragraph',
77
+ html: '<strong>WebP</strong>, Google\'ın verimlilik konusundaki bahsidir: geleneksel JPG ile karşılaştırılabilir kalitede daha hafif görüntüler. Ancak uyumluluğu gerçek dünyada bir sorun olmaya devam ediyor. Outlook gibi e-posta istemcileri, eski tasarım yazılımları, mesajlaşma uygulamaları ve kurumsal iş akışları hala her yerde bulunan <strong>JPG</strong>\'ye bağlıdır. WebP\'yi JPG\'ye dönüştürmek, modern web ile gerçek dünya arasındaki köprüdür.',
78
+ },
79
+ {
80
+ type: 'title',
81
+ text: 'WebP mi JPG mi? Her Format Ne Zaman Kullanılmalı?',
82
+ level: 3,
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: 'WebP, kontrollü ortamlarda mükemmeldir: tarayıcı uyumluluğunun garanti edilebildiği Chrome, Edge veya Firefox üzerindeki modern web siteleri. Üstün sıkıştırması, dosya ağırlığını eşdeğer JPG\'ye kıyasla %25-35 oranında azaltarak yükleme sürelerini ve Core Web Vitals metriklerini iyileştirir. Görüntüleme ortamını kontrol ettiğinizde ideal formattır.',
87
+ },
88
+ {
89
+ type: 'paragraph',
90
+ html: 'JPG ise <em>kesinlikle her bağlamda</em> çalışır: e-posta ekleri, PowerPoint sunumları, Word belgeleri, ev yazıcıları, eski düzenleme uygulamaları ve istisnasız sosyal medya platformları. Birinin resminizi herhangi bir teknik sürtünme olmadan açmasına ihtiyacınız varsa, JPG doğru cevaptır.',
91
+ },
92
+ {
93
+ type: 'title',
94
+ text: 'Karşılaştırma: Yerel ve Bulut Dönüştürme',
95
+ level: 3,
96
+ },
97
+ {
98
+ type: 'comparative',
99
+ items: [
100
+ {
101
+ title: 'Bulut Dönüştürücüler',
102
+ description: 'Dosyalarınızı uzak bir sunucuya yükleyen araçlar.',
103
+ icon: 'mdi:cloud-upload',
104
+ pointIcon: 'mdi:close-circle-outline',
105
+ points: [
106
+ 'Fotoğraflarınız internet üzerinden bilinmeyen sunuculara gider',
107
+ 'Yükleme ve uzaktan işleme için bekleme süresi',
108
+ 'Dosya boyutu ve ücretsiz dönüştürme sayısında günlük sınırlar',
109
+ 'Üçüncü taraf sunucularda veri tutma konusunda gerçek risk',
110
+ ],
111
+ },
112
+ {
113
+ title: 'Yerel Mimarimiz',
114
+ description: 'Vanilla JS teknolojisini kullanarak doğrudan donanımınızda işleme.',
115
+ icon: 'mdi:laptop-mac',
116
+ highlight: true,
117
+ points: [
118
+ 'Sıfır bayt gönderilir: Her şey RAM\'inizde gerçekleşir',
119
+ 'Bağlantınıza bağlı kalmadan anlık hız',
120
+ 'Dosya boyutu veya dosya sayısında sınır yok',
121
+ 'Kişisel, tıbbi veya kurumsal fotoğraflar için mükemmel',
122
+ ],
123
+ },
124
+ ],
125
+ },
126
+ {
127
+ type: 'title',
128
+ text: 'Teknik Olarak Nasıl Çalışır',
129
+ level: 3,
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'Bir WebP dosyasını araca sürüklediğinizde, tarayıcı dahili işleme motorunu kullanarak onu yerel olarak çözer. Dosya daha sonra görünmez bir <strong>HTML5 Canvas</strong> öğesine çizilir. JPG şeffaflığı desteklemediğinden, algoritma görüntüyü üzerine yerleştirmeden önce kanvası düz beyaz bir arka planla önceden doldurur.',
134
+ },
135
+ {
136
+ type: 'paragraph',
137
+ html: 'Son adım dışa aktarmadır: Kanvas yöntemi <code>toDataURL(\'image/jpeg\')</code> kanvas piksellerini yüksek kaliteli sıkıştırılmış bir JPG bayt akışına dönüştürür. Bu akış, herhangi bir ağ iletişimi olmaksızın doğrudan tarayıcının indirme sistemine iletilir. Tüm süreç, çok megapikselli görüntüler için bile milisaniyeler sürer.',
138
+ },
139
+ {
140
+ type: 'tip',
141
+ title: 'Uyumluluk ipucu',
142
+ html: 'Fotoğrafları teknik olmayan kullanıcılarla paylaşırken veya e-posta yoluyla gönderirken daima JPG kullanın — herhangi bir e-posta istemcisi, işletim sistemi veya cihazda sıfır uyumluluk sorunu, istisna yok ve hoş olmayan sürprizler yok.',
143
+ },
144
+ {
145
+ type: 'title',
146
+ text: 'Kullanım Durumları ve Uyumluluk',
147
+ level: 3,
148
+ },
149
+ {
150
+ type: 'list',
151
+ icon: 'mdi:check-circle',
152
+ items: [
153
+ 'Outlook, Gmail veya Apple Mail\'den gelen e-postalara fotoğraf ekleme.',
154
+ 'Word belgelerine, Excel\'e veya PowerPoint sunumlarına resim ekleme.',
155
+ 'WebP\'yi reddeden sosyal medya platformlarında paylaşım yapma.',
156
+ 'Sınırlı format desteğine sahip WhatsApp veya mesajlaşma uygulamaları aracılığıyla paylaşma.',
157
+ 'Yalnızca JPG veya PNG kabul eden baskı hizmetlerinde fotoğraf yazdırma.',
158
+ ],
159
+ },
160
+ {
161
+ type: 'title',
162
+ text: 'Sonuç',
163
+ level: 3,
164
+ },
165
+ {
166
+ type: 'paragraph',
167
+ html: 'WebP web görüntülerinin geleceğidir, ancak JPG evrensel uyumluluğun kralı olmaya devam ediyor. Bu araç, bu köprüyü saniyeler içinde, tamamen özel olarak ve herhangi bir şey yüklemeden geçmenizi sağlar. Resminiz cihazınızdan asla ayrılmaz.',
168
+ },
169
+ ];
170
+
171
+
172
+ export const content: WebpAJpgLocaleContent = {
173
+ slug,
174
+ title,
175
+ description,
176
+ ui,
177
+ seo,
178
+ faq,
179
+ bibliography,
180
+ howTo,
181
+ schemas: generateSchemas({ title, description, inLanguage: 'tr', faq, howTo }),
182
+ };