@jjlmoya/utils-converters 1.7.0 → 1.9.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/logic/schemas.ts +57 -0
  3. package/src/tests/faq_count.test.ts +13 -4
  4. package/src/tests/i18n_coverage.test.ts +36 -0
  5. package/src/tests/locale_completeness.test.ts +42 -0
  6. package/src/tests/no_h1_in_components.test.ts +48 -0
  7. package/src/tests/schemas_fulfillment.test.ts +23 -0
  8. package/src/tests/seo_length.test.ts +1 -1
  9. package/src/tests/slug_uniqueness.test.ts +81 -0
  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,183 @@
1
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import { generateSchemas } from '../../../shared/logic/schemas';
3
+ import type { JpgAIcoLocaleContent } from '../index';
4
+
5
+ const slug = 'konverter-jpg-v-ico';
6
+ const title = 'Конвертер JPG в ICO';
7
+ const description =
8
+ 'Конвертируйте фотографии JPG в ICO с настоящими бинарными заголовками Microsoft. Автоматическая обрезка под квадрат. Без загрузки файлов на сервер. Бесплатно и приватно.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'Перетащите файлы JPG...',
12
+ convertText: 'Чтобы мгновенно конвертировать их в ICO',
13
+ selectFiles: 'Выбрать файлы',
14
+ processedFiles: 'Обработанные файлы',
15
+ downloadAll: 'Скачать всё (.zip)',
16
+ pending: 'В ожидании',
17
+ bibliographyTitle: 'Библиографические ссылки',
18
+ faqTitle: 'Часто задаваемые вопросы',
19
+ };
20
+
21
+ const faq: JpgAIcoLocaleContent['faq'] = [
22
+ {
23
+ question: 'Совместим ли полученный файл ICO с настройкой папок Windows?',
24
+ answer:
25
+ 'Да, мы создаем на 100% аутентичный файл формата Microsoft Icon, вставляя стандартизированный двоичный заголовок на низком уровне в матрицу изображения.',
26
+ },
27
+ {
28
+ question: 'Что произойдет с пропорциями, если мой оригинальный JPG — панорамное фото?',
29
+ answer:
30
+ 'Строгий глобальный стандарт ICO требует идеально квадратного изображения. Наш движок HTML5 JS центрирует ваше фото и обрежет лишнее, гарантируя сбалансированный результат.',
31
+ },
32
+ {
33
+ question: 'Опасно ли загружать в конвертер корпоративные или личные логотипы в формате JPG?',
34
+ answer:
35
+ 'Движок Canvas на JavaScript работает в вашем собственном браузере. Конвертация сотен фотографий в ICO не отправляет ни одного мегабайта в облака сомнительных стран.',
36
+ },
37
+ ];
38
+
39
+ const howTo: JpgAIcoLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Соберите исходные JPG-фото',
42
+ text: 'Найдите и соберите обычные фотографии и поместите их, перетащив в наш удобный квадрат.',
43
+ },
44
+ {
45
+ name: 'Наблюдайте за бинарной очисткой',
46
+ text: 'Перекодирование нативно и быстро вставит метаданные и заголовки асинхронно, создавая в памяти строго чистую иконку.',
47
+ },
48
+ {
49
+ name: 'Соберите несколько дизайнов в ZIP',
50
+ text: 'Завершите работу, массово скачав всё в компактном архиве всего за несколько секунд.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: JpgAIcoLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'Структура и использование формата ICO',
57
+ url: 'https://en.wikipedia.org/wiki/ICO_(file_format)',
58
+ },
59
+ {
60
+ name: 'Стандарты JPEG.org',
61
+ url: 'https://jpeg.org/',
62
+ },
63
+ ];
64
+
65
+ const seo: JpgAIcoLocaleContent['seo'] = [
66
+ {
67
+ type: 'title',
68
+ text: 'Конвертер JPG в ICO: Создавайте фавиконы и иконки Windows из своих фото',
69
+ level: 2,
70
+ },
71
+ {
72
+ type: 'paragraph',
73
+ html: 'Формат <strong>ICO</strong> — это стандарт Microsoft для иконок приложений Windows и фавиконов веб-сайтов. В отличие от простого переименования JPG в .ico, подлинный файл ICO требует специфической бинарной структуры с 22-байтными заголовками и встроенным каталогом изображений. <strong>JPG</strong> является наиболее распространенной отправной точкой для создания этих иконок — логотипа компании, фотографии профиля или любого изображения, которое вы хотите превратить в визуальный символ вашего приложения или сайта.',
74
+ },
75
+ {
76
+ type: 'title',
77
+ text: 'JPG или ICO? Когда использовать каждый формат',
78
+ level: 3,
79
+ },
80
+ {
81
+ type: 'paragraph',
82
+ html: '<strong>JPG</strong> — это исходный формат, а не формат для иконок. Он идеален для фотографий и баннеров, но несовместим с системами, требующими иконки: проводником Windows, панелью закладок браузера, ярлыками на рабочем столе или манифестами PWA-приложений. Операционная система или браузер, ищущие иконку, ожидают формат ICO — и если они его не найдут, отобразят стандартный значок или пустой квадрат.',
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: 'Формат <strong>ICO</strong> был разработан для хранения нескольких разрешений в одном файле: <strong>16×16</strong> для панели закладок, <strong>32×32</strong> для ярлыков, <strong>48×48</strong> для проводника и <strong>256×256</strong> для экранов с высокой плотностью пикселей. Браузеры и операционные системы автоматически выбирают подходящее разрешение в зависимости от контекста отображения — пользователю не нужно ничем управлять.',
87
+ },
88
+ {
89
+ type: 'title',
90
+ text: 'Сравнение: локальная vs облачная конвертация',
91
+ level: 3,
92
+ },
93
+ {
94
+ type: 'comparative',
95
+ items: [
96
+ {
97
+ title: 'Облачные конвертеры',
98
+ description: 'Инструменты, которые загружают ваши файлы на удаленный сервер.',
99
+ icon: 'mdi:cloud-upload',
100
+ pointIcon: 'mdi:close-circle-outline',
101
+ points: [
102
+ 'Задержка сети при загрузке и скачивании',
103
+ 'Ваши корпоративные логотипы хранятся на сторонних серверах',
104
+ 'Ограничения по размеру файлов и дневные лимиты конвертаций',
105
+ 'Навязчивая реклама и сторонние трекеры',
106
+ ],
107
+ },
108
+ {
109
+ title: 'Наша локальная архитектура',
110
+ description: 'Прямая обработка на вашем оборудовании с использованием технологии Vanilla JS.',
111
+ icon: 'mdi:laptop-mac',
112
+ highlight: true,
113
+ points: [
114
+ 'Мгновенная скорость — нулевая задержка сети',
115
+ 'Полная конфиденциальность — 0 байт отправлено наружу',
116
+ 'Нет лимитов по размеру или количеству файлов',
117
+ 'Чистый интерфейс, без рекламы и отслеживания',
118
+ ],
119
+ },
120
+ ],
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Как это работает технически',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'JPG декодируется и отрисовывается на <strong>HTML5 Canvas</strong> в памяти. Поскольку формат ICO требует квадратного изображения, движок автоматически определяет, является ли JPG прямоугольным, и обрезает его, центрируя наиболее важную часть. Затем он создает стандартный заголовок Microsoft ICO с правильным магическим числом (<code>00 00 01 00</code>), каталогом изображений и закодированными данными пикселей. Результат — настоящий бинарный файл .ico, а не переименованный PNG.',
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'Поскольку у JPG нет альфа-канала, результирующий ICO также не будет иметь прозрачности — у него будет сплошной фон, унаследованный от оригинальной фотографии. Если вам нужен фавикон с прозрачным фоном (например, для адаптации к темным или светлым панелям закладок), рекомендуемый процесс: удалите фон в редакторе, сохраните как PNG и используйте конвертер PNG в ICO.',
134
+ },
135
+ {
136
+ type: 'tip',
137
+ title: 'Совет: несколько разрешений в одном ICO',
138
+ html: 'Файлы ICO могут содержать <strong>несколько разрешений</strong> в одном файле — браузер или ОС автоматически выбирают наиболее подходящее для каждого случая. Для достижения наилучшего результата используйте в качестве источника квадратный JPG размером не менее <strong>256×256 пикселей</strong>: это даст конвертеру достаточно информации для создания четких размеров 16×16, 32×32 и 48×48 без пикселизации.',
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Варианты использования и совместимость',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'list',
147
+ icon: 'mdi:check-circle',
148
+ items: [
149
+ 'Фавикон сайта: совместим со всеми браузерами, включая Internet Explorer.',
150
+ 'Настройка иконок папок и рабочего стола в Windows 10/11.',
151
+ 'Иконка ярлыка для десктопных приложений или установщиков.',
152
+ 'Иконка приложения для проектов Electron или PWA-приложений.',
153
+ 'Иконки для систем управления файлами и корпоративных проводников.',
154
+ ],
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: 'Заключение',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: 'Конвертация JPG в ICO — это технически необходимый шаг для любого веб- или десктоп-проекта, которому нужна узнаваемая визуальная идентичность. Этот инструмент создает подлинные ICO с правильной бинарной структурой за считанные секунды, не загружая ваш логотип на какой-либо внешний сервер. Результат работает во всех браузерах, в проводнике Windows и в любой системе, использующей стандарт ICO от Microsoft.',
164
+ },
165
+ ];
166
+
167
+ export const content: JpgAIcoLocaleContent = {
168
+ slug,
169
+ title,
170
+ description,
171
+ ui,
172
+ seo,
173
+ faq,
174
+ bibliography,
175
+ howTo,
176
+ schemas: generateSchemas({
177
+ title,
178
+ description,
179
+ inLanguage: 'ru',
180
+ faq,
181
+ howTo,
182
+ }),
183
+ };
@@ -0,0 +1,183 @@
1
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import { generateSchemas } from '../../../shared/logic/schemas';
3
+ import type { JpgAIcoLocaleContent } from '../index';
4
+
5
+ const slug = 'konvertera-jpg-till-ico';
6
+ const title = 'Konvertera JPG till ICO';
7
+ const description =
8
+ 'Konvertera JPG-foton till ICO med riktiga Microsoft binära headers. Automatisk kvadratisk beskärning. Inga filuppladdningar. Gratis och privat.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'Dra JPG-filer hit...',
12
+ convertText: 'För att konvertera dem till ICO 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: JpgAIcoLocaleContent['faq'] = [
22
+ {
23
+ question: 'Är den resulterande ICO-filen nativt kompatibel för att anpassa Windows-mappar?',
24
+ answer:
25
+ 'Ja, vi skapar en 100 % autentisk Microsoft Icon Format-fil genom att infoga en standardiserad binär header på låg nivå i bildmatrisen.',
26
+ },
27
+ {
28
+ question: 'Vad händer med proportionerna om mitt ursprungliga JPG är ett panoramafoto?',
29
+ answer:
30
+ 'Den rigorösa globala ICO-standarden kräver absolut en perfekt kvadratisk bild. Vår HTML5 JS-motor kommer att centrera ditt foto och beskära överskottet, vilket garanterar ett balanserat resultat.',
31
+ },
32
+ {
33
+ question: 'Är det farligt att ladda upp företagslogotyper eller personliga JPG-filer till konverteraren?',
34
+ answer:
35
+ 'Canvas-motorn i JavaScript körs i din egen webbläsare. Att konvertera hundratals foton till ICO skickar inte en enda megabyte till något moln i tveksamma länder.',
36
+ },
37
+ ];
38
+
39
+ const howTo: JpgAIcoLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Samla de ursprungliga JPG-fotona',
42
+ text: 'Hitta och samla de vanliga fotona och deponera dem genom att släppa dem i vår vänliga kvadrat.',
43
+ },
44
+ {
45
+ name: 'Bevittna den binära purificationen',
46
+ text: 'Omkodningen kommer att nativt och snabbt infoga metadata och headers asynkront och generera en strikt ren ikon i minnet.',
47
+ },
48
+ {
49
+ name: 'Sammanställ flera ZIP-designer',
50
+ text: 'Slutför jobbet genom att ladda ner allt massivt i ett kompakt paket på bara några sekunder.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: JpgAIcoLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'ICO Ikonografisk Struktur och Systemanvändning',
57
+ url: 'https://en.wikipedia.org/wiki/ICO_(file_format)',
58
+ },
59
+ {
60
+ name: 'JPEG.org Standarder',
61
+ url: 'https://jpeg.org/',
62
+ },
63
+ ];
64
+
65
+ const seo: JpgAIcoLocaleContent['seo'] = [
66
+ {
67
+ type: 'title',
68
+ text: 'JPG till ICO-konverterare: Skapa Favicons och Windows-ikoner från dina foton',
69
+ level: 2,
70
+ },
71
+ {
72
+ type: 'paragraph',
73
+ html: '<strong>ICO</strong>-formatet är Microsofts standard for Windows-applikationsikoner och webbplatsers favicons. Till skillnad från att bara byta namn på en JPG till .ico, kräver en äkta ICO-fil en specifik binär struktur med 22-byte headers och en inbäddad bildkatalog. <strong>JPG</strong> är den vanligaste utgångspunkten for att skapa dessa ikoner — en företagslogotyp, ett profilfoto eller vilken bild som helst som du vill forvandla till din applikations eller webbplats visuella ikon.',
74
+ },
75
+ {
76
+ type: 'title',
77
+ text: 'JPG eller ICO? När du ska använda respektive format',
78
+ level: 3,
79
+ },
80
+ {
81
+ type: 'paragraph',
82
+ html: '<strong>JPG</strong> är ett källformat, inte ett målformat for ikoner. Perfekt for fotografier och banners, men inkompatibelt med system som kräver ikoner: Windows Explorer, webbläsarens bokmärkesfält, skrivbordsgenvägar eller PWA-applikationsmanifest. Ett operativsystem eller en webbläsare som letar efter en ikon forväntar sig ICO-formatet — och om den inte hittar det visas en generisk ikon eller en trasig kvadrat.',
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: '<strong>ICO</strong>-formatet designades for att innehålla flera upplösningar i en enda fil: <strong>16×16</strong> for bokmärkesfältet, <strong>32×32</strong> for genvägar, <strong>48×48</strong> for filutforskaren och <strong>256×256</strong> for högupplösta skärmar. Webbläsare och operativsystem väljer automatiskt lämplig upplösning baserat på visningssammanhanget — användaren behöver inte hantera någonting.',
87
+ },
88
+ {
89
+ type: 'title',
90
+ text: 'Jämförelse: Lokal vs Molnkonvertering',
91
+ level: 3,
92
+ },
93
+ {
94
+ type: 'comparative',
95
+ items: [
96
+ {
97
+ title: 'Molnkonverterare',
98
+ description: 'Verktyg som laddar upp dina filer till en fjärrserver.',
99
+ icon: 'mdi:cloud-upload',
100
+ pointIcon: 'mdi:close-circle-outline',
101
+ points: [
102
+ 'Nätverkslatens vid uppladdning och nedladdning',
103
+ 'Dina företagslogotyper lagras på tredjepartsservrar',
104
+ 'Begränsningar i filstorlek och dagliga konverteringstak',
105
+ 'Påträngande annonser och spårare från tredje part',
106
+ ],
107
+ },
108
+ {
109
+ title: 'Vår Lokala Arkitektur',
110
+ description: 'Direkt bearbetning på din hårdvara med Vanilla JS-teknik.',
111
+ icon: 'mdi:laptop-mac',
112
+ highlight: true,
113
+ points: [
114
+ 'Omedelbar hastighet — noll nätverkslatens',
115
+ 'Komplett integritet — 0 byte skickas externt',
116
+ 'Inga MB-gränser eller begränsningar på antal filer',
117
+ 'Rent gränssnitt, inga annonser eller spårning',
118
+ ],
119
+ },
120
+ ],
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Hur det fungerar tekniskt',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'JPG-filen avkodas och ritas på ett <strong>HTML5 Canvas</strong> i minnet. Eftersom ICO-formatet kräver en kvadratisk bild detekterar motorn automatiskt om JPG-filen är rektangulär och beskär den genom att centrera den mest relevanta delen. Sedan bygger den standarden for Microsoft ICO-header med korrekt magic number (<code>00 00 01 00</code>), bildkatalogen und den kodade pixeldatan. Resultatet är en äkta binär .ico-fil — inte en omdöpt PNG.',
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'Eftersom JPG saknar en alfakanal kommer den resulterande ICO-filen inte heller att ha någon transparens — den kommer att ha en solid bakgrund som ärvts från det ursprungliga fotot. Om du behöver en favicon med transparent bakgrund (till exempel for att anpassa dig till mörka eller ljusa bokmärkesfält) är det rekommenderade arbetsflödet: ta bort bakgrunden i en redigerare, spara som PNG und använd PNG till ICO-konverteraren.',
134
+ },
135
+ {
136
+ type: 'tip',
137
+ title: 'Tips: flera upplösningar i en enda ICO',
138
+ html: 'ICO-filer kan packa <strong>flera upplösningar</strong> i en enda fil — webbläsaren eller OS väljer automatiskt den lämpligaste for varje sammanhang. För bästa möjliga resultat, använd en kvadratisk JPG på minst <strong>256×256 pixlar</strong> som källa: detta ger konverteraren tillräckligt med information for att generera skarpa 16×16, 32×32 und 48×48 storlekar utan pixelering.',
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Användningsområden und kompatibilitet',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'list',
147
+ icon: 'mdi:check-circle',
148
+ items: [
149
+ 'Webbplatsens favicon: kompatibel med alla webbläsare inklusive Internet Explorer.',
150
+ 'Anpassning av mapp- und skrivbordsikoner i Windows 10/11.',
151
+ 'Genvägsikon for skrivbordsapplikationer eller installerare.',
152
+ 'Applikationsikon for Electron-projekt eller PWA-applikationer.',
153
+ 'Ikoner for filhanteringssystem und företagsutforskare.',
154
+ ],
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: 'Slutsats',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: 'Att konvertera en JPG till ICO är ett tekniskt nödvändigt steg for alla webb- eller skrivbordsprojekt som behöver en igenkännbar visuell identitet. Detta verktyg genererar autentiska ICO-filer med korrekt binär struktur på några sekunder, utan att ladda upp din logotyp till någon extern server. Resultatet fungerar i alla webbläsare, i Windows Explorer und i alla system som använder Microsofts ICO-standard.',
164
+ },
165
+ ];
166
+
167
+ export const content: JpgAIcoLocaleContent = {
168
+ slug,
169
+ title,
170
+ description,
171
+ ui,
172
+ seo,
173
+ faq,
174
+ bibliography,
175
+ howTo,
176
+ schemas: generateSchemas({
177
+ title,
178
+ description,
179
+ inLanguage: 'sv',
180
+ faq,
181
+ howTo,
182
+ }),
183
+ };
@@ -0,0 +1,183 @@
1
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import { generateSchemas } from '../../../shared/logic/schemas';
3
+ import type { JpgAIcoLocaleContent } from '../index';
4
+
5
+ const slug = 'jpg-den-ico-ya-donusturucu';
6
+ const title = 'JPG\'den ICO\'ya Dönüştürücü';
7
+ const description =
8
+ 'JPG fotoğrafları gerçek Microsoft ikili üstbilgileriyle ICO\'ya dönüştürün. Otomatik kare kırpma. Dosya yüklemesi yok. Ücretsiz ve özel.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'JPG dosyalarını sürükleyin...',
12
+ convertText: 'Onları anında ICO\'ya 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: JpgAIcoLocaleContent['faq'] = [
22
+ {
23
+ question: 'Elde edilen ICO dosyası Windows klasörlerini özelleştirmek için yerel olarak uyumlu mu?',
24
+ answer:
25
+ 'Evet, görüntü matrisine düşük düzeyde standardize edilmiş bir ikili üstbilgi ekleyerek %100 orijinal bir Microsoft Simge Formatı dosyası oluşturuyoruz.',
26
+ },
27
+ {
28
+ question: 'Orijinal JPG dosyam panoramik yatay bir fotoğrafsa orana ne olur?',
29
+ answer:
30
+ 'Katı küresel ICO standardı kesinlikle mükemmel bir kare görüntü gerektirir. HTML5 JS motorumuz fotoğrafınızı merkeze alacak ve fazlalığı kırparak dengeli bir sonuç garanti edecektir.',
31
+ },
32
+ {
33
+ question: 'Kurumsal veya kişisel JPG logolarını dönüştürücüye yüklemek tehlikeli mi?',
34
+ answer:
35
+ 'JavaScript\'teki Canvas motoru kendi tarayıcınızda çalışır. Yüzlerce fotoğrafın ICO\'ya dönüştürülmesi, şüpheli ülkelerdeki herhangi bir buluta tek bir megabayt bile göndermez.',
36
+ },
37
+ ];
38
+
39
+ const howTo: JpgAIcoLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Orijinal JPG fotoğraflarını toplayın',
42
+ text: 'Geleneksel fotoğrafları bulun ve toplayın ve onları dost canlısı karemize bırakarak yerleştirin.',
43
+ },
44
+ {
45
+ name: 'İkili arındırmaya tanık olun',
46
+ text: 'Yeniden kodlama, meta verileri ve üstbilgileri yerel ve hızlı bir şekilde asenkron olarak ekleyerek bellekte kesinlikle saf bir simge oluşturacaktır.',
47
+ },
48
+ {
49
+ name: 'Birden fazla ZIP tasarımını derleyin',
50
+ text: 'Saniyeler içinde her şeyi toplu olarak kompakt bir pakette indirerek işi bitirin.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: JpgAIcoLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'ICO İkonografik Yapısı ve Sistem Kullanımı',
57
+ url: 'https://en.wikipedia.org/wiki/ICO_(file_format)',
58
+ },
59
+ {
60
+ name: 'JPEG.org Standartları',
61
+ url: 'https://jpeg.org/',
62
+ },
63
+ ];
64
+
65
+ const seo: JpgAIcoLocaleContent['seo'] = [
66
+ {
67
+ type: 'title',
68
+ text: 'JPG\'den ICO\'ya Dönüştürücü: Fotoğraflarınızdan Faviconlar ve Windows Simgeleri Oluşturun',
69
+ level: 2,
70
+ },
71
+ {
72
+ type: 'paragraph',
73
+ html: '<strong>ICO</strong> formatı, Microsoft\'un Windows uygulama simgeleri ve web sitesi faviconları için standarttır. Bir JPG\'yi sadece .ico olarak yeniden adlandırmanın aksine, gerçek bir ICO dosyası 22 baytlık üstbilgiler ve gömülü bir görüntü dizini ile belirli bir ikili yapı gerektirir. <strong>JPG</strong>, bu simgeleri oluşturmak için en yaygın başlangıç noktasıdır; bir şirket logosu, bir profil fotoğrafı veya uygulamanızın veya web sitenizin görsel simgesine dönüştürmek istediğiniz herhangi bir görüntü.',
74
+ },
75
+ {
76
+ type: 'title',
77
+ text: 'JPG mi ICO mu? Her format ne zaman kullanılır',
78
+ level: 3,
79
+ },
80
+ {
81
+ type: 'paragraph',
82
+ html: '<strong>JPG</strong> bir kaynak formattır, simgeler için bir hedef değildir. Fotoğraflar ve afişler için mükemmeldir, ancak simge gerektiren sistemlerle uyumsuzdur: Windows Dosya Gezgini, tarayıcının yer imi çubuğu, masaüstü kısayolları veya PWA uygulama manifestleri. Bir simge arayan işletim sistemi veya tarayıcı ICO formatını bekler ve eğer bulamazsa genel bir simge veya bozuk bir kare görüntüler.',
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: '<strong>ICO</strong> formatı, tek bir dosyada birden fazla çözünürlük içerecek şekilde tasarlanmıştır: Yer imi çubuğu için <strong>16×16</strong>, kısayollar için <strong>32×32</strong>, dosya gezgini için <strong>48×48</strong> ve yüksek yoğunluklu ekranlar için <strong>256×256</strong>. Tarayıcılar ve işletim sistemleri, görüntüleme bağlamına göre uygun çözünürlüğü otomatik olarak seçer; kullanıcının herhangi bir şeyi yönetmesi gerekmez.',
87
+ },
88
+ {
89
+ type: 'title',
90
+ text: 'Karşılaştırma: Yerel ve Bulut Dönüştürme',
91
+ level: 3,
92
+ },
93
+ {
94
+ type: 'comparative',
95
+ items: [
96
+ {
97
+ title: 'Bulut Dönüştürücüler',
98
+ description: 'Dosyalarınızı uzak bir sunucuya yükleyen araçlar.',
99
+ icon: 'mdi:cloud-upload',
100
+ pointIcon: 'mdi:close-circle-outline',
101
+ points: [
102
+ 'Yükleme ve indirmede ağ gecikmesi',
103
+ 'Kurumsal logolarınız üçüncü taraf sunucularda saklanır',
104
+ 'Dosya boyutu sınırları ve günlük dönüştürme kotaları',
105
+ 'Rahatsız edici reklamlar ve üçüncü taraf izleyiciler',
106
+ ],
107
+ },
108
+ {
109
+ title: 'Yerel Mimarimiz',
110
+ description: 'Vanilla JS teknolojisini kullanarak doğrudan donanımınızda işleme.',
111
+ icon: 'mdi:laptop-mac',
112
+ highlight: true,
113
+ points: [
114
+ 'Anında hız — sıfır ağ gecikmesi',
115
+ 'Tam gizlilik — harici olarak gönderilen 0 bayt',
116
+ 'MB sınırı veya dosya sayısı kısıtlaması yok',
117
+ 'Temiz arayüz, reklam veya izleme yok',
118
+ ],
119
+ },
120
+ ],
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Teknik olarak nasıl çalışır',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'JPG kodu çözülür ve bellekteki bir <strong>HTML5 Canvas</strong> üzerine çizilir. ICO formatı kare bir görüntü gerektirdiğinden, motor JPG\'nin dikdörtgen olup olmadığını otomatik olarak algılar ve en ilgili kısmı merkeze alarak kırpar. Daha sonra doğru sihirli sayı (<code>00 00 01 00</code>), görüntü dizini und kodlanmış piksel verileriyle standart Microsoft ICO üstbilgisini oluşturur. Sonuç, yeniden adlandırılmış bir PNG değil, orijinal bir ikili .ico dosyasıdır.',
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'JPG\'de alfa kanalı bulunmadığından, elde edilen ICO\'da da şeffaflık olmayacaktır; orijinal fotoğraftan miras alınan düz bir arka plana sahip olacaktır. Şeffaf arka plana sahip bir favicon\'a ihtiyacınız varsa (örneğin, koyu veya açık yer imi çubuklarına uyum sağlamak için), önerilen iş akışı şudur: Arka planı bir düzenleyicide kaldırın, PNG olarak kaydedin und PNG\'den ICO\'ya dönüştürücüyü kullanın.',
134
+ },
135
+ {
136
+ type: 'tip',
137
+ title: 'İpucu: Tek bir ICO\'da birden fazla çözünürlük',
138
+ html: 'ICO dosyaları, tek bir dosyada <strong>birden fazla çözünürlüğü</strong> paketleyebilir; tarayıcı veya işletim sistemi her bağlam için en uygun olanı otomatik olarak seçer. Mümkün olan en iyi sonuç için, kaynak olarak en az <strong>256×256 piksel</strong> boyutunda kare bir JPG kullanın: Bu, dönüştürücüye pikselleşme olmadan keskin 16×16, 32×32 und 48×48 boyutları üretmek için yeterli bilgi sağlar.',
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Kullanım durumları und uyumluluk',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'list',
147
+ icon: 'mdi:check-circle',
148
+ items: [
149
+ 'Web sitesi favicon\'u: Internet Explorer dahil tüm tarayıcılarla uyumludur.',
150
+ 'Windows 10/11\'de klasör und masaüstü simgesi özelleştirme.',
151
+ 'Masaüstü uygulamaları veya yükleyiciler için kısayol simgesi.',
152
+ 'Electron projeleri veya PWA uygulamaları için uygulama simgesi.',
153
+ 'Dosya yönetim sistemleri und kurumsal dosya gezginleri için simgeler.',
154
+ ],
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: 'Sonuç',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: 'Bir JPG\'yi ICO\'ya dönüştürmek, tanınabilir bir görsel kimliğe ihtiyaç duyan her web veya masaüstü projesi için teknik olarak temel bir adımdır. Bu araç, logonuzu herhangi bir harici sunucuya yüklemeden saniyeler içinde doğru ikili yapıya sahip orijinal ICO\'lar oluşturur. Sonuç tüm tarayıcılarda, Windows Dosya Gezgini\'nde und Microsoft\'un ICO standardını tüketen her sistemde çalışır.',
164
+ },
165
+ ];
166
+
167
+ export const content: JpgAIcoLocaleContent = {
168
+ slug,
169
+ title,
170
+ description,
171
+ ui,
172
+ seo,
173
+ faq,
174
+ bibliography,
175
+ howTo,
176
+ schemas: generateSchemas({
177
+ title,
178
+ description,
179
+ inLanguage: 'tr',
180
+ faq,
181
+ howTo,
182
+ }),
183
+ };