@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 { PngAIcoLocaleContent } from '../index';
4
+
5
+ const slug = 'konverter-png-ke-ico';
6
+ const title = 'Konversi PNG ke ICO Online';
7
+ const description =
8
+ 'Konversi PNG ke ICO dengan header biner asli. Transparansi dipertahankan. Tanpa pengunggahan file. Gratis dan 100% pribadi.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'Tarik file PNG...',
12
+ convertText: 'Untuk mengkonversinya ke ICO secara instan',
13
+ selectFiles: 'Pilih file',
14
+ processedFiles: 'File yang diproses',
15
+ downloadAll: 'Unduh Semua (.zip)',
16
+ pending: 'Menunggu',
17
+ bibliographyTitle: 'Referensi Bibliografi',
18
+ faqTitle: 'Pertanyaan yang Sering Diajukan',
19
+ };
20
+
21
+ const faq: PngAIcoLocaleContent['faq'] = [
22
+ {
23
+ question: 'Apakah konverter Anda pembuat file PNG sederhana yang menyamar atau ICO asli?',
24
+ answer:
25
+ 'Kami membuat ICO asli. Kami mengekstrak data dari PNG Anda, membuat header heksadesimal Microsoft yang terstandarisasi (Header + Direktori 22 byte), mengubah ukuran ke format persegi yang ideal secara lokal dan menyusun file akhir yang divalidasi sebagai native.',
26
+ },
27
+ {
28
+ question: 'Apakah transparansi dipertahankan saat logo saya dimasukkan ke dalam ikon?',
29
+ answer:
30
+ 'Tentu saja ya. Mesin kami membaca PNG Anda pada 32 bit, menambatkannya sambil mempertahankan dengan tepat setiap lubang tembus transparan sehingga menonjol di bilah alamat web universal (Favicon).',
31
+ },
32
+ {
33
+ question: 'Apakah logo perusahaan saya disimpan di server Anda?',
34
+ answer:
35
+ 'Layanan ini menjamin nol kontak jaringan eksternal. Konverter bekerja tertambat di HTML5 Canvas internal Anda; pembuatan ikon Anda terjadi seratus persen di dalam mesin Anda di memori lokal yang murni rahasia.',
36
+ },
37
+ ];
38
+
39
+ const howTo: PngAIcoLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Tarik file untuk mentransfer',
42
+ text: 'Letakkan matriks foto Anda (PNG persegi 512x512 sangat ideal) pada bingkai lokal interaktif.',
43
+ },
44
+ {
45
+ name: 'Kompilasi bytecode otomatis',
46
+ text: 'Anda akan melihat bilah berjalan secara internal memuat dan memproduksi matriks lokal dari header heksadesimal ICO yang dimurnikan.',
47
+ },
48
+ {
49
+ name: 'Akumulasi atau keluar dengan ZIP Anda',
50
+ text: 'Unduh dengan mengeklik kompilasi mega untuk situs web Anda (tombol ZIP global) atau unduh thumbnail untuk executable Windows.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: PngAIcoLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'Struktur Teknis Format ICO Microsoft',
57
+ url: 'https://en.wikipedia.org/wiki/ICO_(file_format)',
58
+ },
59
+ {
60
+ name: 'Standar Favicon - W3C',
61
+ url: 'https://www.w3.org/2005/10/howto-favicon',
62
+ },
63
+ ];
64
+
65
+ const seo: PngAIcoLocaleContent['seo'] = [
66
+ {
67
+ type: 'title',
68
+ text: 'Konverter PNG ke ICO: Sumber Terbaik untuk Favicon dengan Transparansi Sempurna',
69
+ level: 2,
70
+ },
71
+ {
72
+ type: 'paragraph',
73
+ html: '<strong>PNG dengan transparansi</strong> adalah bahan awal yang ideal untuk membuat ikon ICO profesional. Tidak seperti JPG (yang tidak memiliki saluran alfa) atau format lossy, PNG memberikan apa yang dibutuhkan format ICO: piksel yang tajam, tepi yang bersih, und saluran alfa 32-bit yang memungkinkan ikon berintegrasi sempurna di latar belakang apa pun — baik bilah bookmark putih Safari, bilah gelap Firefox, atau desktop Windows 11.',
74
+ },
75
+ {
76
+ type: 'title',
77
+ text: 'PNG atau ICO? Kapan menggunakan masing-masing format',
78
+ level: 3,
79
+ },
80
+ {
81
+ type: 'paragraph',
82
+ html: '<strong>PNG</strong> adalah format kerja: di sinilah Anda mendesain logo, mengekspor dari Figma atau Illustrator, und menyimpan versi yang dapat diedit. Transparansi, presisi piksel, und kompresi lossless menjadikannya tak terkalahkan untuk proses desain. Namun browser, sistem operasi, und aplikasi Windows yang mencari favicon atau ikon aplikasi tidak menerima PNG secara langsung — mereka membutuhkan ICO.',
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: '<strong>ICO</strong> adalah format distribusi untuk ikon di lingkungan Microsoft und web. Ini berisi struktur biner khusus yang memungkinkan beberapa resolusi dikemas ke dalam satu file: browser membaca direktori internal ICO und secara otomatis memilih <strong>16×16</strong> untuk tab browser, <strong>32×32</strong> untuk pintasan, <strong>48×48</strong> untuk file explorer, und <strong>256×256</strong> untuk layar Retina und 4K. Memulai dari PNG transparan menjamin bahwa semua resolusi tersebut akan memiliki tepi yang sempurna tanpa pinggiran putih.',
87
+ },
88
+ {
89
+ type: 'title',
90
+ text: 'Perbandingan: Konversi Lokal vs Cloud',
91
+ level: 3,
92
+ },
93
+ {
94
+ type: 'comparative',
95
+ items: [
96
+ {
97
+ title: 'Konverter Cloud',
98
+ description: 'Alat yang mengunggah file Anda ke server jarak jauh.',
99
+ icon: 'mdi:cloud-upload',
100
+ pointIcon: 'mdi:close-circle-outline',
101
+ points: [
102
+ 'Latensi jaringan saat mengunggah und mengunduh',
103
+ 'Logo perusahaan Anda disimpan di server pihak ketiga',
104
+ 'Batas ukuran file und batasan konversi harian',
105
+ 'Iklan yang mengganggu und pelacak pihak ketiga',
106
+ ],
107
+ },
108
+ {
109
+ title: 'Arsitektur Lokal Kami',
110
+ description: 'Pemrosesan langsung pada perangkat keras Anda menggunakan teknologi Vanilla JS.',
111
+ icon: 'mdi:laptop-mac',
112
+ highlight: true,
113
+ points: [
114
+ 'Kecepatan instan — nol latensi jaringan',
115
+ 'Privasi lengkap — 0 byte dikirim secara eksternal',
116
+ 'Tanpa batas MB atau batasan jumlah file',
117
+ 'Antarmuka bersih, tanpa iklan atau pelacakan',
118
+ ],
119
+ },
120
+ ],
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Cara kerjanya secara teknis',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'PNG didekodekan ke dalam <strong>HTML5 Canvas</strong> dalam memori dengan dukungan saluran alfa 32-bit penuh. Mesin membangun header Microsoft ICO standar dengan magic number yang benar (<code>00 00 01 00</code>), direktori gambar dengan dimensi und offset data, und data piksel sambil mempertahankan informasi transparansi. Hasilnya adalah file biner .ico asli yang dikenali secara native oleh Windows, macOS, und semua browser.',
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'Transparansi PNG dipertahankan sepenuhnya dalam ICO yang dihasilkan — piksel transparan tetap transparan, piksel semi-transparan mempertahankan nilai alfa yang tepat, und piksel opak mempertahankan warna aslinya. Ini sangat penting untuk logo pada latar belakang variabel: favicon Anda akan terlihat benar dalam mode terang, mode gelap, und kombinasi warna antarmuka browser apa pun.',
134
+ },
135
+ {
136
+ type: 'tip',
137
+ title: 'Tip: gunakan PNG 512×512 sebagai sumber Anda',
138
+ html: 'Untuk hasil terbaik, gunakan <strong>PNG persegi 512×512</strong> sebagai gambar sumber Anda. Resolusi ini memberikan informasi yang cukup kepada konverter untuk menghasilkan semua ukuran ICO standar dengan tajam — dari favicon 16×16 hingga 256×256 untuk layar dengan kepadatan tinggi — tanpa pikselasi atau kehilangan detail tepi. Semakin besar sumber PNG, semakin baik tampilan ukuran ikon kecil.',
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Kasus penggunaan und kompatibilitas',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'list',
147
+ icon: 'mdi:check-circle',
148
+ items: [
149
+ 'Favicon transparan untuk situs web: berfungsi di Chrome, Firefox, Safari, Edge, e Internet Explorer.',
150
+ 'Ikon aplikasi PWA: manifest.json mereferensikan ICO untuk instalasi desktop.',
151
+ 'Kustomisasi folder Windows 10/11 dengan logo perusahaan und tanpa latar belakang putih.',
152
+ 'Ikon pintasan untuk aplikasi desktop, penginstal, und executable.',
153
+ 'Ikon ekstensi browser untuk ekstensi Chrome und Firefox.',
154
+ ],
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: 'Kesimpulan',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: 'PNG dengan transparansi tidak diragukan lagi merupakan titik awal terbaik untuk membuat ikon ICO berkualitas profesional. Dengan alat ini, konversi dilakukan secara instan, saluran alfa dipertahankan sepenuhnya, und file yang dihasilkan adalah ICO asli dengan struktur biner yang benar. Tidak perlu mengunggah logo ke server mana pun, tanpa watermark, tanpa batas — und transparansi sempurna di semua ukuran.',
164
+ },
165
+ ];
166
+
167
+ export const content: PngAIcoLocaleContent = {
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: 'id',
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 { PngAIcoLocaleContent } from '../index';
4
+
5
+ const slug = 'convertitore-png-in-ico';
6
+ const title = 'Converti PNG in ICO Online';
7
+ const description =
8
+ 'Converti PNG in ICO con veri header binari. Trasparenze preservate. Nessun caricamento di file. Gratuito e privato al 100%.';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'Trascina i file PNG...',
12
+ convertText: 'Per convertirli in ICO istantaneamente',
13
+ selectFiles: 'Seleziona file',
14
+ processedFiles: 'File elaborati',
15
+ downloadAll: 'Scarica tutto (.zip)',
16
+ pending: 'In attesa',
17
+ bibliographyTitle: 'Riferimenti Bibliografici',
18
+ faqTitle: 'Domande Frequenti',
19
+ };
20
+
21
+ const faq: PngAIcoLocaleContent['faq'] = [
22
+ {
23
+ question: 'Il vostro convertitore crea semplici file PNG mascherati o un vero ICO?',
24
+ answer:
25
+ 'Creiamo un vero ICO. Estraiamo i dati dal tuo PNG, creiamo l\'header esadecimale standard di Microsoft (Header + Directory di 22 byte), ridimensioniamo localmente nel formato quadrato ideale e assembliamo un file finale convalidato come nativo.',
26
+ },
27
+ {
28
+ question: 'Le trasparenze vengono preservate quando il mio logo viene inserito nell\'icona?',
29
+ answer:
30
+ 'Assolutamente sì. Il nostro motore legge il tuo PNG a 32 bit, ancorandolo e preservando con precisione tutti i fori trasparenti in modo che risaltino nella barra degli indirizzi web universale (Favicon).',
31
+ },
32
+ {
33
+ question: 'Il logo della mia azienda viene memorizzato sui vostri server?',
34
+ answer:
35
+ 'Questo servizio garantisce zero contatti con la rete esterna. Il convertitore lavora ancorato nel tuo HTML5 Canvas interno; la produzione della tua icona avviene al cento per cento all\'interno della tua macchina in una memoria locale puramente segreta.',
36
+ },
37
+ ];
38
+
39
+ const howTo: PngAIcoLocaleContent['howTo'] = [
40
+ {
41
+ name: 'Trascina i file da trasferire',
42
+ text: 'Posiziona le tue matrici fotografiche (un PNG quadrato 512x512 è l\'ideale) sulla cornice locale interattiva.',
43
+ },
44
+ {
45
+ name: 'Compilazione automatica del bytecode',
46
+ text: 'Vedrai la barra scorrere internamente mentre viene caricata e prodotta la matrice locale degli header esadecimali ICO purificati.',
47
+ },
48
+ {
49
+ name: 'Accumula o scarica il tuo ZIP',
50
+ text: 'Scaricali cliccando su una mega compilation per i tuoi siti web (pulsanti ZIP globali) o scarica la miniatura per l\'eseguibile Windows.',
51
+ },
52
+ ];
53
+
54
+ const bibliography: PngAIcoLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'Struttura Tecnica del Formato ICO Microsoft',
57
+ url: 'https://en.wikipedia.org/wiki/ICO_(file_format)',
58
+ },
59
+ {
60
+ name: 'Standard Favicon - W3C',
61
+ url: 'https://www.w3.org/2005/10/howto-favicon',
62
+ },
63
+ ];
64
+
65
+ const seo: PngAIcoLocaleContent['seo'] = [
66
+ {
67
+ type: 'title',
68
+ text: 'Convertitore da PNG a ICO: La Migliore Fonte di Favicon con Trasparenza Perfetta',
69
+ level: 2,
70
+ },
71
+ {
72
+ type: 'paragraph',
73
+ html: 'Il <strong>PNG con trasparenza</strong> è il materiale di partenza ideale per la creazione di icone ICO professionali. A differenza del JPG (che non ha canale alfa) o dei formati con perdita, il PNG ti dà esattamente ciò di cui il formato ICO ha bisogno: pixel nitidi, bordi puliti e un canale alfa a 32 bit che permette all\'icona di integrarsi perfettamente su qualsiasi sfondo, che sia la barra dei preferiti bianca di Safari, la barra scura di Firefox o il desktop di Windows 11.',
74
+ },
75
+ {
76
+ type: 'title',
77
+ text: 'PNG o ICO? Quando utilizzare ciascun formato',
78
+ level: 3,
79
+ },
80
+ {
81
+ type: 'paragraph',
82
+ html: 'Il <strong>PNG</strong> è il formato di lavoro: è dove progetti il tuo logo, esporti da Figma o Illustrator e salvi le tue versioni modificabili. La sua trasparenza, la precisione dei pixel e la compressione senza perdita lo rendono imbattibile per il processo di progettazione. Ma i browser, i sistemi operativi e le applicazioni Windows che cercano una favicon o un\'icona dell\'app non accettano direttamente il PNG: hanno bisogno dell\'ICO.',
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: 'L\'<strong>ICO</strong> è il formato di distribuzione per le icone negli ambienti Microsoft und sul web. Contiene una specifica struttura binaria che permette di racchiudere più risoluzioni in un unico file: il browser legge la directory interna dell\'ICO und seleziona automaticamente <strong>16×16</strong> per la scheda del browser, <strong>32×32</strong> per i collegamenti, <strong>48×48</strong> per l\'esplora file und <strong>256×256</strong> per gli schermi Retina und 4K. Partire da un PNG trasparente garantisce che tutte quelle risoluzioni avranno bordi perfetti senza alcun alone bianco.',
87
+ },
88
+ {
89
+ type: 'title',
90
+ text: 'Confronto: Conversione Locale vs Cloud',
91
+ level: 3,
92
+ },
93
+ {
94
+ type: 'comparative',
95
+ items: [
96
+ {
97
+ title: 'Convertitori Cloud',
98
+ description: 'Strumenti che caricano i tuoi file su un server remoto.',
99
+ icon: 'mdi:cloud-upload',
100
+ pointIcon: 'mdi:close-circle-outline',
101
+ points: [
102
+ 'Latenza di rete durante il caricamento und il download',
103
+ 'Il tuo logo aziendale memorizzato su server di terze parti',
104
+ 'Limiti di dimensione dei file und tetti di conversione giornalieri',
105
+ 'Annunci intrusivi und tracker di terze parti',
106
+ ],
107
+ },
108
+ {
109
+ title: 'La Nostra Architettura Locale',
110
+ description: 'Elaborazione diretta sul tuo hardware utilizzando la tecnologia Vanilla JS.',
111
+ icon: 'mdi:laptop-mac',
112
+ highlight: true,
113
+ points: [
114
+ 'Velocità istantanea — latenza di rete zero',
115
+ 'Privacy completa — 0 byte inviati esternamente',
116
+ 'Nessun limite di MB o restrizioni sul numero di file',
117
+ 'Interfaccia pulita, senza pubblicità o tracciamento',
118
+ ],
119
+ },
120
+ ],
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Come funziona tecnicamente',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'Il PNG viene decodificato in un <strong>HTML5 Canvas</strong> in memoria con pieno supporto al canale alfa a 32 bit. Il motore costruisce l\'header ICO standard di Microsoft con il numero magico corretto (<code>00 00 01 00</code>), la directory delle immagini con dimensioni und offset dei dati, und i dati dei pixel mantenendo le informazioni sulla trasparenza. Il risultato è un autentico file binario .ico riconosciuto nativamente da Windows, macOS und tutti i browser.',
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'La trasparenza del PNG viene interamente preservata nell\'ICO risultante: i pixel trasparenti rimangono tali, quelli semitrasparenti mantengono il loro valore alfa esatto und quelli opachi conservano il colore originale. Questo è fondamentale per i loghi su sfondi variabili: la tua favicon apparirà corretta in modalità chiara, modalità scura und qualsiasi combinazione di colori dell\'interfaccia del browser.',
134
+ },
135
+ {
136
+ type: 'tip',
137
+ title: 'Suggerimento: usa un PNG 512×512 come sorgente',
138
+ html: 'Per il miglior risultato possibile, usa un <strong>PNG quadrato 512×512</strong> come immagine sorgente. Questa risoluzione fornisce al convertitore informazioni sufficienti per generare tutte le dimensioni ICO standard con nitidezza, dalla favicon 16×16 fino all\'icona 256×256 per schermi ad alta densità, senza sgranature o perdita di dettagli sui bordi. Più grande è il PNG sorgente, migliore sarà l\'aspetto delle icone di piccole dimensioni.',
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Casi d\'uso und compatibilità',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'list',
147
+ icon: 'mdi:check-circle',
148
+ items: [
149
+ 'Favicon trasparente per siti web: funziona in Chrome, Firefox, Safari, Edge e Internet Explorer.',
150
+ 'Icona applicazione PWA: manifest.json fa riferimento all\'ICO per l\'installazione desktop.',
151
+ 'Personalizzazione cartelle Windows 10/11 con logo aziendale senza sfondo bianco.',
152
+ 'Icona di collegamento per applicazioni desktop, installer ed eseguibili.',
153
+ 'Icona estensione browser per estensioni Chrome und Firefox.',
154
+ ],
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: 'Conclusione',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: 'Il PNG con trasparenza è senza dubbio il miglior punto di partenza per la creazione di icone ICO di qualità professionale. Con questo strumento, la conversione è istantanea, i canali alfa sono pienamente preservati und il file risultante è un vero ICO con la corretta struttura binaria. Nessun caricamento del logo su server esterni, niente filigrane, niente limiti — e trasparenza perfetta in tutte le dimensioni.',
164
+ },
165
+ ];
166
+
167
+ export const content: PngAIcoLocaleContent = {
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: 'it',
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 { PngAIcoLocaleContent } from '../index';
4
+
5
+ const slug = 'png-to-ico-converter';
6
+ const title = 'PNGをICOにオンラインで変換しましょう';
7
+ const description =
8
+ '実際のバイナリヘッダーを使用してPNGをICOに変換します。透明度が維持されます。ファイルのアップロード不要。無料かつ100%プライベート。';
9
+
10
+ const ui: ImageConverterUI = {
11
+ dragText: 'PNGファイルをドラッグ...',
12
+ convertText: '即座にICOに変換します',
13
+ selectFiles: 'ファイルを選択',
14
+ processedFiles: '処理済みファイル',
15
+ downloadAll: 'すべてダウンロード (.zip)',
16
+ pending: '保留中',
17
+ bibliographyTitle: '参考文献',
18
+ faqTitle: 'よくある質問',
19
+ };
20
+
21
+ const faq: PngAIcoLocaleContent['faq'] = [
22
+ {
23
+ question: 'この変換器は単にPNGファイルの拡張子を偽装したものですか、それとも本物のICOを生成しますか?',
24
+ answer:
25
+ '本物のICOを作成します。ユーザーのPNGからデータを抽出し、標準化されたMicrosoftの16進数ヘッダー(22バイトのヘッダー + ディレクトリ)を作成し、ローカルで理想的な正方形形式にサイズ変更して、ネイティブとして検証された最終ファイルを組み立てます。',
26
+ },
27
+ {
28
+ question: 'ロゴをアイコンにするとき、透明度は維持されますか?',
29
+ answer:
30
+ 'もちろんです。当社のエンジンはユーザーのPNGを32ビットとして読み込み、固定しながら透明な領域を正確に保持するため、ブラウザのユニバーサルアドレスバー(ファビコン)で綺麗に映えます。',
31
+ },
32
+ {
33
+ question: '会社のロゴはウェブサーバーに保存されますか?',
34
+ answer:
35
+ '本サービスは外部ネットワークへの接触が一切ないことを保証します。変換器はユーザーの内部HTML5 Canvas内で動作し、アイコンの作成は純粋に秘密が保持されるローカルメモリ内で100%行われます。',
36
+ },
37
+ ];
38
+
39
+ const howTo: PngAIcoLocaleContent['howTo'] = [
40
+ {
41
+ name: 'ファイルをドラッグして転送',
42
+ text: '写真のマトリックス(正方形の512x512 PNGが理想的)をインタラクティブなローカルフレームに配置してください。',
43
+ },
44
+ {
45
+ name: '自動バイトコードコンパイル',
46
+ text: '精製されたICOの16進数ヘッダーのローカルマトリックスを読み込み、作成する間、内部的にプログレスバーが動くのが見えます。',
47
+ },
48
+ {
49
+ name: 'まとめてZIPでダウンロード',
50
+ text: 'ウェブサイト用のメガコンピレーション(グローバルなZIPボタン)をクリックしてダウンロードするか、Windows実行ファイル用のサムネイルをダウンロードしてください。',
51
+ },
52
+ ];
53
+
54
+ const bibliography: PngAIcoLocaleContent['bibliography'] = [
55
+ {
56
+ name: 'Microsoft ICO形式の技術構造',
57
+ url: 'https://en.wikipedia.org/wiki/ICO_(file_format)',
58
+ },
59
+ {
60
+ name: 'ファビコン標準 - W3C',
61
+ url: 'https://www.w3.org/2005/10/howto-favicon',
62
+ },
63
+ ];
64
+
65
+ const seo: PngAIcoLocaleContent['seo'] = [
66
+ {
67
+ type: 'title',
68
+ text: 'PNG to ICO 変換器:完璧な透明度を持つファビコンのための最適な選択',
69
+ level: 2,
70
+ },
71
+ {
72
+ type: 'paragraph',
73
+ html: '<strong>透明度を含むPNG</strong>は、プロフェッショナルなICOアイコンを作成するための理想的なソース素材です。アルファチャネルのないJPGや、非可逆圧縮形式とは異なり、PNGはICO形式が必要とするもの(鮮明なピクセル、綺麗なエッジ、アイコンをあらゆる背景上で完璧に調和させる32ビットのアルファチャネル)を正確に提供します。これはSafariの白いブックマークバー、Firefoxのダークバー、あるいはWindows 11のデスクトップなど、どこでも同様です。',
74
+ },
75
+ {
76
+ type: 'title',
77
+ text: 'PNGまたはICO?各形式を使い分ける場合',
78
+ level: 3,
79
+ },
80
+ {
81
+ type: 'paragraph',
82
+ html: '<strong>PNG</strong>は作業用の形式です。ロゴをデザインし、FigmaやIllustratorからエクスポートし、編集可能なバージョンを保存するためのものです。透明度、ピクセル精度、および可逆圧縮により、デザインプロセスにおいて無敵です。しかし、ファビコンやアプリのアイコンを必要とするブラウザ、OS、およびWindowsアプリケーションはPNGを直接受け入れず、ICOが必要になります。',
83
+ },
84
+ {
85
+ type: 'paragraph',
86
+ html: '<strong>ICO</strong>はMicrosoft環境およびウェブにおいて、アイコンを配布するための形式です。単一のファイルの中に複数の解像度を詰め込むことができる、特定のバイナリ構造を持っています。ブラウザはICO内部のディレクトリを読み込み、ブラウザのタブ用には <strong>16x16</strong>、ショートカット用には <strong>32x32</strong>、エクスプローラー用には <strong>48x48</strong> und Retinaや4K画面用には <strong>256x256</strong> を自動的に選択します。透明なPNGから開始することで、白い縁取りが出ることなく、すべての解像度で完璧なエッジが保証されます。',
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
+ 'アップロード und ダウンロード時にネットワーク遅延が発生',
103
+ 'ロゴが他社のサーバーに保存される',
104
+ 'ファイルサイズの制限や1日の変換回数の制限がある',
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: 'PNGファイルが32ビットのアルファチャネルが完全にサポートされたメモリ上の <strong>HTML5 Canvas</strong> にデコードされます。エンジンは正しいマジックナンバー(<code>00 00 01 00</code>)を含む標準のMicrosoft ICOヘッダー、サイズ und データオフセットを含む画像ディレクトリ、および透明度情報を保持したピクセルデータを構築します。結果は、Windows, macOS und すべてのブラウザにおいてネイティブに認識される本物のバイナリ.icoファイルです。',
130
+ },
131
+ {
132
+ type: 'paragraph',
133
+ html: 'PNGの透明度は、生成されたICOにおいて完全に維持されます。透明なピクセルは透明なまま、半透明なピクセルは正確なアルファ値を保持し、不透明なピクセルは元の色を保持します。これは、背景が変化するロゴにとって非常に重要です。ファビコンはライトモード, ダークモード und ブラウザのインターフェース色のどのような組み合わせでも正しく表示されます。',
134
+ },
135
+ {
136
+ type: 'tip',
137
+ title: 'ヒント:512x512のPNGをソースとして使用してください',
138
+ html: '最高の仕上がりを得るために、<strong>正方形の512x512のPNG</strong> をソース画像として使用してください。この解像度は、変換器が16x16のファビコンから高解像度画面用の256x256まで、すべての標準のICOサイズを、ピクセルのにじみやエッジの細部の消失なしに鮮明に生成するのに十分な情報を提供します。ソースPNGが大きいほど、小さなサイズのアイコンも綺麗に見えます。',
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: '活用事例 und 互換性',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'list',
147
+ icon: 'mdi:check-circle',
148
+ items: [
149
+ 'ウェブサイト用の透明なファビコン:Chrome, Firefox, Safari, Edge, e Internet Explorerで動作します。',
150
+ 'PWAアプリケーションのアイコン:manifest.jsonはデスクトップインストールのためにICOを参照します。',
151
+ '白い背景なしでロゴを使用したWindows 10/11のフォルダーのカスタマイズ。',
152
+ 'デスクトップアプリケーション, インストーラー und 実行ファイルのためのショートカットアイコン。',
153
+ 'Chrome und Firefox拡張機能のためのブラウザ拡張機能アイコン。',
154
+ ],
155
+ },
156
+ {
157
+ type: 'title',
158
+ text: '結論',
159
+ level: 3,
160
+ },
161
+ {
162
+ type: 'paragraph',
163
+ html: '透明なPNGは、疑いようもなく、プロフェッショナルな品質を持ったICOアイコンを作成するための最良の出発点です。このツールを使用すれば、変換は即座に行われ、アルファチャネルは完全に保持され、結果は正しいバイナリ構造を持った本物のICOファイルになります。ロゴをサーバーにアップロードする必要がなく、透かしや制限もなく、すべてのサイズで完璧な透明度を実現できます。',
164
+ },
165
+ ];
166
+
167
+ export const content: PngAIcoLocaleContent = {
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: 'ja',
180
+ faq,
181
+ howTo,
182
+ }),
183
+ };