@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,178 @@
|
|
|
1
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
2
|
+
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
3
|
+
import type { SvgAJpgLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'svg-to-jpg-converter';
|
|
6
|
+
const title = 'SVGをJPGにオンラインで無料で変換しましょう';
|
|
7
|
+
const description =
|
|
8
|
+
'ブラウザでSVGベクトルファイルをJPGに変換します。2倍の高解像度レンダリング。ファイルのアップロード不要。無料かつ100%プライベート。';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'SVGファイルをドラッグ...',
|
|
12
|
+
convertText: '即座にJPGに変換します',
|
|
13
|
+
selectFiles: 'ファイルを選択',
|
|
14
|
+
processedFiles: '処理済みファイル',
|
|
15
|
+
downloadAll: 'すべてダウンロード (.zip)',
|
|
16
|
+
pending: '保留中',
|
|
17
|
+
bibliographyTitle: '参考文献',
|
|
18
|
+
faqTitle: 'よくある質問',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: SvgAJpgLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'なぜSVGをJPGに変換する必要があるのですか?',
|
|
24
|
+
answer:
|
|
25
|
+
'JPGはあらゆる種類のデバイスで最大限の互換性を提供します。SVGをJPGに変換することは、レンダリングの問題なしに誰もがデザインを閲覧できるようにする最良の方法です。',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'SVGの透明度はどうなりますか?',
|
|
29
|
+
answer:
|
|
30
|
+
'透明度をサポートしていないJPGに変換する際、ベクトル構成に不透明な白い背景が自動的に追加されます。',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: '結果のJPGの解像度はどのくらいですか?',
|
|
34
|
+
answer:
|
|
35
|
+
'このツールは、Retina画面やプロ用途に適した高解像度を保証するために、SVGを2倍(2x)のスケールでレンダリングします。',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: SvgAJpgLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'ベクトルファイルを挿入',
|
|
42
|
+
text: 'エクスポートリストを準備するために、上部のエリアにSVGファイルをドラッグ&ドロップしてください。',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'JPGへのラスタライズ',
|
|
46
|
+
text: 'ツールがベクトルを高解像度のピクセルに変換し、即座にJPGを生成します。',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: '結果をダウンロード',
|
|
50
|
+
text: 'JPGファイルを個別に、またはZIPパッケージとして取得してください。',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: SvgAJpgLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'W3C SVG仕様',
|
|
57
|
+
url: 'https://www.w3.org/TR/SVG/',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'JPEG標準の概要',
|
|
61
|
+
url: 'https://jpeg.org/jpeg/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: SvgAJpgLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'SVG to JPG 変換機:ベクトルをあらゆるプラットフォームへ',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: '<strong>SVG</strong>形式は、軽量、スケーラブル、編集可能という現代のウェブの母国語のような存在です。しかし、ベクトルを全く理解しないプラットフォームも存在します。ソーシャルメディア、メールクライアント、Word文書、印刷アプリケーション、そして現実世界の大多数のソフトウェアはラスタライズされた画像で動作します。<strong>JPG</strong>は、例外なくどこでも受け入れられ、プラグインも追加の変換も不要な、普遍的な共通項です。',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'SVG vs JPG:ベクトルを写真にする必要があるとき',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'SVGは画像を数学的な命令として保存します。このベクトルの性質はウェブには最適ですが、アナログの世界やレガシーソフトウェアには見えない場合があります。メールで送信されたSVGファイルは、受信者のクライアントで理解不能なXMLテキストとして表示されることがあります。Word文書に添付されたSVGは、古いバージョンのOfficeでは全くレンダリングされないこともあります。',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'JPGは、各画像をJPEGアルゴリズムによって圧縮された色情報を持つピクセルマトリックスに変換します。アルファチャネルをサポートしていないため、変換機は背景を白で自動的にマージします。代わりに、古い携帯電話、プリンター、スマートTV、20年前の編集アプリなど、 <em>地球上のあらゆるデバイス</em> で開くことができるファイルが得られます。これは最も広く使われている形式であり、多くの文脈において最も価値のある形式でもあります。',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: '比較:ローカル変換 vs クラウド変換',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'クラウド変換機',
|
|
98
|
+
description: 'リモートサーバーにファイルをアップロードするツールです。',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'ユーザーのSVGコード(独自のデザインデータを含む)が外部サーバーへ送信される',
|
|
103
|
+
'フォントやグラデーションのレンダリングが一貫しない',
|
|
104
|
+
'変換ごとにインターネット接続が必要',
|
|
105
|
+
'JPGの出力品質を常に構成できるとは限らない',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: 'ローカルアーキテクチャ',
|
|
110
|
+
description: 'Vanilla JS技術を使用し、ユーザーのハードウェア上で直接処理します。',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'ブラウザを離れるデータは0バイト',
|
|
115
|
+
'ブラウザのネイティブエンジンを使用した忠実なレンデリング',
|
|
116
|
+
'最大の鮮明度を実現する2倍解像度のJPG',
|
|
117
|
+
'JPG標準に従い、白い背景が自動的に適用される',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: '技術的な仕組み',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'SVGファイルがブラウザの <strong>Image</strong> 要素に読み込まれ、この要素はXMLを解釈するために独自のベクトルレンダリングエンジンを使用します。視覚的な結果は、出力解像度を最適化するために2倍のスケールで、あらかじめ白い背景を塗りつぶした(JPGが透明度をサポートしていないために必要) <strong>HTML5 Canvas</strong> 上に描画されます。',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: ' <code>toDataURL(\'image/jpeg\', 0.92)</code> メソッドが、キャンバスのピクセルを高画質なJPGファイルに変換します。SVGの色は、JPEG圧縮の色空間変換により、わずかな変化が生じることがあります。そのため、色再現が重要なプロフェッショナルな印刷作業に使用する前には、結果をプレビューすることをお勧めします。',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: '印刷用途へのヒント',
|
|
138
|
+
html: 'SVGの背景やグラデーションは、JPEG圧縮時のカラープロファイルの違いにより、JPGではわずかに異なって見えることがあります。正確なブランドカラーの精度が重要な印刷所へ送る前や、印刷用マーケティング資料に使用する前には、常に結果をプレビューしてください。',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: '活用事例と互換性',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'Facebook、Twitter、LinkedInでのSVGロゴやイラストの共有。',
|
|
150
|
+
'OutlookやGmailを介したメールへのベクトルグラフィックスの添付。',
|
|
151
|
+
'Word文書、Excel、プレゼン資料へのSVGデザインの挿入。',
|
|
152
|
+
'SVGをサポートしていないオンラインショップへの商品画像の掲載。',
|
|
153
|
+
'オンデマンド印刷サービス用のファイル準備。',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: '結論',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: '現実の世界は依然としてピクセルで会話をしています。このツールは、ユーザー独自のデザインをブラウザの外に出すことなく、数秒のうちに高解像度レンダリングによってSVGベクトルを普遍的なJPG言語へと翻訳します。',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: SvgAJpgLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'ja', 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 { SvgAJpgLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'svg-to-jpg-converter';
|
|
6
|
+
const title = 'SVG를 JPG로 온라인에서 무료로 변환하세요';
|
|
7
|
+
const description =
|
|
8
|
+
'브라우저에서 SVG 벡터 파일을 JPG로 변환하세요. 2배 고해상도 렌더링. 파일 업로드 없음. 무료 및 100% 개인 정보 보호.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'SVG 파일을 드래그하세요...',
|
|
12
|
+
convertText: '즉시 JPG로 변환하려면',
|
|
13
|
+
selectFiles: '파일 선택',
|
|
14
|
+
processedFiles: '처리된 파일',
|
|
15
|
+
downloadAll: '모두 다운로드 (.zip)',
|
|
16
|
+
pending: '대기 중',
|
|
17
|
+
bibliographyTitle: '참고 문헌',
|
|
18
|
+
faqTitle: '자주 묻는 질문',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: SvgAJpgLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: '왜 SVG를 JPG로 변환해야 하나요?',
|
|
24
|
+
answer:
|
|
25
|
+
'JPG는 모든 유형의 기기에서 최대의 호환성을 제공합니다. SVG를 JPG로 변환하는 것은 렌더링 문제 없이 모든 사람이 디자인을 볼 수 있도록 보장하는 가장 좋은 방법입니다.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'SVG 투명도는 어떻게 되나요?',
|
|
29
|
+
answer:
|
|
30
|
+
'투명도를 지원하지 않는 JPG로 변환할 때 벡터 구성에 불투명한 흰색 배경이 자동으로 추가됩니다.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: '결과물인 JPG의 해상도는 어느 정도인가요?',
|
|
34
|
+
answer:
|
|
35
|
+
'이 도구는 Retina 화면 및 전문가용에 적합한 고해상도를 보장하기 위해 SVG를 2배(2x) 배율로 렌더링합니다.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: SvgAJpgLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: '벡터 파일 넣기',
|
|
42
|
+
text: '내보내기 목록을 준비하려면 상단 영역에 SVG 파일을 드래그하여 떨어뜨리세요.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'JPG로 래스터화',
|
|
46
|
+
text: '이 도구는 벡터를 고해상도 픽셀로 변환하고 즉시 JPG를 생성합니다.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: '결과 다운로드',
|
|
50
|
+
text: 'JPG 파일을 개별적으로 또는 ZIP 패키지로 다운로드하세요.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: SvgAJpgLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'W3C SVG 사양',
|
|
57
|
+
url: 'https://www.w3.org/TR/SVG/',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'JPEG 표준 개요',
|
|
61
|
+
url: 'https://jpeg.org/jpeg/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: SvgAJpgLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'SVG to JPG 변환기: 벡터를 모든 플랫폼으로 가져가세요',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: '<strong>SVG</strong> 형식은 가볍고 확장 가능하며 편집이 쉬운 현대 웹의 모국어와 같습니다. 하지만 벡터를 전혀 이해하지 못하는 플랫폼들도 존재합니다. 소셜 미디어, 이메일 클라이언트, Word 문서, 인쇄 애플리케이션 및 현실 세계의 대다수 소프트웨어는 래스터화된 이미지로 작동합니다. <strong>JPG</strong>는 예외 없이 어디서나 허용되며 플러그인이나 추가 변환이 필요 없는 보편적인 형동 분모입니다.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'SVG vs JPG: 벡터가 사진이 되어야 할 때',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'SVG는 이미지를 수학적 명령어로 저장합니다. 이러한 벡터의 속성은 웹에는 완벽하지만 아날로그 세계나 레거시 소프트웨어에는 보이지 않을 수 있습니다. 이메일로 전송된 SVG 파일은 수신자의 환경에서 이해할 수 없는 XML 텍스트로 나타날 수 있습니다. Word 문서에 첨부된 SVG는 이전 버전의 Office에서 전혀 렌더링되지 않을 수도 있습니다.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'JPG는 각 이미지를 JPEG 알고리즘에 의해 압축된 색상 정보를 가진 픽셀 매트릭스로 변환합니다. 알파 채널을 지원하지 않기 때문에 변환기는 배경을 흰색으로 자동 병합합니다. 대신 오래된 휴대폰, 프린터, 스마트 TV, 20년 전의 편집 앱 등 <em>지구상의 모든 기기</em>에서 열 수 있는 파일을 얻게 됩니다. 이는 가장 널리 쓰이는 형식이며 많은 상황에서 가장 가치 있는 형식이기도 합니다.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: '비교: 로컬 변환 vs 클라우드 변환',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: '클라우드 변환기',
|
|
98
|
+
description: '원격 서버로 파일을 업로드하는 도구입니다.',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'사용자의 SVG 코드(독점 디자인 데이터 포함)가 외부 서버로 전송됨',
|
|
103
|
+
'글꼴 및 그라데이션 렌더링이 일관되지 않음',
|
|
104
|
+
'모든 변환 시 인터넷 연결이 필요함',
|
|
105
|
+
'JPG 출력 품질을 항상 구성할 수 있는 것은 아님',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: '사용자 환경 로컬 아키텍처',
|
|
110
|
+
description: 'Vanilla JS 기술을 사용하여 하드웨어에서 직접 처리합니다.',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'브라우저를 떠나는 데이터 0바이트',
|
|
115
|
+
'브라우저의 기본 엔진을 사용한 충실한 렌더링',
|
|
116
|
+
'최대의 선명도를 위한 2배 해상도 JPG',
|
|
117
|
+
'JPG 표준에 따라 흰색 배경이 자동으로 적용됨',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: '기술적 작동 원리',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'SVG 파일이 브라우저의 <strong>Image</strong> 요소에 로드되며, 이 요소는 XML을 해석하기 위해 자체 벡터 렌더링 엔진을 사용합니다. 시각적 결과물은 출력 해상도를 최적화하기 위해 2배 배율로, 미리 흰색 배경을 채운(JPG가 투명도를 지원하지 않기 때문에 필요) <strong>HTML5 Canvas</strong> 위에 그려집니다.',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: '<code>toDataURL(\'image/jpeg\', 0.92)</code> 메서드는 캔버스 픽셀을 고품질 JPG 파일로 변환합니다. SVG 색상은 JPEG 압축의 색 공간 변환으로 인해 약간의 변화가 생길 수 있습니다. 따라서 색 재현이 중요한 전문적인 인쇄 작업에 사용하기 전에는 결과를 미리 확인하는 것이 좋습니다.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: '인쇄용 팁',
|
|
138
|
+
html: 'SVG 배경과 그라데이션은 JPEG 압축 시의 색상 프로필 차이로 인해 JPG에서 약간 다르게 보일 수 있습니다. 정확한 브랜드 색상 정밀도가 중요한 인쇄소로 보내거나 인쇄용 마케팅 자료에 사용하기 전에는 항상 결과를 미리 확인하세요.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: '활용 사례 및 호환성',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'Facebook, Twitter 또는 LinkedIn에서 SVG 로고 및 일러스트레이션 공유.',
|
|
150
|
+
'Outlook 또는 Gmail을 통해 이메일에 벡터 그래픽 첨부.',
|
|
151
|
+
'Word 문서, Excel 또는 프레젠테이션에 SVG 디자인 삽입.',
|
|
152
|
+
'SVG를 지원하지 않는 온라인 쇼핑몰에 제품 이미지 게시.',
|
|
153
|
+
'주문형 인쇄(POD) 서비스를 위한 파일 준비.',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: '결론',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: '현실 세계는 여전히 픽셀로 소통합니다. 이 도구는 사용자의 독점 디자인을 브라우저 밖으로 내보내지 않고도 몇 초 안에 고해상도 렌더링을 통해 SVG 벡터를 보편적인 JPG 언어로 번역해 줍니다.',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: SvgAJpgLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'ko', 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 { SvgAJpgLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'svg-naar-jpg-converter';
|
|
6
|
+
const title = 'Converteer SVG naar JPG Online en Gratis';
|
|
7
|
+
const description =
|
|
8
|
+
'Converteer SVG-vectorbestanden naar JPG in je browser. 2x hoge resolutie rendering. Geen bestandsuploads. Gratis en 100% privé.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'Sleep SVG-bestanden...',
|
|
12
|
+
convertText: 'Om ze direct naar JPG 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: SvgAJpgLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Waarom SVG naar JPG converteren?',
|
|
24
|
+
answer:
|
|
25
|
+
'JPG biedt maximale compatibiliteit op alle soorten apparaten; het converteren van SVG naar JPG is de beste manier om ervoor te zorgen dat iedereen je ontwerp kan bekijken zonder renderingproblemen.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Wat gebeurt er met de SVG-transparantie?',
|
|
29
|
+
answer:
|
|
30
|
+
'Bij het converteren naar JPG (dat geen transparantie ondersteunt), wordt automatisch een ondoorzichtige witte achtergrond aan je vectorcompositie toegevoegd.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Welke resolutie heeft de resulterende JPG?',
|
|
34
|
+
answer:
|
|
35
|
+
'De tool rendert de SVG op dubbele schaal (2x) om een hoge resolutie te garanderen die geschikt is voor Retina-schermen en professioneel gebruik.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: SvgAJpgLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'Voeg je vectorbestanden toe',
|
|
42
|
+
text: 'Sleep je SVG-bestanden naar het bovenste gedeelte om de exportlijst voor te bereiden.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Rasterisatie naar JPG',
|
|
46
|
+
text: 'De tool zet de vectoren om naar pixels met een hoge resolutie en genereert direct je JPG.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'Download de resultaten',
|
|
50
|
+
text: 'Download je JPG-bestanden één voor één of als een ZIP-pakket.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: SvgAJpgLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'W3C SVG Specificatie',
|
|
57
|
+
url: 'https://www.w3.org/TR/SVG/',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'JPEG Standaard Overzicht',
|
|
61
|
+
url: 'https://jpeg.org/jpeg/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: SvgAJpgLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'SVG naar JPG Converter: Breng je vectoren naar elk platform',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'Het <strong>SVG</strong>-formaat is de moedertaal van het moderne web: lichtgewicht, schaalbaar, bewerkbaar. Maar er zijn hele platforms die vectoren simpelweg niet begrijpen. Sociale media, e-mailclients, Word-documenten, printtoepassingen en de overgrote meerderheid van software in de echte wereld werken met gerasterde afbeeldingen. <strong>JPG</strong> is de universele gemene deler: overal geaccepteerd, zonder uitzonderingen, zonder plug-ins en zonder dat er extra conversies nodig zijn.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'SVG vs JPG: Wanneer de vector een foto moet worden',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'SVG slaat de afbeelding op als wiskundige instructies. Dit vectorkarakter maakt het perfect voor het web, maar onzichtbaar voor de analoge wereld en verouderde software. Een SVG-bestand dat per e-mail wordt verzonden, kan als onbegrijpelijke XML-tekst verschijnen in de client van de ontvanger. Een SVG die is bijgevoegd bij een Word-document wordt in oudere versies van Office mogelijk helemaal niet gerenderd.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'JPG zet elke afbeelding om in een pixelmatrix met kleurinformatie die gecomprimeerd is door het JPEG-algoritme. Omdat het geen alfakanaal ondersteunt, voegt de converter de achtergrond automatisch samen met effen wit. In ruil daarvoor krijg je een bestand dat op <em>elk apparaat op de planeet</em> kan worden geopend: oude mobiele telefoons, printers, smart-tv\'s, bewerkings-apps van twintig jaar geleden. Het is het formaat van de kleinste gemene deler, en in veel contexten het meest waardevolle.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: 'Vergelijking: Lokale vs Cloud-conversie',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'Cloud Converters',
|
|
98
|
+
description: 'Tools die je bestanden uploaden naar een externe server.',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'Je SVG-code (met bedrijfseigen ontwerpgegevens) reist naar externe servers',
|
|
103
|
+
'Inconsistente rendering van lettertypen en verlopen',
|
|
104
|
+
'Internetverbinding nodig voor elke conversie',
|
|
105
|
+
'JPG-uitvoerkwaliteit niet altijd configureerbaar',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: 'Onze Lokale Architectuur',
|
|
110
|
+
description: 'Directe verwerking op je eigen hardware met Vanilla JS-technologie.',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'Geen enkele byte van je SVG verlaat de browser',
|
|
115
|
+
'Getrouwe rendering met de eigen browser-engine',
|
|
116
|
+
'2x hoge resolutie JPG voor maximale scherpte',
|
|
117
|
+
'Witte achtergrond automatisch toegepast volgens JPG-standaard',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: 'Hoe het technisch werkt',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'Het SVG-bestand wordt geladen in een browser <strong>Image</strong>-element, dat zijn eigen vector-rendering-engine gebruikt om de XML te interpreteren. Het visuele resultaat wordt getekend op een <strong>HTML5 Canvas</strong> met een voorafgaande witte achtergrondvulling (vereist omdat JPG geen transparantie ondersteunt) op dubbele schaal om de uitvoerresolutie te maximaliseren.',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'De methode <code>toDataURL(\'image/jpeg\', 0.92)</code> zet de canvaspixels om naar een JPG-bestand van hoge kwaliteit. SVG-kleuren kunnen lichte variaties vertonen als gevolg van kleurruimteconversie in JPEG-compressie. Het is daarom raadzaam om het resultaat te bekijken voordat je het gebruikt in professionele printopdrachten waarbij chromatische getrouwheid cruciaal is.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: 'Tip voor printgebruik',
|
|
138
|
+
html: 'SVG-achtergronden en verlopen kunnen er in JPG iets anders uitzien door kleurprofielverschillen in JPEG-compressie. Bekijk altijd het resultaat voordat je het naar een printer stuurt of gebruikt in gedrukt marketingmateriaal waarbij een exacte nauwkeurigheid van de merkkleuren belangrijk is.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: 'Toepassingen en compatibiliteit',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'SVG-logo\'s en illustraties delen op Facebook, Twitter of LinkedIn.',
|
|
150
|
+
'Vektorgrafieken bijvoegen in e-mails via Outlook of Gmail.',
|
|
151
|
+
'SVG-ontwerpen invoegen in Word-documenten, Excel of presentaties.',
|
|
152
|
+
'Productafbeeldingen publiceren op webshops die geen SVG ondersteunen.',
|
|
153
|
+
'Bestanden voorbereiden voor print-on-demand diensten.',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Conclusie',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'De echte wereld spreekt nog steeds in pixels. Deze tool vertaalt je SVG-vectoren in enkele seconden naar de universele taal van JPG, met rendering in hoge resolutie en zonder dat je ontwerpen ooit je browser verlaten.',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: SvgAJpgLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'nl', faq, howTo }),
|
|
178
|
+
};
|