@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.
- package/package.json +60 -59
- 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/slug_uniqueness.test.ts +81 -0
- 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 支持 Alpha 通道。我们的工具将保留原始文件的任何透明区域。',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: '我可以上传机密的公司文件吗?',
|
|
34
|
+
answer:
|
|
35
|
+
'当然可以。由于一切都在本地通过 JavaScript 运行, 您的公司图片永远不会离开您的电脑, 也不会存储在外部服务器上。',
|
|
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 转 PNG 转换器: 编辑与设计的专业选择',
|
|
73
|
+
level: 2,
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'paragraph',
|
|
77
|
+
html: '当设计师下载了 <strong>WebP</strong> 格式的图形素材并尝试在 Photoshop、Figma 或 Illustrator 中打开时, 结果可能会令人沮丧: 文件无法加载或质量下降。<strong>PNG</strong> 格式是专业编辑公认的标准: 无损压缩、完整的 Alpha 通道, 以及在整个创意生产链中保证的兼容性。',
|
|
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: '使用 Vanilla JS 技术直接在您的硬件上进行处理。',
|
|
115
|
+
icon: 'mdi:laptop-mac',
|
|
116
|
+
highlight: true,
|
|
117
|
+
points: [
|
|
118
|
+
'您的设计永远不会离开您的机器',
|
|
119
|
+
'立即批量转换数十个文件',
|
|
120
|
+
'完整保留 Alpha 通道和色域',
|
|
121
|
+
'客户项目的绝对隐私',
|
|
122
|
+
],
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'title',
|
|
128
|
+
text: '技术原理',
|
|
129
|
+
level: 3,
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: '现代浏览器可以原生解码 WebP。我们的工具利用这一功能将文件加载到 JavaScript <strong>Image</strong> 元素中, 然后将其绘制到与原始尺寸相同的 HTML5 Canvas 上。与转换为 JPG 不同, 这里不需要背景填充: 画布保留了完整的 Alpha 通道。',
|
|
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
|
+
'保留 LOGO 和图标的透明度, 以便在多种背景下使用。',
|
|
155
|
+
'为长期项目创建图形的母带副本。',
|
|
156
|
+
'为需要带 Alpha 通道 PNG 的移动应用导出素材。',
|
|
157
|
+
'在具有多变背景的设计模型和演示文稿中使用图片。',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: '总结',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: '如果 WebP 是网页服务器格式, 那么 PNG 就是设计工作室格式。此工具将您的 WebP 素材转换为生产就绪的 PNG, 保留透明度和最高质量——一切都在您的浏览器中完成, 且您的文件永远不会离开您的机器。',
|
|
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: 'zh', faq, howTo }),
|
|
182
|
+
};
|
|
@@ -16,6 +16,18 @@ export const webpAPng: ConvertersToolEntry<ImageConverterUI> = {
|
|
|
16
16
|
es: () => import('./i18n/es').then((m) => m.content),
|
|
17
17
|
en: () => import('./i18n/en').then((m) => m.content),
|
|
18
18
|
fr: () => import('./i18n/fr').then((m) => m.content),
|
|
19
|
+
de: () => import('./i18n/de').then((m) => m.content),
|
|
20
|
+
id: () => import('./i18n/id').then((m) => m.content),
|
|
21
|
+
it: () => import('./i18n/it').then((m) => m.content),
|
|
22
|
+
ja: () => import('./i18n/ja').then((m) => m.content),
|
|
23
|
+
ko: () => import('./i18n/ko').then((m) => m.content),
|
|
24
|
+
nl: () => import('./i18n/nl').then((m) => m.content),
|
|
25
|
+
pl: () => import('./i18n/pl').then((m) => m.content),
|
|
26
|
+
pt: () => import('./i18n/pt').then((m) => m.content),
|
|
27
|
+
ru: () => import('./i18n/ru').then((m) => m.content),
|
|
28
|
+
sv: () => import('./i18n/sv').then((m) => m.content),
|
|
29
|
+
tr: () => import('./i18n/tr').then((m) => m.content),
|
|
30
|
+
zh: () => import('./i18n/zh').then((m) => m.content),
|
|
19
31
|
},
|
|
20
32
|
};
|
|
21
33
|
|