@jjlmoya/utils-converters 1.7.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/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 { BmpAJpgLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'konverter-bmp-ke-jpg';
|
|
6
|
+
const title = 'Ubah BMP ke JPG Online';
|
|
7
|
+
const description =
|
|
8
|
+
'Ubah gambar BMP ke JPG di browser Anda. Kurangi ukuran secara drastis. Tanpa mengunggah file ke server. Gratis dan 100% pribadi.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'Seret file BMP...',
|
|
12
|
+
convertText: 'Untuk mengubahnya ke JPG secara instan',
|
|
13
|
+
selectFiles: 'Pilih file',
|
|
14
|
+
processedFiles: 'File yang diproses',
|
|
15
|
+
downloadAll: 'Unduh Semua (.zip)',
|
|
16
|
+
pending: 'Tertunda',
|
|
17
|
+
bibliographyTitle: 'Referensi Bibliografi',
|
|
18
|
+
faqTitle: 'Pertanyaan Umum',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: BmpAJpgLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Mengapa mengubah BMP ke JPG?',
|
|
24
|
+
answer:
|
|
25
|
+
'Format BMP tidak mengompresi data, menghasilkan file yang sangat besar. Format JPG mengompresi gambar secara drastis sambil mempertahankan kualitas visual yang sangat baik untuk web dan distribusi.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Apakah aman untuk mengubah gambar saya di sini?',
|
|
29
|
+
answer:
|
|
30
|
+
'100% aman. Privasi Anda terjamin karena pemrosesan dilakukan sepenuhnya secara lokal menggunakan mesin browser web Anda sendiri.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Bagaimana alat ini bekerja?',
|
|
34
|
+
answer:
|
|
35
|
+
'Cukup seret file BMP Anda, dan skrip JavaScript kami akan membaca piksel untuk menggambar ulang di kanvas HTML dan mengekspornya dalam pengkodean JPEG secara instan.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: BmpAJpgLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'Unggah file BMP Anda',
|
|
42
|
+
text: 'Seret dan lepas atau pilih gambar Anda dalam format BMP di area yang ditentukan.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Pemrosesan Otomatis',
|
|
46
|
+
text: 'Alat ini melakukan rasterisasi gambar dan menerapkan tingkat kompresi optimal dalam format JPG dalam hitungan milidetik.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'Unduh Tunggal atau Massal',
|
|
50
|
+
text: 'Dapatkan gambar baru Anda yang dioptimalkan untuk web baik satu per satu atau dengan mengunduh file ZIP.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: BmpAJpgLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'BMP File Format Specification',
|
|
57
|
+
url: 'https://en.wikipedia.org/wiki/BMP_file_format',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'JPEG.org',
|
|
61
|
+
url: 'https://jpeg.org/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: BmpAJpgLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'Konverter BMP ke JPG: Perkecil File Raksasa dalam Hitungan Detik',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'BMP (Bitmap) adalah format paling sederhana di dunia komputer: ia menyimpan setiap piksel apa adanya tanpa kompresi apa pun. Tangkapan layar 1920x1080 dalam BMP berukuran sekitar 6 MB. Gambar yang sama dalam JPG hanya berukuran antara 200 hingga 400 KB dengan kualitas visual yang tidak dapat dibedakan. Perbedaannya sangat besar, dan alat kami memungkinkan Anda melakukan konversi itu dalam hitungan detik, langsung di browser Anda tanpa mengunggah apa pun ke server mana pun.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'BMP vs JPG: data mentah melawan kompresi cerdas',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'Format BMP dibuat oleh Microsoft di era Windows 3.1. Filosofinya sangat sederhana: setiap piksel memakan 3 byte (merah, hijau, biru), dan piksel disimpan secara berurutan tanpa pemrosesan tambahan. Ketiadaan total kompresi ini membuat file BMP 50 hingga 100 kali lebih besar daripada padanannya dalam JPG untuk foto asli dan tangkapan layar.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'Sebaliknya, JPG menggunakan Discrete Cosine Transform (DCT) untuk menganalisis setiap blok 8x8 piksel dan menghilangkan informasi frekuensi tinggi yang hampir tidak dirasakan oleh mata manusia. Hasilnya adalah gambar yang terlihat identik namun berukuran jauh lebih kecil. Untuk file BMP yang berasal dari tangkapan layar, pemindai, atau aplikasi Windows lama, konversi ke JPG adalah tindakan pengoptimalan yang paling berdampak.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: 'Perbandingan Arsitektur: Lokal vs Cloud',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'Konverter Cloud',
|
|
98
|
+
description: 'Layanan yang mengunggah file BMP Anda ke server jarak jauh untuk diproses.',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'Mengunggah BMP 10 MB membutuhkan waktu lama pada koneksi lambat',
|
|
103
|
+
'Tangkapan layar dan gambar rahasia Anda menjelajahi internet',
|
|
104
|
+
'Sering ada batasan ukuran pada paket gratis',
|
|
105
|
+
'Latensi ganda: unggah dan unduh file yang dikonversi',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: 'Arsitektur Lokal Kami',
|
|
110
|
+
description: 'Pemrosesan langsung di perangkat keras Anda melalui teknologi Vanilla JS.',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'BMP diproses di RAM Anda dan tidak dikirim ke server',
|
|
115
|
+
'Konversi instan tanpa menunggu',
|
|
116
|
+
'Tanpa batasan ukuran per file',
|
|
117
|
+
'Privasi total: 0 byte dikirim ke luar',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: 'Cara kerja konversi teknis dari BMP ke JPG',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'Saat Anda menyeret file BMP ke alat ini, browser membacanya dengan API <code>FileReader</code> dan mendeskodekannya sebagai objek Blob di memori. Blob tersebut dirender di atas kanvas HTML5 yang tidak terlihat. Selanjutnya, metode <code>toDataURL(\'image/jpeg\')</code> menerapkan algoritma kompresi JPEG pada data kanvas dan menghasilkan file JPG.',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'Karena BMP tidak memiliki saluran alfa (tidak mendukung transparansi), konversi ke JPG dilakukan secara langsung tanpa perlu penggabungan dengan latar belakang putih. Seluruh proses terjadi di memori RAM komputer Anda, tanpa transmisi data apa pun melalui jaringan, dalam hitungan milidetik bahkan untuk file berukuran beberapa megabyte.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: 'BMP dari Windows bisa sangat besar',
|
|
138
|
+
html: 'File BMP yang dihasilkan oleh tangkapan layar (tombol Print Screen di Windows) atau oleh aplikasi lama seperti Paint dapat berukuran 50 hingga 100 kali lebih berat daripada JPG yang setara. Satu BMP dengan resolusi Full HD dapat melebihi 6 MB. Mengonversinya ke JPG sebelum mengirim melalui email atau mengunggah ke platform apa pun adalah praktik yang sangat penting.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: 'Kasus penggunaan dan kompatibilitas JPG yang dihasilkan',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'Pengoptimalan tangkapan layar Windows untuk dikirim melalui email.',
|
|
150
|
+
'Konversi gambar yang diekspor oleh perangkat lunak lama (CAD, pemindai lama).',
|
|
151
|
+
'Pengurangan ukuran untuk mengunggah gambar ke platform web dan media sosial.',
|
|
152
|
+
'Persiapan file untuk dimasukkan ke dokumen Word, PowerPoint, atau PDF.',
|
|
153
|
+
'Kompatibilitas universal dengan semua penampil dan browser modern.',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Kesimpulan: 10 MB BMP, 500 KB JPG, gambar yang sama',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'Konversi dari BMP ke JPG adalah salah satu latihan pengoptimalan yang paling bermanfaat dalam pengelolaan file gambar. Alat kami melakukan transformasi itu dalam hitungan detik, tanpa mengunggah file apa pun, tanpa membuat akun apa pun, langsung di browser Anda. Hasilnya adalah JPG berkualitas tinggi, kompatibel secara universal, dan dengan ukuran hingga 97% lebih rendah dari BMP asli.',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: BmpAJpgLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'id', 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 { BmpAJpgLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'convertitore-bmp-a-jpg';
|
|
6
|
+
const title = 'Convertire BMP in JPG Online';
|
|
7
|
+
const description =
|
|
8
|
+
'Converti le immagini BMP in JPG nel tuo browser. Riduci drasticamente le dimensioni. Senza caricare file su server. Gratuito e privato al 100%.';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'Trascina i file BMP...',
|
|
12
|
+
convertText: 'Per convertirli in JPG istantaneamente',
|
|
13
|
+
selectFiles: 'Seleziona i file',
|
|
14
|
+
processedFiles: 'File elaborati',
|
|
15
|
+
downloadAll: 'Scarica tutto (.zip)',
|
|
16
|
+
pending: 'In attesa',
|
|
17
|
+
bibliographyTitle: 'Riferimenti Bibliografici',
|
|
18
|
+
faqTitle: 'Domande Frequenti',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: BmpAJpgLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'Perché convertire BMP in JPG?',
|
|
24
|
+
answer:
|
|
25
|
+
'Il formato BMP non comprime i dati, risultando in file estremamente grandi. Il formato JPG comprime drasticamente l\'immagine mantenendo un\'eccellente qualità visiva per il web e la distribuzione.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'È sicuro convertire le mie immagini qui?',
|
|
29
|
+
answer:
|
|
30
|
+
'Sicuro al 100%. La tua privacy è garantita poiché l\'elaborazione viene eseguita interamente a livello locale utilizzando il motore del tuo browser web.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'Come funziona lo strumento?',
|
|
34
|
+
answer:
|
|
35
|
+
'Trascina semplicemente i tuoi file BMP e il nostro script JavaScript leggerà i pixel per ridisegnarli su un canvas HTML ed esportarli istantaneamente in codifica JPEG.',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: BmpAJpgLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'Carica i tuoi file BMP',
|
|
42
|
+
text: 'Trascina e rilascia o seleziona le tue immagini in formato BMP nell\'area designata.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: 'Elaborazione Automatica',
|
|
46
|
+
text: 'Lo strumento rasterizza l\'immagine e applica il livello ottimale di compressione in formato JPG in millisecondi.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'Download Singolo o Batch',
|
|
50
|
+
text: 'Ottieni le tue nuove immagini ottimizzate per il web singolarmente o scaricando un file ZIP.',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: BmpAJpgLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'BMP File Format Specification',
|
|
57
|
+
url: 'https://en.wikipedia.org/wiki/BMP_file_format',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'JPEG.org',
|
|
61
|
+
url: 'https://jpeg.org/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: BmpAJpgLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'Convertitore da BMP a JPG: Riduci un File Gigantesco in Pochi Secondi',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'Il BMP (Bitmap) è il formato più semplice dell\'informatica: memorizza ogni pixel così com\'è, senza alcun tipo di compressione. Uno screenshot di 1920x1080 in BMP pesa circa 6 MB. La stessa immagine in JPG occupa tra 200 e 400 KB con una qualità visivamente indistinguibile. La differenza è abissale e il nostro strumento ti consente di eseguire tale conversione in pochi secondi, direttamente nel tuo browser, senza caricare nulla su alcun server.',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'BMP vs JPG: dati grezzi contro compressione intelligente',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'Il formato BMP è stato creato da Microsoft nell\'era di Windows 3.1. La sua filosofia è la più semplice possibile: ogni pixel occupa 3 byte (rosso, verde, blu) e i pixel sono memorizzati in fila senza alcuna elaborazione aggiuntiva. Questa totale assenza di compressione rende i file BMP da 50 a 100 volte più grandi del loro equivalente in JPG, per fotografie e screenshot reali.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'Il JPG, per contro, utilizza la Trasformata Discreta del Coseno (DCT) per analizzare ogni blocco di 8x8 pixel ed eliminare le informazioni ad alta frequenza che l\'occhio umano percepisce a malapena. Il risultato è un\'immagine che sembra identica ma pesa una frazione dell\'originale. Per i file BMP provenienti da screenshot, scanner o applicazioni Windows legacy, la conversione in JPG è l\'azione di ottimizzazione più incisiva possibile.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: 'Confronto di Architettura: Locale vs Cloud',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'Convertitori Cloud',
|
|
98
|
+
description: 'Servizi che caricano i tuoi file BMP su server remoti per elaborarli.',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'Caricare un BMP da 10 MB richiede tempo con connessioni lente',
|
|
103
|
+
'I tuoi screenshot e le tue immagini riservate viaggiano su Internet',
|
|
104
|
+
'Limiti frequenti di dimensione nei piani gratuiti',
|
|
105
|
+
'Doppia latenza: caricamento e download del file convertito',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: 'La Nostra Architettura Locale',
|
|
110
|
+
description: 'Elaborazione diretta sul tuo hardware tramite tecnologia Vanilla JS.',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'Il BMP viene elaborato nella tua RAM e non viaggia verso un server',
|
|
115
|
+
'Conversione istantanea senza attese',
|
|
116
|
+
'Nessun limite di dimensione per file',
|
|
117
|
+
'Privacy totale: 0 byte inviati all\'esterno',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: 'Come funziona la conversione tecnica da BMP a JPG',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'Quando trascini un file BMP nello strumento, il browser lo legge con l\'API <code>FileReader</code> e lo decodifica come un oggetto Blob in memoria. Tale Blob viene renderizzato su un canvas HTML5 invisibile. Successivamente, il metodo <code>toDataURL(\'image/jpeg\')</code> applica l\'algoritmo di compressione JPEG sui dati del canvas e genera il file JPG risultante.',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'Dato che il BMP non ha un canale alfa (non supporta le trasparenze), la conversione in JPG è diretta senza necessità di composizione con fondo bianco. L\'intero processo avviene nella memoria RAM del tuo computer, senza alcuna trasmissione di dati attraverso la rete, in millisecondi anche per file di vari megabyte.',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: 'I BMP di Windows possono essere enormi',
|
|
138
|
+
html: 'I file BMP generati dagli screenshot (tasto Stamp in Windows) o da applicazioni legacy come Paint possono pesare da 50 a 100 volte più di un JPG equivalente. Un singolo BMP a risoluzione Full HD può superare i 6 MB. Convertirli in JPG prima di inviarli via e-mail o caricarli su qualsiasi piattaforma è una pratica essenziale.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: 'Casi d\'uso e compatibilità del JPG risultante',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'Ottimizzazione degli screenshot di Windows per l\'invio via e-mail.',
|
|
150
|
+
'Conversione di immagini esportate da software legacy (CAD, vecchi scanner).',
|
|
151
|
+
'Riduzione del peso per caricare immagini su piattaforme web e social network.',
|
|
152
|
+
'Preparazione dei file per l\'inserimento in documenti Word, PowerPoint o PDF.',
|
|
153
|
+
'Compatibilità universale con tutti i visualizzatori e browser moderni.',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: 'Conclusione: 10 MB di BMP, 500 KB di JPG, stessa immagine',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'La conversione da BMP a JPG è uno degli esercizi di ottimizzazione più proficui nella gestione dei file immagine. Il nostro strumento esegue tale trasformazione in pochi secondi, senza caricare alcun file, senza creare alcun account, direttamente nel tuo browser. Il risultato è un JPG di alta qualità, universalmente compatibile e con un peso fino al 97% inferiore al BMP originale.',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: BmpAJpgLocaleContent = {
|
|
169
|
+
slug,
|
|
170
|
+
title,
|
|
171
|
+
description,
|
|
172
|
+
ui,
|
|
173
|
+
seo,
|
|
174
|
+
faq,
|
|
175
|
+
bibliography,
|
|
176
|
+
howTo,
|
|
177
|
+
schemas: generateSchemas({ title, description, inLanguage: 'it', 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 { BmpAJpgLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'convert-bmp-to-jpg';
|
|
6
|
+
const title = 'BMPをJPGにオンラインで変換';
|
|
7
|
+
const description =
|
|
8
|
+
'ブラウザ上でBMP画像をJPGに変換します。サイズを劇的に削減。サーバーへのファイルアップロードは不要。無料で100%プライベートに使用できます。';
|
|
9
|
+
|
|
10
|
+
const ui: ImageConverterUI = {
|
|
11
|
+
dragText: 'BMPファイルをドラッグ...',
|
|
12
|
+
convertText: '即座にJPGに変換します',
|
|
13
|
+
selectFiles: 'ファイルを選択',
|
|
14
|
+
processedFiles: '処理済みファイル',
|
|
15
|
+
downloadAll: 'すべてダウンロード (.zip)',
|
|
16
|
+
pending: '待機中',
|
|
17
|
+
bibliographyTitle: '参考文献',
|
|
18
|
+
faqTitle: 'よくある質問',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const faq: BmpAJpgLocaleContent['faq'] = [
|
|
22
|
+
{
|
|
23
|
+
question: 'なぜBMPをJPGに変換するのですか?',
|
|
24
|
+
answer:
|
|
25
|
+
'BMP形式はデータを圧縮しないため、ファイルサイズが非常に大きくなります。JPG形式は、ウェブや配布用に優れた視覚的品質を維持しながら、画像を劇的に圧縮します。',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'ここで画像を変換するのは安全ですか?',
|
|
29
|
+
answer:
|
|
30
|
+
'100%安全です。処理はすべてお使いのウェブブラウザのエンジンを使用してローカルで実行されるため、プライバシーが保証されます。',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
question: 'このツールはどのように機能しますか?',
|
|
34
|
+
answer:
|
|
35
|
+
'BMPファイルをドラッグするだけで、JavaScriptスクリプトがピクセルを読み取ってHTMLキャンバス上に再描画し、即座にJPEGエンコーディングでエクスポートします。',
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const howTo: BmpAJpgLocaleContent['howTo'] = [
|
|
40
|
+
{
|
|
41
|
+
name: 'BMPファイルをアップロード',
|
|
42
|
+
text: '指定されたエリアにBMP形式の画像をドラッグ&ドロップするか、選択してください。',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
name: '自動処理',
|
|
46
|
+
text: 'ツールが画像をラスタライズし、数ミリ秒でJPG形式の最適な圧縮レベルを適用します。',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: '個別または一括ダウンロード',
|
|
50
|
+
text: 'ウェブ用に最適化された新しい画像を、1つずつ、またはZIPファイルとしてダウンロードして取得してください。',
|
|
51
|
+
},
|
|
52
|
+
];
|
|
53
|
+
|
|
54
|
+
const bibliography: BmpAJpgLocaleContent['bibliography'] = [
|
|
55
|
+
{
|
|
56
|
+
name: 'BMP File Format Specification',
|
|
57
|
+
url: 'https://en.wikipedia.org/wiki/BMP_file_format',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'JPEG.org',
|
|
61
|
+
url: 'https://jpeg.org/',
|
|
62
|
+
},
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
const seo: BmpAJpgLocaleContent['seo'] = [
|
|
66
|
+
{
|
|
67
|
+
type: 'title',
|
|
68
|
+
text: 'BMP-JPGコンバーター:巨大なファイルを数秒で縮小',
|
|
69
|
+
level: 2,
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
type: 'paragraph',
|
|
73
|
+
html: 'BMP(Bitmap)は、コンピュータサイエンスにおいて最も単純な形式です。各ピクセルをそのまま、圧縮なしで保存します。1920x1080解像度のBMPスクリーンショットのサイズは約6MBです。同じ画像をJPGにすると、視覚的には区別がつかない品質で200〜400KB程度になります。この差は圧倒的であり、当ツールを使用すれば、サーバーに何もアップロードすることなく、ブラウザ上で直接数秒でその変換を行うことができます。',
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
type: 'title',
|
|
77
|
+
text: 'BMP vs JPG:生データ vs インテリジェント圧縮',
|
|
78
|
+
level: 3,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
type: 'paragraph',
|
|
82
|
+
html: 'BMP形式は、Windows 3.1の時代にMicrosoftによって作成されました。その哲学は可能な限りシンプルです。各ピクセルは3バイト(赤、緑、青)を占有し、ピクセルは追加の処理なしで一列に保存されます。この完全な圧縮の欠如により、実際の写真やスクリーンショットの場合、BMPファイルはJPG相当の50〜100倍も大きくなってしまいます。',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: '対照的に、JPGは離散コサイン変換(DCT)を使用して各8x8ピクセルのブロックを分析し、人間の目がほとんど認識できない高周波情報を排除します。その結果、見た目は同じでありながら、元のサイズの数分の一の重量の画像が得られます。スクリーンショット、スキャナー、またはレガシーなWindowsアプリケーションからのBMPファイルにとって、JPGへの変換は最も効果的な最適化アクションです。',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'title',
|
|
90
|
+
text: 'アーキテクチャの比較:ローカル vs クラウド',
|
|
91
|
+
level: 3,
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
type: 'comparative',
|
|
95
|
+
items: [
|
|
96
|
+
{
|
|
97
|
+
title: 'クラウドコンバーター',
|
|
98
|
+
description: '処理のためにBMPファイルをリモートサーバーにアップロードするサービス。',
|
|
99
|
+
icon: 'mdi:cloud-upload',
|
|
100
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
101
|
+
points: [
|
|
102
|
+
'低速な接続では10MBのBMPをアップロードするのに時間がかかる',
|
|
103
|
+
'機密性の高いスクリーンショットや画像がインターネット上を移動する',
|
|
104
|
+
'無料プランでの頻繁なサイズ制限',
|
|
105
|
+
'二重のレイテンシ:変換されたファイルのアップロードとダウンロード',
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
title: '当サイトのローカルアーキテクチャ',
|
|
110
|
+
description: 'Vanilla JSテクノロジーを使用してハードウェア上で直接処理。',
|
|
111
|
+
icon: 'mdi:laptop-mac',
|
|
112
|
+
highlight: true,
|
|
113
|
+
points: [
|
|
114
|
+
'BMPはRAM内で処理され、サーバーには送信されない',
|
|
115
|
+
'待機時間のない即時変換',
|
|
116
|
+
'ファイルごとのサイズ制限なし',
|
|
117
|
+
'完全なプライバシー:0バイトが外部に送信される',
|
|
118
|
+
],
|
|
119
|
+
},
|
|
120
|
+
],
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'title',
|
|
124
|
+
text: '技術的なBMPからJPGへの変換の仕組み',
|
|
125
|
+
level: 3,
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: 'BMPファイルをツールにドラッグすると、ブラウザは<code>FileReader</code> APIを使用してそれを読み取り、メモリ内でBlobオブジェクトとしてデコードします。そのBlobは、不可視のHTML5キャンバス上にレンダリングされます。次に、<code>toDataURL(\'image/jpeg\')</code>メソッドがキャンバスデータにJPEG圧縮アルゴリズムを適用し、結果のJPGファイルを生成します。',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'paragraph',
|
|
133
|
+
html: 'BMPにはアルファチャンネル(透明度のサポート)がないため、背景色との合成を必要とせず、JPGへの変換は直接的です。プロセス全体は、ネットワークを介したデータ送信なしに、数メガバイトのファイルであってもミリ秒単位でお使いのコンピュータのRAM内で行われます。',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'tip',
|
|
137
|
+
title: 'WindowsのBMPは巨大になる可能性があります',
|
|
138
|
+
html: 'スクリーンショット(WindowsのPrint Screenキー)やPaintなどの古いアプリケーションによって生成されたBMPファイルは、同等のJPGよりも50〜100倍重くなる可能性があります。フルHD解像度の単一のBMPが6MBを超えることもあります。メールで送信したりプラットフォームにアップロードしたりする前に、これらをJPGに変換することは不可欠な習慣です。',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: '使用例と変換後のJPGの互換性',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
icon: 'mdi:check-circle',
|
|
148
|
+
items: [
|
|
149
|
+
'メール送信用のWindowsスクリーンショットの最適化。',
|
|
150
|
+
'レガシーソフトウェア(CAD、古いスキャナー)によってエクスポートされた画像の変換。',
|
|
151
|
+
'ウェブプラットフォームやSNSへの画像アップロードのための軽量化。',
|
|
152
|
+
'Word、PowerPoint、またはPDFドキュメントへの挿入用ファイルの準備。',
|
|
153
|
+
'すべての最新ビューアおよびブラウザとのユニバーサルな互換性。',
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
type: 'title',
|
|
158
|
+
text: '結論:10MBのBMPが500KBのJPGに。同じ画像で。',
|
|
159
|
+
level: 3,
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
type: 'paragraph',
|
|
163
|
+
html: 'BMPからJPGへの変換は、画像ファイルの管理において最も報われる最適化作業の1つです。当ツールは、ファイルをアップロードせず、アカウントを作成することもなく、ブラウザ上で直接数秒でその変換を実行します。その結果、ユニバーサルな互換性を持ち、元のBMPより最大97%軽量な高品質JPGが得られます。',
|
|
164
|
+
},
|
|
165
|
+
];
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
export const content: BmpAJpgLocaleContent = {
|
|
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
|
+
};
|