@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,178 @@
|
|
|
1
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
2
|
+
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
3
|
+
import type { AvifAPngLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'konvertera-avif-till-png';
|
|
6
|
+
const title = 'Konvertera AVIF till PNG Online';
|
|
7
|
+
const description =
|
|
8
|
+
'Konvertera AVIF-bilder till PNG och bevara transparens. Utan att ladda upp filer. Lokal bearbetning i din webbläsare. Gratis och obegränsat.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'Dra AVIF-filer hit...',
|
|
12
|
+
convertText: 'För att konvertera dem till PNG direkt',
|
|
13
|
+
selectFiles: 'Välj filer',
|
|
14
|
+
processedFiles: 'Bearbetade filer',
|
|
15
|
+
downloadAll: 'Ladda ner alla (.zip)',
|
|
16
|
+
pending: 'Väntande',
|
|
17
|
+
bibliographyTitle: 'Bibliografiska Referenser',
|
|
18
|
+
faqTitle: 'Vanliga Frågor',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: AvifAPngLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Varför ska jag konvertera AVIF till PNG?',
|
|
24
|
+
answer:
|
|
25
|
+
'AVIF är utmärkt för kompression, men dess kompatibilitet är begränsad i äldre webbläsare och klassiska redigeringsprogram. Genom att konvertera från AVIF till PNG säkerställer du att din fil behåller den ursprungliga transparensen och att alla program kan öppna den.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Behålls transparensen från den ursprungliga AVIF-filen?',
|
|
29
|
+
answer:
|
|
30
|
+
'Ja. Till skillnad från JPG som tar bort den transparenta bakgrunden, behåller vår konverterare alfakanalen intakt vid export till PNG.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Är det sant att mina bilder inte laddas upp till internet?',
|
|
34
|
+
answer:
|
|
35
|
+
'Helt sant. Vår konverterare körs till 100 % lokalt på din enhet med hjälp av den interna JavaScript-motorn.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: AvifAPngLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'Lägg till dina AVIF-filer',
|
|
42
|
+
text: 'Du kan dra dem direkt till det markerade området eller använda knappen för att bläddra i mapparna på din enhet.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Omedelbar bearbetning',
|
|
46
|
+
text: 'Låt HTML5-processorn rendera bilden; formatet ändras automatiskt till PNG på mikrosekunder.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'Hämta dina PNG-filer',
|
|
50
|
+
text: 'Ladda ner de konverterade bilderna en och en eller ladda ner ett komplett block via ZIP-knappen.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: AvifAPngLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'Alliance for Open Media: AVIF-formatet',
|
|
57
|
+
url: 'https://aomediacodec.github.io/av1-avif/',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'W3C - Portable Network Graphics (PNG)-specifikationen',
|
|
61
|
+
url: 'https://www.w3.org/TR/png/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: AvifAPngLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'AVIF till PNG-konverterare: Från webben till professionell redigering',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'AVIF är det idealiska formatet för att leverera bilder på webben – litet, effektivt och av hög kvalitet. Men när det är dags att redigera, retuschera eller arbeta med dessa bilder i designverktyg, blir AVIF ett hinder. Figma, Photoshop, Illustrator, Sketch och praktiskt taget alla professionella designverktyg förväntar sig att få PNG för arbete med transparens och förlustfri redigering. Att konvertera AVIF till PNG är bron mellan webben och den kreativa redigeringens värld.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'AVIF vs PNG: Leverans vs Redigering',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'AVIF utmärker sig som ett leveransformat: små filer, snabb laddning, stöd för alfakanal och exceptionell visuell kvalitet. Dess ekosystem av verktyg är dock begränsat. Den mesta designprogramvaran kan inte importera AVIF direkt, vilket avbryter kreativa arbetsflöden. Att försöka öppna en AVIF i Figma eller importera den som ett lager i Photoshop fungerar helt enkelt inte.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'PNG är det inhemska formatet för digital design. Med förlustfri kompression, fullt stöd för alfakanal och universell kompatibilitet med alla kreativa verktyg, är PNG det ultimata arbetsformatet. När du behöver skala, retuschera, exportera till flera format eller arbeta i lager, garanterar PNG att du inte förlorar några detaljer eller pixlar i processen.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: 'Jämförelse: Molnkonverterare vs Vår lokala arkitektur',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'Molnkonverterare',
|
|
98
|
+
description: 'Verktyg som laddar upp dina AVIF-filer till en fjärrserver för bearbetning.',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'Dina designbilder skickas till tredjepartsservrar',
|
|
103
|
+
'Väntetid på grund av nätverksfördröjning',
|
|
104
|
+
'Möjlig förlust eller ändring av alfakanalen',
|
|
105
|
+
'Begränsningar i storlek som försvårar batchkonvertering',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: 'Vår lokala arkitektur',
|
|
110
|
+
description: 'Direkt bearbetning i din webbläsare via Vanilla JS-teknik och Canvas API.',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'Alfakanalen bevaras med perfekt trohet',
|
|
115
|
+
'Omedelbar konvertering utan dataöverföring',
|
|
116
|
+
'Inga begränsningar för filer, storlek eller batchar',
|
|
117
|
+
'Total integritet för egenutvecklade designtillgångar',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: 'Hur den tekniska konverteringen med transparens fungerar',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'Moderna webbläsare avkodar AVIF nativt tack vare sina integrerade AV1-motorer. Vid laddning av filen avkodar webbläsaren den i minnet och bevarar all information från alfakanalen. Den avkodade bilden – inklusive dess transparens – ritas på ett HTML5 <code>Canvas</code>-element med rätt kompositionsläge för att bevara alfakanalen.',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'Till skillnad från export till JPG (som förstör transparens genom att fylla med vitt), bevarar export till PNG via <code>toBlob(\'image/png\')</code> alfakanalen helt och hållet. Resultatet är en PNG med förlustfri kompression som behåller varje pixel, varje semitransparens och varje detalj från den ursprungliga AVIF-bilden.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: 'Det obligatoriska försteget för alla designverktyg',
|
|
138
|
+
html: 'Konvertera dina AVIF till PNG innan du importerar dem till Figma, Photoshop, Illustrator eller något designverktyg. Dessa program läser inte AVIF direkt, men PNG fungerar nativt i alla, och bevarar transparens och kvalitet perfekt.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: 'Användningsområden: när du behöver AVIF konverterat till PNG',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'Importera i Figma, Sketch, Adobe XD eller andra verktyg för UI-design.',
|
|
150
|
+
'Redigera som lager i Photoshop, Affinity Photo eller GIMP och bevara transparens.',
|
|
151
|
+
'Använda som källa för att skapa ikoner eller sprites.',
|
|
152
|
+
'Skicka till kunder eller medarbetare som arbetar med standarddesignprogram.',
|
|
153
|
+
'Arkivera bilder med transparens i ett förlustfritt redigeringsformat.',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Slutsats: Bron mellan webb och design',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'AVIF och PNG är perfekta partners i ett modernt arbetsflöde: AVIF för effektiv leverans på webben, PNG för redigering och samarbete i designverktyg. Med vår konverterare är övergången från den ena till den andra omedelbar, privat och bevarar varje detalj – exakt vad du behöver när dina visuella tillgångar spelar roll.',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: AvifAPngLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'sv', faq, howTo }),
|
|
178
|
+
};
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
2
|
+
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
3
|
+
import type { AvifAPngLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'avif-png-donusturucu';
|
|
6
|
+
const title = 'AVIF\'i Online PNG\'ye Dönüştür';
|
|
7
|
+
const description =
|
|
8
|
+
'Şeffaflığı koruyarak AVIF görüntülerini PNG\'ye dönüştürün. Dosya yüklemeden. Tarayıcınızda yerel işleme. Ücretsiz ve sınırsız.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'AVIF dosyalarını buraya sürükleyin...',
|
|
12
|
+
convertText: 'Anında PNG\'ye dönüştürmek için',
|
|
13
|
+
selectFiles: 'Dosyaları seçin',
|
|
14
|
+
processedFiles: 'İşlenen dosyalar',
|
|
15
|
+
downloadAll: 'Tümünü İndir (.zip)',
|
|
16
|
+
pending: 'Bekliyor',
|
|
17
|
+
bibliographyTitle: 'Bibliyografik Referanslar',
|
|
18
|
+
faqTitle: 'Sıkça Sorulan Sorular',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: AvifAPngLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Neden AVIF\'i PNG\'ye dönüştürmeliyim?',
|
|
24
|
+
answer:
|
|
25
|
+
'AVIF sıkıştırma için harikadır ancak eski tarayıcılarda ve klasik düzenleyicilerde uyumluluğu sınırlıdır. AVIF\'i PNG\'ye dönüştürerek, dosyanızın orijinal şeffaflığını korumasını ve tüm uygulamaların açabilmesini sağlarsınız.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Orijinal AVIF dosyasının şeffaflıkları korunuyor mu?',
|
|
29
|
+
answer:
|
|
30
|
+
'Evet. Şeffaf arka planı kaldıran JPG\'nin aksine, PNG\'ye aktarırken dönüştürücümüz alfa kanalını olduğu gibi korur.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Resimlerimin internete yüklenmediği doğru mu?',
|
|
34
|
+
answer:
|
|
35
|
+
'Kesinlikle doğru. Dönüştürücümüz, dahili JavaScript motorunu kullanarak cihazınızda %100 yerel olarak çalışır.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: AvifAPngLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'AVIF dosyalarınızı ekleyin',
|
|
42
|
+
text: 'Doğrudan belirlenen alana sürükleyebilir veya bilgisayarınızdaki klasörlere göz atmak için düğmeyi kullanabilirsiniz.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Anında işleme',
|
|
46
|
+
text: 'HTML5 işlemcisinin görüntüyü işlemesine izin verin; format mikrosaniyeler içinde otomatik olarak PNG\'ye dönüşecektir.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'PNG\'lerinizi alın',
|
|
50
|
+
text: 'Dönüştürülen görüntüleri tek tek indirin veya ZIP düğmesini kullanarak toplu bir blok indirin.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: AvifAPngLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'Alliance for Open Media: AVIF Formatı',
|
|
57
|
+
url: 'https://aomediacodec.github.io/av1-avif/',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'W3C - Portable Network Graphics (PNG) Spesifikasyonu',
|
|
61
|
+
url: 'https://www.w3.org/TR/png/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: AvifAPngLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'AVIF - PNG Dönüştürücü: Web Teslimatından Profesyonel Düzenlemeye',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'AVIF, web üzerinde resim sunmak için ideal formattır: küçük, verimli ve yüksek kaliteli. Ancak bu görüntüleri tasarım araçlarında düzenleme, rötuş yapma veya bu görüntülerle çalışma zamanı geldiğinde AVIF bir engel haline gelir. Figma, Photoshop, Illustrator, Sketch ve hemen hemen her profesyonel tasarım aracı, şeffaflık ve kayıpsız düzenleme ile çalışmak için PNG almayı bekler. AVIF\'i PNG\'ye dönüştürmek, web teslimatı dünyası ile yaratıcı düzenleme dünyası arasındaki köprüdür.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'AVIF vs PNG: Teslimat vs Düzenleme',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'AVIF bir teslimat formatı olarak öne çıkar: küçük dosyalar, hızlı yükleme, alfa kanalı desteği ve olağanüstü görsel kalite. Ancak araç ekosistemi sınırlıdır. Çoğu tasarım yazılımı AVIF\'i doğrudan içe aktaramaz ve bu da yaratıcı iş akışlarını kesintiye uğratır. Figma\'da bir AVIF açmaya çalışmak veya Photoshop\'ta katman olarak içe aktarmak basitçe çalışmaz.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'PNG, dijital tasarımın yerel formatıdır. Kayıpsız sıkıştırma, tam alfa kanalı desteği ve tüm yaratıcı araçlarla evrensel uyumluluğu ile PNG, mükemmel bir çalışma formatıdır. Ölçeklendirmeniz, rötuş yapmanız, birden fazla formata aktarmanız veya katmanlar halinde çalışmanız gerektiğinde PNG, bu süreçte hiçbir ayrıntıyı veya pikseli kaybetmeyeceğinizi garanti eder.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: 'Karşılaştırma: Bulut Dönüştürücüler ve Yerel Mimarimiz',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'Bulut Dönüştürücüler',
|
|
98
|
+
description: 'AVIF dosyalarınızı işlemek için uzak bir sunucuya yükleyen araçlar.',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'Tasarım resimleriniz üçüncü taraf sunuculara gider',
|
|
103
|
+
'Ağ gecikmesi nedeniyle bekleme süresi',
|
|
104
|
+
'Alfa kanalının olası kaybı veya bozulması',
|
|
105
|
+
'Toplu dönüştürmeyi zorlaştıran boyut sınırları',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: 'Yerel Mimarimiz',
|
|
110
|
+
description: 'Vanilla JS teknolojisi ve Canvas API aracılığıyla doğrudan tarayıcınızda işleme.',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'Alfa kanalı mükemmel sadakatle korunur',
|
|
115
|
+
'Veri aktarımı olmadan anında dönüştürme',
|
|
116
|
+
'Dosya, boyut veya toplu iş sınırı yok',
|
|
117
|
+
'Telifli tasarım varlıkları için tam gizlilik',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: 'Şeffaflıklarla teknik dönüşüm nasıl çalışır?',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'Modern tarayıcılar, entegre AV1 motorları sayesinde AVIF\'i yerel olarak çözer. Dosya yüklendiğinde, tarayıcı tüm alfa kanalı bilgilerini koruyarak bellekte çözer. Şeffaflıkları da dahil olmak üzere kodu çözülmüş görüntü, alfa kanalını korumak için doğru kompozisyon moduyla bir HTML5 <code>Canvas</code> öğesi üzerine çizilir.',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'Beyazla doldurarak şeffaflıkları yok eden JPG\'ye aktarmanın aksine, <code>toBlob(\'image/png\')</code> aracılığıyla PNG\'ye aktarma, alfa kanalını tamamen korur. Sonuç, orijinal AVIF\'in her pikselini, her yarı şeffaflığını ve her ayrıntısını koruyan kayıpsız sıkıştırmaya sahip bir PNG\'dir.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: 'Herhangi bir tasarım aracı için zorunlu ön adım',
|
|
138
|
+
html: 'AVIF\'lerinizi Figma, Photoshop, Illustrator veya herhangi bir tasarım aracına aktarmadan önce PNG\'ye dönüştürün. Bu uygulamalar AVIF\'i doğrudan okumaz, ancak PNG hepsinde yerel olarak çalışır, şeffaflıkları ve kaliteyi mükemmel şekilde korur.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: 'Kullanım durumları: AVIF\'in PNG\'ye dönüştürülmesine ne zaman ihtiyacınız olur?',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'Figma, Sketch, Adobe XD veya diğer UI tasarım araçlarına aktarma.',
|
|
150
|
+
'Şeffaflığı koruyarak Photoshop, Affinity Photo veya GIMP\'te katman olarak düzenleme.',
|
|
151
|
+
'Simge veya sprite oluşturma için kaynak olarak kullanma.',
|
|
152
|
+
'Standart tasarım yazılımıyla çalışan müşterilere veya iş arkadaşlarına gönderme.',
|
|
153
|
+
'Şeffaflıklı görüntülerin kayıpsız düzenleme formatında arşivlenmesi.',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Sonuç: Web ve tasarım arasındaki köprü',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'AVIF ve PNG modern bir iş akışında mükemmel ortaklardır: Web\'e verimli teslimat için AVIF, tasarım araçlarında düzenleme ve iş birliği için PNG. Dönüştürücümüzle, birinden diğerine geçiş anındadır, özeldir ve her ayrıntıyı korur; görsel varlıklarınız önemli olduğunda tam da ihtiyacınız olan şey budur.',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: AvifAPngLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'tr', faq, howTo }),
|
|
178
|
+
};
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
2
|
+
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
3
|
+
import type { AvifAPngLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'avif-to-png-converter';
|
|
6
|
+
const title = '在线将 AVIF 转换为 PNG';
|
|
7
|
+
const description =
|
|
8
|
+
'在保持透明度的同时,将 AVIF 图像转换为 PNG。无需上传文件。在您的浏览器中完成本地处理。免费且无限制。';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: '拖拽 AVIF 文件...',
|
|
12
|
+
convertText: '立即将其转换为 PNG',
|
|
13
|
+
selectFiles: '选择文件',
|
|
14
|
+
processedFiles: '已处理文件',
|
|
15
|
+
downloadAll: '下载全部 (.zip)',
|
|
16
|
+
pending: '等待中',
|
|
17
|
+
bibliographyTitle: '参考文献',
|
|
18
|
+
faqTitle: '常见问题',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: AvifAPngLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: '为什么要将 AVIF 转换为 PNG?',
|
|
24
|
+
answer:
|
|
25
|
+
'AVIF 格式虽然压缩率极高,但在旧版本浏览器和经典编辑器中的兼容性有限。通过将 AVIF 转换为 PNG,您可以确保文件保留原始透明度,并且所有应用程序都能打开它。',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: '原始 AVIF 文件的透明度会被保留吗?',
|
|
29
|
+
answer:
|
|
30
|
+
'是的。与 JPG 会删除透明背景不同,在导出为 PNG 时,我们的转换器会完整保留 Alpha 通道。',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: '我的图像真的不会被上传到互联网吗?',
|
|
34
|
+
answer:
|
|
35
|
+
'绝对是真的。我们的转换器使用内部 JavaScript 引擎在您的设备上 100% 本地运行。',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: AvifAPngLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: '添加您的 AVIF 文件',
|
|
42
|
+
text: '您可以将其直接拖到指定区域,或使用按钮浏览计算机上的文件夹。',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: '即时处理',
|
|
46
|
+
text: '让 HTML5 处理器渲染图像;格式将在微秒内自动切换为 PNG。',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: '获取您的 PNG 文件',
|
|
50
|
+
text: '逐个下载转换后的图像,或通过 ZIP 按钮下载整个压缩包。',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: AvifAPngLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'Alliance for Open Media: AVIF 格式',
|
|
57
|
+
url: 'https://aomediacodec.github.io/av1-avif/',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'W3C - Portable Network Graphics (PNG) 规范',
|
|
61
|
+
url: 'https://www.w3.org/TR/png/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: AvifAPngLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'AVIF 转 PNG 转换器:从网页分发到专业编辑',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'AVIF 是在网页上分发图像的理想格式——小巧、高效且高质量。但是,当需要对这些图像进行编辑、修饰或在设计工具中处理时,AVIF 就成了障碍。Figma、Photoshop、Illustrator、Sketch 以及几乎所有的专业设计工具都期望接收 PNG 来进行透明度处理和无损编辑。将 AVIF 转换为 PNG 是连接网页分发世界与创意编辑世界之间的桥梁。',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'AVIF vs PNG:分发 vs 编辑',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'AVIF 作为分发格式脱颖而出:文件小、加载快、支持 Alpha 通道且视觉质量出色。然而,其工具生态系统有限。大多数设计软件无法直接导入 AVIF,这中断了创意工作流。尝试在 Figma 中打开 AVIF 或将其作为图层导入 Photoshop 根本行不通。',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'PNG 是数字设计的原生格式。凭借无损压缩、完整的 Alpha 通道支持以及与所有创意工具的通用兼容性,PNG 是首选的工作格式。当您需要缩放、修饰、导出为多种格式或进行图层化工作时,PNG 保证您在过程中不会丢失任何细节或像素。',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: '对比:云端转换器 vs 我们的本地架构',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: '云端转换器',
|
|
98
|
+
description: '将您的 AVIF 文件上传到远程服务器进行处理的工具。',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'您的设计图像传输到了第三方服务器',
|
|
103
|
+
'由于网络延迟带来的等待时间',
|
|
104
|
+
'Alpha 通道可能丢失或改变',
|
|
105
|
+
'大小限制导致批量转换困难',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: '我们的本地架构',
|
|
110
|
+
description: '通过 Vanilla JS 技术和 Canvas API 在浏览器中直接处理。',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'完美还原并保留 Alpha 通道',
|
|
115
|
+
'即时转换,无数据传输',
|
|
116
|
+
'不设文件数量、大小或批量限制',
|
|
117
|
+
'为专有设计资产提供完全隐私保护',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: '带透明度的技术转换如何运行',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: '现代浏览器凭借集成的 AV1 引擎原生支持 AVIF 解码。加载文件时,浏览器会在内存中对其进行解码,并保留所有 Alpha 通道信息。解码后的图像(包括其透明度)会以正确的合成模式绘制在 HTML5 <code>Canvas</code> 元素上,以保持 Alpha 通道。',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: '与导出为 JPG(会通过填充白色来破坏透明度)不同,通过 <code>toBlob(\'image/png\')</code> 导出为 PNG 会完整保留 Alpha 通道。结果是一个具有无损压缩的 PNG,它保留了原始 AVIF 的每一个像素、每一处半透明和每一处细微差别。',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: '任何设计工具必备的前提步骤',
|
|
138
|
+
html: '在将您的 AVIF 导入 Figma、Photoshop、Illustrator 或任何设计工具之前,请先将其转换为 PNG。这些应用程序无法直接读取 AVIF,但 PNG 在所有这些工具中都能原生运行,且能完美保留透明度和质量。',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: '使用场景:您何时需要将 AVIF 转换为 PNG',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'导入到 Figma、Sketch、Adobe XD 或其他 UI 设计工具。',
|
|
150
|
+
'在 Photoshop、Affinity Photo 或 GIMP 中作为图层进行编辑,并保持透明度。',
|
|
151
|
+
'用作生成图标或精灵图(sprites)的源文件。',
|
|
152
|
+
'发送给使用标准设计软件的客户或合作者。',
|
|
153
|
+
'以无损编辑格式存档带有透明度的图像。',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: '结论:连接网页与设计的桥梁',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'AVIF 和 PNG 是现代工作流中的完美拍档:AVIF 用于高效网页分发,PNG 用于设计工具内的编辑和协作。使用我们的转换器,两者之间的转换是即时的、私密的,且能保留每一个细节——这正是当您的视觉资产至关重要时所需要的。',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: AvifAPngLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'zh', faq, howTo }),
|
|
178
|
+
};
|
|
@@ -13,9 +13,21 @@ export const avifAPng: ConvertersToolEntry<ImageConverterUI> = {
|
|
|
13
13
|
fg: 'mdi:file-export',
|
|
14
14
|
},
|
|
15
15
|
i18n: {
|
|
16
|
-
|
|
16
|
+
de: () => import('./i18n/de').then((m) => m.content),
|
|
17
17
|
en: () => import('./i18n/en').then((m) => m.content),
|
|
18
|
+
es: () => import('./i18n/es').then((m) => m.content),
|
|
18
19
|
fr: () => import('./i18n/fr').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
|
|