@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.
- package/package.json +60 -59
- package/src/shared/ImageConverter.astro +2 -1
- package/src/shared/logic/schemas.ts +57 -0
- package/src/tests/faq_count.test.ts +13 -4
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +42 -0
- package/src/tests/no_h1_in_components.test.ts +48 -0
- package/src/tests/schemas_fulfillment.test.ts +23 -0
- package/src/tests/seo_length.test.ts +1 -1
- package/src/tests/title_quality.test.ts +55 -0
- package/src/tool/avifAJpg/i18n/de.ts +178 -0
- package/src/tool/avifAJpg/i18n/en.ts +2 -12
- package/src/tool/avifAJpg/i18n/es.ts +2 -12
- package/src/tool/avifAJpg/i18n/fr.ts +2 -12
- package/src/tool/avifAJpg/i18n/id.ts +178 -0
- package/src/tool/avifAJpg/i18n/it.ts +178 -0
- package/src/tool/avifAJpg/i18n/ja.ts +178 -0
- package/src/tool/avifAJpg/i18n/ko.ts +178 -0
- package/src/tool/avifAJpg/i18n/nl.ts +178 -0
- package/src/tool/avifAJpg/i18n/pl.ts +178 -0
- package/src/tool/avifAJpg/i18n/pt.ts +178 -0
- package/src/tool/avifAJpg/i18n/ru.ts +178 -0
- package/src/tool/avifAJpg/i18n/sv.ts +178 -0
- package/src/tool/avifAJpg/i18n/tr.ts +178 -0
- package/src/tool/avifAJpg/i18n/zh.ts +178 -0
- package/src/tool/avifAJpg/index.ts +13 -1
- package/src/tool/avifAPng/i18n/de.ts +178 -0
- package/src/tool/avifAPng/i18n/en.ts +2 -12
- package/src/tool/avifAPng/i18n/es.ts +2 -12
- package/src/tool/avifAPng/i18n/fr.ts +2 -12
- package/src/tool/avifAPng/i18n/id.ts +178 -0
- package/src/tool/avifAPng/i18n/it.ts +178 -0
- package/src/tool/avifAPng/i18n/ja.ts +178 -0
- package/src/tool/avifAPng/i18n/ko.ts +178 -0
- package/src/tool/avifAPng/i18n/nl.ts +178 -0
- package/src/tool/avifAPng/i18n/pl.ts +178 -0
- package/src/tool/avifAPng/i18n/pt.ts +178 -0
- package/src/tool/avifAPng/i18n/ru.ts +178 -0
- package/src/tool/avifAPng/i18n/sv.ts +178 -0
- package/src/tool/avifAPng/i18n/tr.ts +178 -0
- package/src/tool/avifAPng/i18n/zh.ts +178 -0
- package/src/tool/avifAPng/index.ts +13 -1
- package/src/tool/avifAWebp/i18n/de.ts +178 -0
- package/src/tool/avifAWebp/i18n/en.ts +2 -12
- package/src/tool/avifAWebp/i18n/es.ts +2 -12
- package/src/tool/avifAWebp/i18n/fr.ts +2 -12
- package/src/tool/avifAWebp/i18n/id.ts +178 -0
- package/src/tool/avifAWebp/i18n/it.ts +178 -0
- package/src/tool/avifAWebp/i18n/ja.ts +178 -0
- package/src/tool/avifAWebp/i18n/ko.ts +178 -0
- package/src/tool/avifAWebp/i18n/nl.ts +178 -0
- package/src/tool/avifAWebp/i18n/pl.ts +178 -0
- package/src/tool/avifAWebp/i18n/pt.ts +178 -0
- package/src/tool/avifAWebp/i18n/ru.ts +178 -0
- package/src/tool/avifAWebp/i18n/sv.ts +178 -0
- package/src/tool/avifAWebp/i18n/tr.ts +178 -0
- package/src/tool/avifAWebp/i18n/zh.ts +178 -0
- package/src/tool/avifAWebp/index.ts +13 -1
- package/src/tool/bmpAJpg/i18n/de.ts +178 -0
- package/src/tool/bmpAJpg/i18n/en.ts +2 -12
- package/src/tool/bmpAJpg/i18n/es.ts +2 -12
- package/src/tool/bmpAJpg/i18n/fr.ts +2 -12
- package/src/tool/bmpAJpg/i18n/id.ts +178 -0
- package/src/tool/bmpAJpg/i18n/it.ts +178 -0
- package/src/tool/bmpAJpg/i18n/ja.ts +178 -0
- package/src/tool/bmpAJpg/i18n/ko.ts +178 -0
- package/src/tool/bmpAJpg/i18n/nl.ts +178 -0
- package/src/tool/bmpAJpg/i18n/pl.ts +178 -0
- package/src/tool/bmpAJpg/i18n/pt.ts +178 -0
- package/src/tool/bmpAJpg/i18n/ru.ts +178 -0
- package/src/tool/bmpAJpg/i18n/sv.ts +178 -0
- package/src/tool/bmpAJpg/i18n/tr.ts +178 -0
- package/src/tool/bmpAJpg/i18n/zh.ts +178 -0
- package/src/tool/bmpAJpg/index.ts +13 -1
- package/src/tool/bmpAPng/i18n/de.ts +177 -0
- package/src/tool/bmpAPng/i18n/en.ts +2 -12
- package/src/tool/bmpAPng/i18n/es.ts +2 -12
- package/src/tool/bmpAPng/i18n/fr.ts +2 -12
- package/src/tool/bmpAPng/i18n/id.ts +177 -0
- package/src/tool/bmpAPng/i18n/it.ts +177 -0
- package/src/tool/bmpAPng/i18n/ja.ts +177 -0
- package/src/tool/bmpAPng/i18n/ko.ts +177 -0
- package/src/tool/bmpAPng/i18n/nl.ts +177 -0
- package/src/tool/bmpAPng/i18n/pl.ts +177 -0
- package/src/tool/bmpAPng/i18n/pt.ts +177 -0
- package/src/tool/bmpAPng/i18n/ru.ts +177 -0
- package/src/tool/bmpAPng/i18n/sv.ts +177 -0
- package/src/tool/bmpAPng/i18n/tr.ts +177 -0
- package/src/tool/bmpAPng/i18n/zh.ts +177 -0
- package/src/tool/bmpAPng/index.ts +13 -1
- package/src/tool/bmpAWebp/i18n/de.ts +178 -0
- package/src/tool/bmpAWebp/i18n/en.ts +2 -12
- package/src/tool/bmpAWebp/i18n/es.ts +2 -12
- package/src/tool/bmpAWebp/i18n/fr.ts +2 -12
- package/src/tool/bmpAWebp/i18n/id.ts +178 -0
- package/src/tool/bmpAWebp/i18n/it.ts +178 -0
- package/src/tool/bmpAWebp/i18n/ja.ts +178 -0
- package/src/tool/bmpAWebp/i18n/ko.ts +178 -0
- package/src/tool/bmpAWebp/i18n/nl.ts +178 -0
- package/src/tool/bmpAWebp/i18n/pl.ts +178 -0
- package/src/tool/bmpAWebp/i18n/pt.ts +178 -0
- package/src/tool/bmpAWebp/i18n/ru.ts +178 -0
- package/src/tool/bmpAWebp/i18n/sv.ts +178 -0
- package/src/tool/bmpAWebp/i18n/tr.ts +178 -0
- package/src/tool/bmpAWebp/i18n/zh.ts +178 -0
- package/src/tool/bmpAWebp/index.ts +13 -1
- package/src/tool/gifAJpg/i18n/de.ts +178 -0
- package/src/tool/gifAJpg/i18n/en.ts +2 -12
- package/src/tool/gifAJpg/i18n/es.ts +2 -12
- package/src/tool/gifAJpg/i18n/fr.ts +2 -12
- package/src/tool/gifAJpg/i18n/id.ts +178 -0
- package/src/tool/gifAJpg/i18n/it.ts +178 -0
- package/src/tool/gifAJpg/i18n/ja.ts +178 -0
- package/src/tool/gifAJpg/i18n/ko.ts +178 -0
- package/src/tool/gifAJpg/i18n/nl.ts +178 -0
- package/src/tool/gifAJpg/i18n/pl.ts +178 -0
- package/src/tool/gifAJpg/i18n/pt.ts +178 -0
- package/src/tool/gifAJpg/i18n/ru.ts +178 -0
- package/src/tool/gifAJpg/i18n/sv.ts +178 -0
- package/src/tool/gifAJpg/i18n/tr.ts +178 -0
- package/src/tool/gifAJpg/i18n/zh.ts +178 -0
- package/src/tool/gifAJpg/index.ts +13 -1
- package/src/tool/gifAPng/i18n/de.ts +178 -0
- package/src/tool/gifAPng/i18n/en.ts +2 -12
- package/src/tool/gifAPng/i18n/es.ts +2 -12
- package/src/tool/gifAPng/i18n/fr.ts +2 -12
- package/src/tool/gifAPng/i18n/id.ts +178 -0
- package/src/tool/gifAPng/i18n/it.ts +178 -0
- package/src/tool/gifAPng/i18n/ja.ts +178 -0
- package/src/tool/gifAPng/i18n/ko.ts +178 -0
- package/src/tool/gifAPng/i18n/nl.ts +178 -0
- package/src/tool/gifAPng/i18n/pl.ts +178 -0
- package/src/tool/gifAPng/i18n/pt.ts +178 -0
- package/src/tool/gifAPng/i18n/ru.ts +178 -0
- package/src/tool/gifAPng/i18n/sv.ts +178 -0
- package/src/tool/gifAPng/i18n/tr.ts +178 -0
- package/src/tool/gifAPng/i18n/zh.ts +178 -0
- package/src/tool/gifAPng/index.ts +12 -0
- package/src/tool/gifAWebp/i18n/de.ts +178 -0
- package/src/tool/gifAWebp/i18n/en.ts +2 -12
- package/src/tool/gifAWebp/i18n/es.ts +2 -12
- package/src/tool/gifAWebp/i18n/fr.ts +2 -12
- package/src/tool/gifAWebp/i18n/id.ts +178 -0
- package/src/tool/gifAWebp/i18n/it.ts +178 -0
- package/src/tool/gifAWebp/i18n/ja.ts +178 -0
- package/src/tool/gifAWebp/i18n/ko.ts +178 -0
- package/src/tool/gifAWebp/i18n/nl.ts +178 -0
- package/src/tool/gifAWebp/i18n/pl.ts +178 -0
- package/src/tool/gifAWebp/i18n/pt.ts +178 -0
- package/src/tool/gifAWebp/i18n/ru.ts +178 -0
- package/src/tool/gifAWebp/i18n/sv.ts +178 -0
- package/src/tool/gifAWebp/i18n/tr.ts +178 -0
- package/src/tool/gifAWebp/i18n/zh.ts +178 -0
- package/src/tool/gifAWebp/index.ts +12 -0
- package/src/tool/imagenBase64/i18n/de.ts +168 -0
- package/src/tool/imagenBase64/i18n/en.ts +2 -12
- package/src/tool/imagenBase64/i18n/es.ts +2 -12
- package/src/tool/imagenBase64/i18n/fr.ts +2 -12
- package/src/tool/imagenBase64/i18n/id.ts +168 -0
- package/src/tool/imagenBase64/i18n/it.ts +168 -0
- package/src/tool/imagenBase64/i18n/ja.ts +168 -0
- package/src/tool/imagenBase64/i18n/ko.ts +168 -0
- package/src/tool/imagenBase64/i18n/nl.ts +168 -0
- package/src/tool/imagenBase64/i18n/pl.ts +168 -0
- package/src/tool/imagenBase64/i18n/pt.ts +173 -0
- package/src/tool/imagenBase64/i18n/ru.ts +168 -0
- package/src/tool/imagenBase64/i18n/sv.ts +168 -0
- package/src/tool/imagenBase64/i18n/tr.ts +168 -0
- package/src/tool/imagenBase64/i18n/zh.ts +168 -0
- package/src/tool/imagenBase64/index.ts +12 -0
- package/src/tool/jpgAIco/i18n/de.ts +183 -0
- package/src/tool/jpgAIco/i18n/en.ts +8 -13
- package/src/tool/jpgAIco/i18n/es.ts +13 -18
- package/src/tool/jpgAIco/i18n/fr.ts +9 -14
- package/src/tool/jpgAIco/i18n/id.ts +183 -0
- package/src/tool/jpgAIco/i18n/it.ts +183 -0
- package/src/tool/jpgAIco/i18n/ja.ts +183 -0
- package/src/tool/jpgAIco/i18n/ko.ts +183 -0
- package/src/tool/jpgAIco/i18n/nl.ts +183 -0
- package/src/tool/jpgAIco/i18n/pl.ts +183 -0
- package/src/tool/jpgAIco/i18n/pt.ts +183 -0
- package/src/tool/jpgAIco/i18n/ru.ts +183 -0
- package/src/tool/jpgAIco/i18n/sv.ts +183 -0
- package/src/tool/jpgAIco/i18n/tr.ts +183 -0
- package/src/tool/jpgAIco/i18n/zh.ts +183 -0
- package/src/tool/jpgAIco/index.ts +12 -0
- package/src/tool/jpgAPng/i18n/de.ts +178 -0
- package/src/tool/jpgAPng/i18n/en.ts +2 -12
- package/src/tool/jpgAPng/i18n/es.ts +2 -12
- package/src/tool/jpgAPng/i18n/fr.ts +2 -12
- package/src/tool/jpgAPng/i18n/id.ts +178 -0
- package/src/tool/jpgAPng/i18n/it.ts +178 -0
- package/src/tool/jpgAPng/i18n/ja.ts +178 -0
- package/src/tool/jpgAPng/i18n/ko.ts +178 -0
- package/src/tool/jpgAPng/i18n/nl.ts +178 -0
- package/src/tool/jpgAPng/i18n/pl.ts +178 -0
- package/src/tool/jpgAPng/i18n/pt.ts +178 -0
- package/src/tool/jpgAPng/i18n/ru.ts +178 -0
- package/src/tool/jpgAPng/i18n/sv.ts +178 -0
- package/src/tool/jpgAPng/i18n/tr.ts +178 -0
- package/src/tool/jpgAPng/i18n/zh.ts +178 -0
- package/src/tool/jpgAPng/index.ts +13 -1
- package/src/tool/jpgAWebp/i18n/de.ts +178 -0
- package/src/tool/jpgAWebp/i18n/en.ts +2 -12
- package/src/tool/jpgAWebp/i18n/es.ts +2 -12
- package/src/tool/jpgAWebp/i18n/fr.ts +2 -12
- package/src/tool/jpgAWebp/i18n/id.ts +178 -0
- package/src/tool/jpgAWebp/i18n/it.ts +178 -0
- package/src/tool/jpgAWebp/i18n/ja.ts +178 -0
- package/src/tool/jpgAWebp/i18n/ko.ts +178 -0
- package/src/tool/jpgAWebp/i18n/nl.ts +178 -0
- package/src/tool/jpgAWebp/i18n/pl.ts +178 -0
- package/src/tool/jpgAWebp/i18n/pt.ts +178 -0
- package/src/tool/jpgAWebp/i18n/ru.ts +178 -0
- package/src/tool/jpgAWebp/i18n/sv.ts +178 -0
- package/src/tool/jpgAWebp/i18n/tr.ts +178 -0
- package/src/tool/jpgAWebp/i18n/zh.ts +178 -0
- package/src/tool/jpgAWebp/index.ts +12 -0
- package/src/tool/pngAIco/i18n/de.ts +183 -0
- package/src/tool/pngAIco/i18n/en.ts +8 -13
- package/src/tool/pngAIco/i18n/es.ts +19 -24
- package/src/tool/pngAIco/i18n/fr.ts +20 -25
- package/src/tool/pngAIco/i18n/id.ts +183 -0
- package/src/tool/pngAIco/i18n/it.ts +183 -0
- package/src/tool/pngAIco/i18n/ja.ts +183 -0
- package/src/tool/pngAIco/i18n/ko.ts +183 -0
- package/src/tool/pngAIco/i18n/nl.ts +183 -0
- package/src/tool/pngAIco/i18n/pl.ts +183 -0
- package/src/tool/pngAIco/i18n/pt.ts +183 -0
- package/src/tool/pngAIco/i18n/ru.ts +183 -0
- package/src/tool/pngAIco/i18n/sv.ts +183 -0
- package/src/tool/pngAIco/i18n/tr.ts +183 -0
- package/src/tool/pngAIco/i18n/zh.ts +183 -0
- package/src/tool/pngAIco/index.ts +12 -0
- package/src/tool/pngAJpg/i18n/de.ts +191 -0
- package/src/tool/pngAJpg/i18n/en.ts +2 -12
- package/src/tool/pngAJpg/i18n/es.ts +2 -12
- package/src/tool/pngAJpg/i18n/fr.ts +2 -12
- package/src/tool/pngAJpg/i18n/id.ts +191 -0
- package/src/tool/pngAJpg/i18n/it.ts +191 -0
- package/src/tool/pngAJpg/i18n/ja.ts +191 -0
- package/src/tool/pngAJpg/i18n/ko.ts +191 -0
- package/src/tool/pngAJpg/i18n/nl.ts +191 -0
- package/src/tool/pngAJpg/i18n/pl.ts +191 -0
- package/src/tool/pngAJpg/i18n/pt.ts +191 -0
- package/src/tool/pngAJpg/i18n/ru.ts +191 -0
- package/src/tool/pngAJpg/i18n/sv.ts +191 -0
- package/src/tool/pngAJpg/i18n/tr.ts +191 -0
- package/src/tool/pngAJpg/i18n/zh.ts +191 -0
- package/src/tool/pngAJpg/index.ts +13 -1
- package/src/tool/pngAWebp/i18n/de.ts +182 -0
- package/src/tool/pngAWebp/i18n/en.ts +2 -12
- package/src/tool/pngAWebp/i18n/es.ts +2 -12
- package/src/tool/pngAWebp/i18n/fr.ts +2 -12
- package/src/tool/pngAWebp/i18n/id.ts +182 -0
- package/src/tool/pngAWebp/i18n/it.ts +182 -0
- package/src/tool/pngAWebp/i18n/ja.ts +182 -0
- package/src/tool/pngAWebp/i18n/ko.ts +182 -0
- package/src/tool/pngAWebp/i18n/nl.ts +182 -0
- package/src/tool/pngAWebp/i18n/pl.ts +182 -0
- package/src/tool/pngAWebp/i18n/pt.ts +182 -0
- package/src/tool/pngAWebp/i18n/ru.ts +182 -0
- package/src/tool/pngAWebp/i18n/sv.ts +182 -0
- package/src/tool/pngAWebp/i18n/tr.ts +182 -0
- package/src/tool/pngAWebp/i18n/zh.ts +182 -0
- package/src/tool/pngAWebp/index.ts +12 -0
- package/src/tool/svgAJpg/i18n/de.ts +178 -0
- package/src/tool/svgAJpg/i18n/en.ts +8 -13
- package/src/tool/svgAJpg/i18n/es.ts +8 -13
- package/src/tool/svgAJpg/i18n/fr.ts +2 -12
- package/src/tool/svgAJpg/i18n/id.ts +178 -0
- package/src/tool/svgAJpg/i18n/it.ts +178 -0
- package/src/tool/svgAJpg/i18n/ja.ts +178 -0
- package/src/tool/svgAJpg/i18n/ko.ts +178 -0
- package/src/tool/svgAJpg/i18n/nl.ts +178 -0
- package/src/tool/svgAJpg/i18n/pl.ts +178 -0
- package/src/tool/svgAJpg/i18n/pt.ts +178 -0
- package/src/tool/svgAJpg/i18n/ru.ts +178 -0
- package/src/tool/svgAJpg/i18n/sv.ts +178 -0
- package/src/tool/svgAJpg/i18n/tr.ts +178 -0
- package/src/tool/svgAJpg/i18n/zh.ts +178 -0
- package/src/tool/svgAJpg/index.ts +12 -0
- package/src/tool/svgAPng/i18n/de.ts +178 -0
- package/src/tool/svgAPng/i18n/en.ts +8 -13
- package/src/tool/svgAPng/i18n/es.ts +31 -36
- package/src/tool/svgAPng/i18n/fr.ts +2 -12
- package/src/tool/svgAPng/i18n/id.ts +178 -0
- package/src/tool/svgAPng/i18n/it.ts +178 -0
- package/src/tool/svgAPng/i18n/ja.ts +178 -0
- package/src/tool/svgAPng/i18n/ko.ts +178 -0
- package/src/tool/svgAPng/i18n/nl.ts +178 -0
- package/src/tool/svgAPng/i18n/pl.ts +178 -0
- package/src/tool/svgAPng/i18n/pt.ts +178 -0
- package/src/tool/svgAPng/i18n/ru.ts +178 -0
- package/src/tool/svgAPng/i18n/sv.ts +178 -0
- package/src/tool/svgAPng/i18n/tr.ts +178 -0
- package/src/tool/svgAPng/i18n/zh.ts +178 -0
- package/src/tool/svgAPng/index.ts +12 -0
- package/src/tool/webpAIco/i18n/de.ts +183 -0
- package/src/tool/webpAIco/i18n/en.ts +8 -13
- package/src/tool/webpAIco/i18n/es.ts +9 -14
- package/src/tool/webpAIco/i18n/fr.ts +11 -16
- package/src/tool/webpAIco/i18n/id.ts +183 -0
- package/src/tool/webpAIco/i18n/it.ts +183 -0
- package/src/tool/webpAIco/i18n/ja.ts +183 -0
- package/src/tool/webpAIco/i18n/ko.ts +183 -0
- package/src/tool/webpAIco/i18n/nl.ts +183 -0
- package/src/tool/webpAIco/i18n/pl.ts +183 -0
- package/src/tool/webpAIco/i18n/pt.ts +183 -0
- package/src/tool/webpAIco/i18n/ru.ts +183 -0
- package/src/tool/webpAIco/i18n/sv.ts +183 -0
- package/src/tool/webpAIco/i18n/tr.ts +183 -0
- package/src/tool/webpAIco/i18n/zh.ts +183 -0
- package/src/tool/webpAIco/index.ts +12 -0
- package/src/tool/webpAJpg/i18n/de.ts +187 -0
- package/src/tool/webpAJpg/i18n/en.ts +9 -13
- package/src/tool/webpAJpg/i18n/es.ts +37 -42
- package/src/tool/webpAJpg/i18n/fr.ts +35 -40
- package/src/tool/webpAJpg/i18n/id.ts +182 -0
- package/src/tool/webpAJpg/i18n/it.ts +182 -0
- package/src/tool/webpAJpg/i18n/ja.ts +182 -0
- package/src/tool/webpAJpg/i18n/ko.ts +182 -0
- package/src/tool/webpAJpg/i18n/nl.ts +182 -0
- package/src/tool/webpAJpg/i18n/pl.ts +182 -0
- package/src/tool/webpAJpg/i18n/pt.ts +182 -0
- package/src/tool/webpAJpg/i18n/ru.ts +182 -0
- package/src/tool/webpAJpg/i18n/sv.ts +182 -0
- package/src/tool/webpAJpg/i18n/tr.ts +182 -0
- package/src/tool/webpAJpg/i18n/zh.ts +182 -0
- package/src/tool/webpAJpg/index.ts +12 -0
- package/src/tool/webpAPng/i18n/de.ts +182 -0
- package/src/tool/webpAPng/i18n/en.ts +8 -13
- package/src/tool/webpAPng/i18n/es.ts +35 -40
- package/src/tool/webpAPng/i18n/fr.ts +2 -12
- package/src/tool/webpAPng/i18n/id.ts +182 -0
- package/src/tool/webpAPng/i18n/it.ts +182 -0
- package/src/tool/webpAPng/i18n/ja.ts +182 -0
- package/src/tool/webpAPng/i18n/ko.ts +182 -0
- package/src/tool/webpAPng/i18n/nl.ts +182 -0
- package/src/tool/webpAPng/i18n/pl.ts +182 -0
- package/src/tool/webpAPng/i18n/pt.ts +182 -0
- package/src/tool/webpAPng/i18n/ru.ts +182 -0
- package/src/tool/webpAPng/i18n/sv.ts +182 -0
- package/src/tool/webpAPng/i18n/tr.ts +182 -0
- package/src/tool/webpAPng/i18n/zh.ts +182 -0
- 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 { WebpAPngLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'webp-to-png-converter';
|
|
6
|
+
const title = 'WebP를 PNG로 온라인에서 무료로 변환하세요';
|
|
7
|
+
const description =
|
|
8
|
+
'브라우저에서 WebP 이미지를 PNG로 변환하세요. 투명도를 유지합니다. 서버로 파일을 업로드하지 않습니다. 무료 및 100% 개인 정보 보호.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'WebP 파일을 드래그하세요...',
|
|
12
|
+
convertText: '즉시 PNG로 변환하려면',
|
|
13
|
+
selectFiles: '파일 선택',
|
|
14
|
+
processedFiles: '처리된 파일',
|
|
15
|
+
downloadAll: '모두 다운로드 (.zip)',
|
|
16
|
+
pending: '대기 중',
|
|
17
|
+
bibliographyTitle: '참고 문헌',
|
|
18
|
+
faqTitle: '자주 묻는 질문',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: WebpAPngLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'WebP 파일을 PNG로 변환해야 하는 이유는 무엇인가요?',
|
|
24
|
+
answer:
|
|
25
|
+
'WebP 파일은 더 가볍지만 구버전 Photoshop과 같은 편집 프로그램에서 호환성 문제를 일으킬 수 있습니다. PNG는 100% 보편적인 호환성을 보장합니다.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'WebP에서 PNG로 변환할 때 투명도가 손실되나요?',
|
|
29
|
+
answer:
|
|
30
|
+
'전혀 그렇지 않습니다. JPG로의 변환과 달리 PNG는 알파 채널을 지원합니다. 당사의 유틸리티는 원본 파일의 모든 투명한 영역을 보존합니다.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: '기밀 회사 파일을 업로드해도 되나요?',
|
|
34
|
+
answer:
|
|
35
|
+
'업로드해도 되고, 해야 합니다. 모든 것이 자바스크립트를 통해 로컬에서 실행되므로 회사 이미지는 기기를 절대 떠나지 않으며 외부 서버에 저장되지 않습니다.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: WebpAPngLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'WebP 파일 드래그',
|
|
42
|
+
text: '메인 패널에 WebP 파일을 끌어다 놓거나 전통적인 방식으로 이미지를 선택하세요.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: '고정밀 변환',
|
|
46
|
+
text: '브라우저가 이미지를 픽셀 단위로 다시 그려 원본 색 영역을 유지하면서 PNG 형식의 정확한 복사본을 생성합니다.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: '개별 또는 일괄 다운로드',
|
|
50
|
+
text: '각 파일을 개별적으로 저장하거나, 배치를 처리한 경우 ZIP 버튼을 클릭하여 모든 파일을 하나로 묶어 다운로드하세요.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: WebpAPngLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'WebP API 및 라이브러리 문서',
|
|
57
|
+
url: 'https://developers.google.com/speed/webp/docs/api',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'HTML Canvas 2D 컨텍스트 사양',
|
|
61
|
+
url: 'https://html.spec.whatwg.org/multipage/canvas.html',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: 'Can I use: WebP 이미지 형식',
|
|
65
|
+
url: 'https://caniuse.com/webp',
|
|
66
|
+
},
|
|
67
|
+
];
|
|
68
|
+
|
|
69
|
+
const seo: WebpAPngLocaleContent['seo'] = [
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
text: 'WebP to PNG 변환기: 편집 및 디자인을 위한 전문가의 선택',
|
|
73
|
+
level: 2,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'paragraph',
|
|
77
|
+
html: '디자이너가 <strong>WebP</strong> 형식의 그래픽 자산을 다운로드하여 Photoshop, Figma 또는 Illustrator에서 열려고 할 때, 파일 로드에 실패하거나 품질이 저하되는 좌절스러운 결과를 초래할 수 있습니다. <strong>PNG</strong> 형식은 무손실 압축, 전체 알파 채널, 전체 크리에이티브 프로덕션 체인에서의 호환성 보장 등 전문 편집 분야의 독보적인 표준입니다.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'title',
|
|
81
|
+
text: '웹을 위한 WebP, 스튜디오를 위한 PNG',
|
|
82
|
+
level: 3,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'WebP는 웹 프로덕션 형식입니다. 이 형식의 압축 알고리즘은 반복적인 편집 워크플로우에서 최대 정밀도를 유지하는 것이 아니라 전송 무게를 줄이는 데 최적화되어 있습니다. 편집된 WebP를 저장할 때마다 코덱은 압축을 다시 적용합니다. 파일을 여러 번 수정해야 하는 프로젝트의 경우, 이는 누적된 품질 저하를 의미합니다.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'paragraph',
|
|
90
|
+
html: 'PNG는 <strong>무손실 압축</strong>을 사용합니다. 파일을 저장하는 횟수에 관계없이 모든 픽셀의 데이터가 완전히 보존됩니다. 수십 번의 수정을 거치면서 시각적 무결성을 유지해야 하는 UI/UX 디자이너, 디지털 일러스트레이터 및 브랜딩 팀이 선택하는 형식입니다. Photoshop, Figma, Sketch 및 Illustrator와 같은 도구는 PNG를 기본 내보내기 형식으로 취급합니다.',
|
|
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: '자바스크립트 기술을 사용하여 하드웨어에서 직접 처리합니다.',
|
|
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>Image</strong> 요소로 로드한 다음 원본과 동일한 치수의 HTML5 캔버스에 그립니다. JPG로의 변환과 달리 여기서는 배경 채우기가 필요하지 않으며 캔버스는 전체 알파 채널을 유지합니다.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'paragraph',
|
|
137
|
+
html: '최종 내보내기는 <code>toDataURL(\'image/png\')</code> 메서드를 사용하며, 이는 원본에 충실한 무손실 PNG를 생성합니다. 결과는 중간 과정, 색상 저하 또는 투명도 손실 없이 모든 전문 디자인 소프트웨어로 직접 가져올 준비가 된 파일입니다.',
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'tip',
|
|
141
|
+
title: '편집자를 위한 팁',
|
|
142
|
+
html: '이미지를 계속 편집해야 할 때는 PNG를 사용하세요. 무손실 압축은 반복적인 저장으로 인한 품질 저하가 없음을 보장하며, 이는 Photoshop이나 Figma에서 레이어, 마스크 또는 색상 조정을 작업할 때 중요합니다.',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
type: 'title',
|
|
146
|
+
text: '활용 사례 및 호환성',
|
|
147
|
+
level: 3,
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
type: 'list',
|
|
151
|
+
icon: 'mdi:check-circle',
|
|
152
|
+
items: [
|
|
153
|
+
'WebP 자산을 Photoshop, Figma, Sketch 또는 Illustrator로 가져오기.',
|
|
154
|
+
'여러 배경에서 사용하기 위해 로고 및 아이콘의 투명도 유지.',
|
|
155
|
+
'장기 프로젝트를 위한 그래픽의 마스터 사본 생성.',
|
|
156
|
+
'알파 채널이 있는 PNG가 필요한 모바일 앱용 자산 내보내기.',
|
|
157
|
+
'가변 배경이 있는 디자인 모형 및 프레젠테이션에 이미지 사용.',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: '결론',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: 'WebP가 웹 서버 형식이라면 PNG는 디자인 스튜디오 형식입니다. 이 도구는 투명도가 유지되고 최대 품질을 갖춘 생산 준비가 된 PNG로 WebP 자산을 변환합니다. 이 모든 과정은 브라우저에서 이루어지며 파일이 기기를 절대 떠나지 않습니다.',
|
|
168
|
+
},
|
|
169
|
+
];
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
export const content: WebpAPngLocaleContent = {
|
|
173
|
+
slug,
|
|
174
|
+
title,
|
|
175
|
+
description,
|
|
176
|
+
ui,
|
|
177
|
+
seo,
|
|
178
|
+
faq,
|
|
179
|
+
bibliography,
|
|
180
|
+
howTo,
|
|
181
|
+
schemas: generateSchemas({ title, description, inLanguage: 'ko', 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 { WebpAPngLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'webp-naar-png-converter';
|
|
6
|
+
const title = 'Converteer WebP naar PNG Online en Gratis';
|
|
7
|
+
const description =
|
|
8
|
+
'Converteer WebP-afbeeldingen naar PNG in je browser. Behoudt transparantie. Geen bestandsuploads naar servers. Gratis en 100% privé.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'Sleep WebP-bestanden...',
|
|
12
|
+
convertText: 'Om ze direct naar PNG te converteren',
|
|
13
|
+
selectFiles: 'Bestanden selecteren',
|
|
14
|
+
processedFiles: 'Verwerkte bestanden',
|
|
15
|
+
downloadAll: 'Alles downloaden (.zip)',
|
|
16
|
+
pending: 'In afwachting',
|
|
17
|
+
bibliographyTitle: 'Bibliografische Referenties',
|
|
18
|
+
faqTitle: 'Veelgestelde Vragen',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: WebpAPngLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Waarom moet ik mijn WebP-bestanden converteren naar PNG?',
|
|
24
|
+
answer:
|
|
25
|
+
'Ondanks dat ze lichter zijn, kunnen WebP-bestanden compatibiliteitsproblemen veroorzaken in bewerkingsprogramma\'s zoals oudere Photoshop-versies. PNG garandeert 100% universele compatibiliteit.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Gaan transparanties verloren bij het converteren van WebP naar PNG?',
|
|
29
|
+
answer:
|
|
30
|
+
'Helemaal niet. In tegenstelling tot conversie naar JPG, ondersteunt PNG het alfakanaal. Onze tool behoudt elk transparant gebied van het originele bestand.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Kan ik vertrouwelijke bedrijfsbestanden uploaden?',
|
|
34
|
+
answer:
|
|
35
|
+
'Dat kan en dat moet je ook doen. Omdat alles lokaal via JavaScript draait, verlaten je bedrijfsafbeeldingen nooit je computer en worden ze niet op externe servers opgeslagen.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: WebpAPngLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'Sleep je WebP-bestanden',
|
|
42
|
+
text: 'Sleep je WebP-bestanden naar het hoofdpaneel of selecteer de afbeeldingen op de traditionele manier.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'High Fidelity Conversie',
|
|
46
|
+
text: 'Je browser tekent de afbeelding pixel voor pixel opnieuw en genereert een exacte kopie in PNG-formaat, waarbij het originele kleurengamma behouden blijft.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'Individuele of Bulk Download',
|
|
50
|
+
text: 'Sla elk bestand afzonderlijk op of, als je een batch hebt verwerkt, klik op de ZIP-knop om ze allemaal gebundeld te downloaden.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: WebpAPngLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'WebP API en Bibliotheek Documentatie',
|
|
57
|
+
url: 'https://developers.google.com/speed/webp/docs/api',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'HTML Canvas 2D Context Specificatie',
|
|
61
|
+
url: 'https://html.spec.whatwg.org/multipage/canvas.html',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: 'Can I use: WebP-afbeeldingsformaat',
|
|
65
|
+
url: 'https://caniuse.com/webp',
|
|
66
|
+
},
|
|
67
|
+
];
|
|
68
|
+
|
|
69
|
+
const seo: WebpAPngLocaleContent['seo'] = [
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
text: 'WebP naar PNG Converter: de professionele keuze voor bewerking en ontwerp',
|
|
73
|
+
level: 2,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'paragraph',
|
|
77
|
+
html: 'Wanneer een ontwerper een grafisch asset in <strong>WebP</strong>-formaat downloadt en probeert te openen in Photoshop, Figma of Illustrator, kan het resultaat frustrerend zijn: het bestand kan niet worden geladen of verliest kwaliteit. Het <strong>PNG</strong>-formaat is de onbetwiste standaard voor professionele bewerking: verliesvrije compressie, volledig alfakanaal en gegarandeerde compatibiliteit in de hele creatieve productieketen.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'title',
|
|
81
|
+
text: 'WebP voor het web, PNG voor de studio',
|
|
82
|
+
level: 3,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'WebP is een formaat voor webproductie: de compressie-algoritmen zijn geoptimaliseerd om het overdrachtsgewicht te verminderen, niet om maximale getrouwheid te behouden tijdens iteratieve bewerkingsworkflows. Elke keer dat je een bewerkt WebP-bestand opslaat, past de codec opnieuw compressie toe. Voor projecten waarbij een bestand vaak wordt gewijzigd, betekent dit een cumulatieve kwaliteitsvermindering.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'paragraph',
|
|
90
|
+
html: 'PNG gebruikt <strong>verliesvrije compressie</strong>: de gegevens van elke pixel blijven volledig behouden, ongeacht hoe vaak je het bestand opslaat. Het is het formaat bij uitstek voor UI/UX-ontwerpers, digitale illustratoren en brandingteams die de visuele integriteit over tientallen revisies heen moeten handhaven. Tools zoals Photoshop, Figma, Sketch en Illustrator behandelen PNG als hun primaire exportformaat.',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
type: 'title',
|
|
94
|
+
text: 'Vergelijking: Lokale vs Cloud-conversie',
|
|
95
|
+
level: 3,
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
type: 'comparative',
|
|
99
|
+
items: [
|
|
100
|
+
{
|
|
101
|
+
title: 'Cloud Converters',
|
|
102
|
+
description: 'Tools die je bestanden uploaden naar een externe server.',
|
|
103
|
+
icon: 'mdi:cloud-upload',
|
|
104
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
105
|
+
points: [
|
|
106
|
+
'Je ontwerpassets worden opgeslagen op servers van derden',
|
|
107
|
+
'Trage externe verwerking voor grote bestanden',
|
|
108
|
+
'Risico op lekken voor vertrouwelijke klantprojecten',
|
|
109
|
+
'Batchconversie beperkt of achter een betaalmuur',
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
title: 'Onze Lokale Architectuur',
|
|
114
|
+
description: 'Directe verwerking op je eigen hardware met Vanilla JS-technologie.',
|
|
115
|
+
icon: 'mdi:laptop-mac',
|
|
116
|
+
highlight: true,
|
|
117
|
+
points: [
|
|
118
|
+
'Je ontwerpen verlaten nooit je machine',
|
|
119
|
+
'Converteer tientallen bestanden direct in batch',
|
|
120
|
+
'Volledig behoud van alfakanaal en kleurengamma',
|
|
121
|
+
'Absolute privacy voor klantprojecten',
|
|
122
|
+
],
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'title',
|
|
128
|
+
text: 'Hoe het technisch werkt',
|
|
129
|
+
level: 3,
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'Moderne browsers kunnen WebP native decoderen. Onze tool maakt gebruik van deze eigenschap om het bestand in een JavaScript-<strong>Image</strong>-element te laden en tekent het vervolgens op een HTML5-canvas met dezelfde afmetingen als het origineel. In tegenstelling tot conversie naar JPG is hier geen achtergrondvulling nodig: het canvas behoudt het volledige alfakanaal.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'paragraph',
|
|
137
|
+
html: 'De uiteindelijke export maakt gebruik van de <code>toDataURL(\'image/png\')</code> methode, die een verliesvrije PNG genereert die trouw is aan het origineel. Het resultaat is een bestand dat direct in elke professionele ontwerpsoftware kan worden geïmporteerd zonder tussenstappen, kleurverlies of verlies van transparantie.',
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'tip',
|
|
141
|
+
title: 'Tip voor bewerkers',
|
|
142
|
+
html: 'Gebruik PNG wanneer je de afbeelding verder moet bewerken. Verliesvrije compressie garandeert dat er geen kwaliteitsverlies optreedt door herhaaldelijk opslaan — cruciaal bij het werken met lagen, maskers of kleuraanpassingen in Photoshop of Figma.',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
type: 'title',
|
|
146
|
+
text: 'Toepassingen en compatibiliteit',
|
|
147
|
+
level: 3,
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
type: 'list',
|
|
151
|
+
icon: 'mdi:check-circle',
|
|
152
|
+
items: [
|
|
153
|
+
'WebP-assets importeren in Photoshop, Figma, Sketch of Illustrator.',
|
|
154
|
+
'Transparantie behouden in logo\'s en iconen voor gebruik op meerdere achtergronden.',
|
|
155
|
+
'Masterkopieën van graphics maken voor langlopende projecten.',
|
|
156
|
+
'Assets exporteren voor mobiele apps die PNG met alfakanaal vereisen.',
|
|
157
|
+
'Afbeeldingen gebruiken in ontwerpmock-ups en presentaties met variabele achtergronden.',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: 'Conclusie',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: 'Als WebP het formaat voor webservers is, dan is PNG het formaat voor de ontwerpstudio. Deze tool converteert je WebP-assets naar productieklare PNG\'s, met behoud van transparantie en maximale kwaliteit — allemaal in je browser en zonder dat je bestanden je machine ooit verlaten.',
|
|
168
|
+
},
|
|
169
|
+
];
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
export const content: WebpAPngLocaleContent = {
|
|
173
|
+
slug,
|
|
174
|
+
title,
|
|
175
|
+
description,
|
|
176
|
+
ui,
|
|
177
|
+
seo,
|
|
178
|
+
faq,
|
|
179
|
+
bibliography,
|
|
180
|
+
howTo,
|
|
181
|
+
schemas: generateSchemas({ title, description, inLanguage: 'nl', 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 { WebpAPngLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'konwerter-webp-na-png';
|
|
6
|
+
const title = 'Konwertuj WebP na PNG Online i Za Darmo';
|
|
7
|
+
const description =
|
|
8
|
+
'Konwertuj obrazy WebP na PNG w przeglądarce. Zachowuje przezroczystość. Brak przesyłania plików na serwery. Darmowe i w 100% prywatne.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'Przeciągnij pliki WebP...',
|
|
12
|
+
convertText: 'Aby błyskawicznie przekonwertować je na PNG',
|
|
13
|
+
selectFiles: 'Wybierz pliki',
|
|
14
|
+
processedFiles: 'Przetworzone pliki',
|
|
15
|
+
downloadAll: 'Pobierz wszystko (.zip)',
|
|
16
|
+
pending: 'Oczekujące',
|
|
17
|
+
bibliographyTitle: 'Bibliografia',
|
|
18
|
+
faqTitle: 'Często Zadawane Pytania',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: WebpAPngLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Dlaczego muszę konwertować pliki WebP na PNG?',
|
|
24
|
+
answer:
|
|
25
|
+
'Mimo że są lżejsze, pliki WebP mogą powodować niekompatybilność w programach do edycji, takich jak starsze wersje Photoshop. Format PNG zapewnia 100% uniwersalną kompatybilność.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Czy przezroczystość zostanie utracona podczas konwersji z WebP na PNG?',
|
|
29
|
+
answer:
|
|
30
|
+
'Zdecydowanie nie. W przeciwieństwie do konwersji na JPG, format PNG obsługuje kanał alfa. Nasze narzędzie zachowa każdy przezroczysty obszar z oryginalnego pliku.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Czy mogę bezpiecznie przesyłać poufne pliki firmowe?',
|
|
34
|
+
answer:
|
|
35
|
+
'Możesz i powinieneś. Ponieważ wszystko działa lokalnie za pośrednictwem JavaScript, obrazy Twojej firmy nigdy nie opuszczą Twojego komputera ani nie będą przechowywane na zewnętrznych serwerach.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: WebpAPngLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'Przeciągnij pliki WebP',
|
|
42
|
+
text: 'Przenieś i upuść pliki WebP na panel główny lub wybierz obrazy w tradycyjny sposób.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Konwersja wysokiej wierności',
|
|
46
|
+
text: 'Twoja przeglądarka przerysuje obraz piksel po pikselu i wygeneruje dokładną kopię w formacie PNG, zachowując oryginalną gamę kolorów.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'Pobieranie pojedyncze lub zbiorcze',
|
|
50
|
+
text: 'Zapisz każdy plik z osobna lub, jeśli przetworzyłeś partię, kliknij przycisk ZIP, aby pobrać je wszystkie spakowane razem.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: WebpAPngLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'Dokumentacja API i biblioteki WebP',
|
|
57
|
+
url: 'https://developers.google.com/speed/webp/docs/api',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'Specyfikacja HTML Canvas 2D Context',
|
|
61
|
+
url: 'https://html.spec.whatwg.org/multipage/canvas.html',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: 'Can I use: format obrazu WebP',
|
|
65
|
+
url: 'https://caniuse.com/webp',
|
|
66
|
+
},
|
|
67
|
+
];
|
|
68
|
+
|
|
69
|
+
const seo: WebpAPngLocaleContent['seo'] = [
|
|
70
|
+
{
|
|
71
|
+
type: 'title',
|
|
72
|
+
text: 'Konwerter WebP na PNG: Profesjonalny wybór do edycji i projektowania',
|
|
73
|
+
level: 2,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'paragraph',
|
|
77
|
+
html: 'Gdy projektant pobiera zasób graficzny w formacie <strong>WebP</strong> i próbuje otworzyć go w programie Photoshop, Figma lub Illustrator, wynik może być frustrujący: plik nie ładuje się lub traci na jakości. Format <strong>PNG</strong> jest niekwestionowanym standardem profesjonalnej edycji: bezstratna kompresja, pełny kanał alfa i gwarantowana kompatybilność w całym łańcuchu produkcji kreatywnej.',
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'title',
|
|
81
|
+
text: 'WebP do sieci, PNG do studia',
|
|
82
|
+
level: 3,
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'WebP to format do produkcji internetowej: jego algorytmy kompresji są zoptymalizowane pod kątem zmniejszenia wagi transferu, a nie zachowania maksymalnej wierności podczas iteracyjnych przepływów pracy związanych z edycją. Za każdym razem, gdy zapisujesz edytowany plik WebP, kodek ponownie stosuje kompresję. W przypadku projektów, w których plik będzie modyfikowany wiele razy, oznacza to skumulowaną utratę jakości.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'paragraph',
|
|
90
|
+
html: 'PNG wykorzystuje <strong>bezstratną kompresję</strong>: dane każdego piksela są zachowywane w całości bez względu na to, ile razy zapisujesz plik. Jest to format wybierany przez projektantów UI/UX, ilustratorów cyfrowych i zespoły brandingowe, które muszą zachować spójność wizualną podczas dziesiątek poprawek. Narzędzia takie jak Photoshop, Figma, Sketch i Illustrator traktują PNG jako swój podstawowy format eksportu.',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
type: 'title',
|
|
94
|
+
text: 'Porównanie: Konwersja lokalna vs w chmurze',
|
|
95
|
+
level: 3,
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
type: 'comparative',
|
|
99
|
+
items: [
|
|
100
|
+
{
|
|
101
|
+
title: 'Konwertery w chmurze',
|
|
102
|
+
description: 'Narzędzia, które przesyłają Twoje pliki na zdalny serwer.',
|
|
103
|
+
icon: 'mdi:cloud-upload',
|
|
104
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
105
|
+
points: [
|
|
106
|
+
'Twoje zasoby projektowe są przechowywane na serwerach osób trzecich',
|
|
107
|
+
'Powolne przetwarzanie zdalne dużych plików',
|
|
108
|
+
'Ryzyko wycieku poufnych projektów klientów',
|
|
109
|
+
'Konwersja wsadowa ograniczona lub płatna',
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
title: 'Nasza lokalna architektura',
|
|
114
|
+
description: 'Bezpośrednie przetwarzanie na Twoim sprzęcie przy użyciu technologii Vanilla JS.',
|
|
115
|
+
icon: 'mdi:laptop-mac',
|
|
116
|
+
highlight: true,
|
|
117
|
+
points: [
|
|
118
|
+
'Twoje projekty nigdy nie opuszczają Twojej maszyny',
|
|
119
|
+
'Błyskawiczna konwersja wsadowa dziesiątek plików',
|
|
120
|
+
'Pełne zachowanie kanału alfa i gamy kolorów',
|
|
121
|
+
'Absolutna prywatność dla projektów klientów',
|
|
122
|
+
],
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'title',
|
|
128
|
+
text: 'Jak to działa technicznie',
|
|
129
|
+
level: 3,
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'Nowoczesne przeglądarki potrafią dekodować format WebP natywnie. Nasze narzędzie wykorzystuje tę możliwość do załadowania pliku do elementu JavaScript <strong>Image</strong>, a następnie rysuje go na płótnie HTML5 o tych samych wymiarach co oryginał. W przeciwieństwie do konwersji na JPG, tutaj nie jest potrzebne wypełnianie tła: płótno zachowuje pełny kanał alfa.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'paragraph',
|
|
137
|
+
html: 'Ostateczny eksport wykorzystuje metodę <code>toDataURL(\'image/png\')</code>, która generuje bezstratny plik PNG wierny oryginałowi. Rezultatem jest plik gotowy do bezpośredniego importu do dowolnego profesjonalnego oprogramowania do projektowania bez etapów pośrednich, degradacji kolorów czy utraty przezroczystości.',
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'tip',
|
|
141
|
+
title: 'Wskazówka dla edytorów',
|
|
142
|
+
html: 'Używaj formatu PNG, gdy chcesz kontynuować edycję obrazu. Bezstratna kompresja gwarantuje brak utraty jakości przy wielokrotnym zapisie — co jest kluczowe podczas pracy z warstwami, maskami lub korekcją kolorów w programie Photoshop lub Figma.',
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
type: 'title',
|
|
146
|
+
text: 'Zastosowania i kompatybilność',
|
|
147
|
+
level: 3,
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
type: 'list',
|
|
151
|
+
icon: 'mdi:check-circle',
|
|
152
|
+
items: [
|
|
153
|
+
'Importowanie zasobów WebP do programów Photoshop, Figma, Sketch lub Illustrator.',
|
|
154
|
+
'Zachowanie przezroczystości w logo i ikonach do użytku na wielu tłach.',
|
|
155
|
+
'Tworzenie kopii wzorcowych grafik na potrzeby długotrwałych projektów.',
|
|
156
|
+
'Eksportowanie zasobów dla aplikacji mobilnych wymagających formatu PNG z kanałem alfa.',
|
|
157
|
+
'Używanie obrazów w makietach projektowych i prezentacjach ze zmiennym tłem.',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: 'Podsumowanie',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: 'Jeśli WebP jest formatem serwera WWW, to PNG jest formatem studia projektowego. To narzędzie konwertuje Twoje zasoby WebP na gotowe do produkcji pliki PNG, z nienaruszoną przezroczystością i maksymalną jakością — wszystko w Twojej przeglądarce i bez opuszczania maszyny przez Twoje pliki.',
|
|
168
|
+
},
|
|
169
|
+
];
|
|
170
|
+
|
|
171
|
+
|
|
172
|
+
export const content: WebpAPngLocaleContent = {
|
|
173
|
+
slug,
|
|
174
|
+
title,
|
|
175
|
+
description,
|
|
176
|
+
ui,
|
|
177
|
+
seo,
|
|
178
|
+
faq,
|
|
179
|
+
bibliography,
|
|
180
|
+
howTo,
|
|
181
|
+
schemas: generateSchemas({ title, description, inLanguage: 'pl', faq, howTo }),
|
|
182
|
+
};
|