@jjlmoya/utils-converters 1.24.0 → 1.26.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 +2 -2
- package/src/category/i18n/de.ts +1 -1
- package/src/category/i18n/en.ts +1 -1
- package/src/category/i18n/fr.ts +1 -1
- package/src/category/i18n/id.ts +1 -1
- package/src/category/i18n/it.ts +1 -1
- package/src/category/i18n/nl.ts +1 -1
- package/src/category/i18n/pl.ts +1 -1
- package/src/category/i18n/pt.ts +1 -1
- package/src/category/i18n/sv.ts +1 -1
- package/src/entries.ts +6 -0
- package/src/tests/bibliography_wellformed_export.test.ts +46 -0
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/seo_wellformed_export.test.ts +65 -0
- package/src/tests/tool_validation.test.ts +15 -15
- package/src/tool/avifAJpg/i18n/en.ts +164 -164
- package/src/tool/avifAJpg/i18n/es.ts +164 -164
- package/src/tool/avifAJpg/i18n/fr.ts +164 -164
- package/src/tool/avifAJpg/i18n/ja.ts +166 -166
- package/src/tool/avifAJpg/i18n/ko.ts +166 -166
- package/src/tool/avifAJpg/i18n/zh.ts +166 -166
- package/src/tool/avifAJpg/seo.astro +15 -15
- package/src/tool/avifAPng/i18n/en.ts +164 -164
- package/src/tool/avifAPng/i18n/es.ts +164 -164
- package/src/tool/avifAPng/i18n/fr.ts +164 -164
- package/src/tool/avifAPng/i18n/ja.ts +166 -166
- package/src/tool/avifAPng/i18n/ko.ts +166 -166
- package/src/tool/avifAPng/i18n/zh.ts +166 -166
- package/src/tool/avifAPng/seo.astro +15 -15
- package/src/tool/avifAWebp/i18n/en.ts +164 -164
- package/src/tool/avifAWebp/i18n/es.ts +164 -164
- package/src/tool/avifAWebp/i18n/fr.ts +164 -164
- package/src/tool/avifAWebp/i18n/ja.ts +166 -166
- package/src/tool/avifAWebp/i18n/ko.ts +166 -166
- package/src/tool/avifAWebp/i18n/zh.ts +166 -166
- package/src/tool/avifAWebp/seo.astro +15 -15
- package/src/tool/bmpAJpg/i18n/en.ts +164 -164
- package/src/tool/bmpAJpg/i18n/es.ts +164 -164
- package/src/tool/bmpAJpg/i18n/fr.ts +164 -164
- package/src/tool/bmpAJpg/i18n/ja.ts +166 -166
- package/src/tool/bmpAJpg/i18n/ko.ts +166 -166
- package/src/tool/bmpAJpg/i18n/zh.ts +166 -166
- package/src/tool/bmpAJpg/seo.astro +15 -15
- package/src/tool/bmpAPng/i18n/en.ts +164 -164
- package/src/tool/bmpAPng/i18n/es.ts +164 -164
- package/src/tool/bmpAPng/i18n/fr.ts +164 -164
- package/src/tool/bmpAPng/i18n/ja.ts +165 -165
- package/src/tool/bmpAPng/i18n/ko.ts +165 -165
- package/src/tool/bmpAPng/i18n/zh.ts +165 -165
- package/src/tool/bmpAPng/seo.astro +15 -15
- package/src/tool/bmpAWebp/i18n/en.ts +164 -164
- package/src/tool/bmpAWebp/i18n/es.ts +164 -164
- package/src/tool/bmpAWebp/i18n/fr.ts +164 -164
- package/src/tool/bmpAWebp/i18n/ja.ts +166 -166
- package/src/tool/bmpAWebp/i18n/ko.ts +166 -166
- package/src/tool/bmpAWebp/i18n/zh.ts +166 -166
- package/src/tool/bmpAWebp/seo.astro +15 -15
- package/src/tool/gifAJpg/i18n/en.ts +164 -164
- package/src/tool/gifAJpg/i18n/es.ts +164 -164
- package/src/tool/gifAJpg/i18n/fr.ts +164 -164
- package/src/tool/gifAJpg/i18n/ja.ts +166 -166
- package/src/tool/gifAJpg/i18n/ko.ts +166 -166
- package/src/tool/gifAJpg/i18n/zh.ts +166 -166
- package/src/tool/gifAJpg/seo.astro +15 -15
- package/src/tool/gifAPng/i18n/en.ts +164 -164
- package/src/tool/gifAPng/i18n/es.ts +164 -164
- package/src/tool/gifAPng/i18n/fr.ts +164 -164
- package/src/tool/gifAPng/i18n/ja.ts +166 -166
- package/src/tool/gifAPng/i18n/ko.ts +166 -166
- package/src/tool/gifAPng/i18n/zh.ts +166 -166
- package/src/tool/gifAPng/seo.astro +15 -15
- package/src/tool/gifAWebp/i18n/en.ts +164 -164
- package/src/tool/gifAWebp/i18n/es.ts +164 -164
- package/src/tool/gifAWebp/i18n/fr.ts +164 -164
- package/src/tool/gifAWebp/i18n/ja.ts +166 -166
- package/src/tool/gifAWebp/i18n/ko.ts +166 -166
- package/src/tool/gifAWebp/i18n/zh.ts +166 -166
- package/src/tool/gifAWebp/seo.astro +15 -15
- package/src/tool/imagenBase64/i18n/en.ts +154 -154
- package/src/tool/imagenBase64/i18n/es.ts +154 -154
- package/src/tool/imagenBase64/i18n/fr.ts +154 -154
- package/src/tool/imagenBase64/seo.astro +15 -15
- package/src/tool/jpgAIco/seo.astro +15 -15
- package/src/tool/jpgAPng/i18n/en.ts +164 -164
- package/src/tool/jpgAPng/i18n/es.ts +164 -164
- package/src/tool/jpgAPng/i18n/fr.ts +164 -164
- package/src/tool/jpgAPng/i18n/ja.ts +166 -166
- package/src/tool/jpgAPng/i18n/ko.ts +166 -166
- package/src/tool/jpgAPng/i18n/zh.ts +166 -166
- package/src/tool/jpgAPng/seo.astro +15 -15
- package/src/tool/jpgAWebp/i18n/en.ts +164 -164
- package/src/tool/jpgAWebp/i18n/es.ts +164 -164
- package/src/tool/jpgAWebp/i18n/fr.ts +164 -164
- package/src/tool/jpgAWebp/seo.astro +15 -15
- package/src/tool/pngAIco/seo.astro +15 -15
- package/src/tool/pngAJpg/i18n/de.ts +21 -21
- package/src/tool/pngAJpg/i18n/es.ts +177 -177
- package/src/tool/pngAJpg/i18n/fr.ts +137 -137
- package/src/tool/pngAJpg/i18n/id.ts +89 -89
- package/src/tool/pngAJpg/i18n/it.ts +89 -89
- package/src/tool/pngAJpg/i18n/ko.ts +177 -177
- package/src/tool/pngAJpg/i18n/nl.ts +20 -20
- package/src/tool/pngAJpg/i18n/pl.ts +89 -89
- package/src/tool/pngAJpg/i18n/pt.ts +89 -89
- package/src/tool/pngAJpg/i18n/ru.ts +177 -177
- package/src/tool/pngAJpg/i18n/sv.ts +89 -89
- package/src/tool/pngAJpg/i18n/tr.ts +89 -89
- package/src/tool/pngAJpg/seo.astro +15 -15
- package/src/tool/pngAWebp/i18n/en.ts +164 -164
- package/src/tool/pngAWebp/i18n/es.ts +164 -164
- package/src/tool/pngAWebp/i18n/fr.ts +164 -164
- package/src/tool/pngAWebp/seo.astro +15 -15
- package/src/tool/svgAJpg/i18n/fr.ts +164 -164
- package/src/tool/svgAJpg/seo.astro +15 -15
- package/src/tool/svgAPng/i18n/fr.ts +164 -164
- package/src/tool/svgAPng/seo.astro +15 -15
- package/src/tool/webpAIco/seo.astro +15 -15
- package/src/tool/webpAJpg/seo.astro +15 -15
- package/src/tool/webpAPng/bibliography.ts +13 -13
- package/src/tool/webpAPng/i18n/de.ts +166 -166
- package/src/tool/webpAPng/i18n/es.ts +171 -171
- package/src/tool/webpAPng/i18n/fr.ts +166 -166
- package/src/tool/webpAPng/i18n/id.ts +166 -166
- package/src/tool/webpAPng/i18n/it.ts +166 -166
- package/src/tool/webpAPng/i18n/nl.ts +166 -166
- package/src/tool/webpAPng/i18n/pl.ts +166 -166
- package/src/tool/webpAPng/i18n/pt.ts +166 -166
- package/src/tool/webpAPng/i18n/ru.ts +166 -166
- package/src/tool/webpAPng/i18n/sv.ts +166 -166
- package/src/tool/webpAPng/i18n/tr.ts +167 -167
- package/src/tool/webpAPng/seo.astro +15 -15
|
@@ -1,168 +1,168 @@
|
|
|
1
1
|
import { bibliography } from '../bibliography';
|
|
2
|
-
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
3
|
-
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
4
|
-
import type { BmpAWebpLocaleContent } from '../index';
|
|
5
|
-
|
|
6
|
-
const slug = 'bmp-to-webp-converter';
|
|
7
|
-
const title = 'BMPをWebPに無料で変換';
|
|
8
|
-
const description =
|
|
9
|
-
'BMP画像をオフラインでWebPに変換します。巨大なファイルをキロバイト単位に削減。ファイルのアップロードは不要。無料でオフライン、完全にプライベートに使用できます。';
|
|
10
|
-
|
|
11
|
-
const ui: ImageConverterUI = {
|
|
12
|
-
dragText: 'BMPファイルをドラッグ...',
|
|
13
|
-
convertText: '即座にWebPに変換します',
|
|
14
|
-
selectFiles: 'ファイルを選択',
|
|
15
|
-
processedFiles: '処理済みファイル',
|
|
16
|
-
downloadAll: 'すべてダウンロード (.zip)',
|
|
2
|
+
import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
|
|
3
|
+
import { generateSchemas } from '../../../shared/logic/schemas';
|
|
4
|
+
import type { BmpAWebpLocaleContent } from '../index';
|
|
5
|
+
|
|
6
|
+
const slug = 'bmp-to-webp-converter';
|
|
7
|
+
const title = 'BMPをWebPに無料で変換';
|
|
8
|
+
const description =
|
|
9
|
+
'BMP画像をオフラインでWebPに変換します。巨大なファイルをキロバイト単位に削減。ファイルのアップロードは不要。無料でオフライン、完全にプライベートに使用できます。';
|
|
10
|
+
|
|
11
|
+
const ui: ImageConverterUI = {
|
|
12
|
+
dragText: 'BMPファイルをドラッグ...',
|
|
13
|
+
convertText: '即座にWebPに変換します',
|
|
14
|
+
selectFiles: 'ファイルを選択',
|
|
15
|
+
processedFiles: '処理済みファイル',
|
|
16
|
+
downloadAll: 'すべてダウンロード (.zip)',
|
|
17
17
|
pending: '待機中',
|
|
18
|
-
bibliographyTitle: '参考文献',
|
|
19
|
-
faqTitle: 'よくある質問',
|
|
20
|
-
};
|
|
21
|
-
|
|
22
|
-
const faq: BmpAWebpLocaleContent['faq'] = [
|
|
23
|
-
{
|
|
24
|
-
question: 'なぜBMPファイルは10倍も重いのですか?WebPにするとどのようなメリットがありますか?',
|
|
25
|
-
answer:
|
|
26
|
-
'BMPは非圧縮のピクセルマップを保存します。WebPは数学的な圧縮を使用して、巨大なBMPを1メガバイト未満にまで縮小しながら、画像を極めて鮮明に保つことができます。',
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
question: 'アカウントの登録は必要ですか?',
|
|
30
|
-
answer:
|
|
31
|
-
'メールアドレスは不要です。処理はお使いのPCにインストールされたブラウザのJavaScriptによって行われ、外部への送信は行われないため、素材は隔離された状態で保たれます。',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
question: '同時に多くのファイルをドラッグできますか?',
|
|
35
|
-
answer:
|
|
36
|
-
'はい。お使いのハードウェアが処理に耐えられるなら、50個や100個のファイルをドラッグして一括処理することが可能です。',
|
|
37
|
-
},
|
|
38
|
-
];
|
|
39
|
-
|
|
40
|
-
const howTo: BmpAWebpLocaleContent['howTo'] = [
|
|
41
|
-
{
|
|
42
|
-
name: '生ファイルを特定する',
|
|
43
|
-
text: 'ビットマップのコレクションを、転送準備ができたウィンドウに配置してください。',
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
name: 'ネイティブバッチ起動',
|
|
47
|
-
text: 'すべてのファイルをデジタルの作業台に投影またはドラッグしてください。',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
name: 'WebPバッチの書き出し',
|
|
51
|
-
text: '結果をクリックすると、マイクロ重量の画像が個別に、または一括ZIPパッケージとして取得されます。',
|
|
52
|
-
},
|
|
53
|
-
];
|
|
54
|
-
|
|
55
|
-
const seo: BmpAWebpLocaleContent['seo'] = [
|
|
56
|
-
{
|
|
57
|
-
type: 'title',
|
|
58
|
-
text: 'BMPからWebPへのコンバーター:可能な限り最も極端なサイズ削減',
|
|
59
|
-
level: 2,
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
type: 'paragraph',
|
|
63
|
-
html: 'BMPをWebPに変換することは、間違いなく画像に対して行える最も劇的な変化です。BMP(ビットマップ)はデジタルエコシステムの中で最も古く、最も重い形式です。各ピクセルを一切圧縮せずに保存するため、最新の形式に比べてファイルサイズが20倍、50倍、あるいは100倍にもなることがあります。Googleによって開発されたWebPは、最新世代の圧縮アルゴリズムを適用し、優れた視覚的品質を維持しながら、サイズを可能な限り最小限に抑えます。',
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
type: 'title',
|
|
67
|
-
text: 'なぜBMPは重く、WebPは効率的なのか?',
|
|
68
|
-
level: 3,
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
type: 'paragraph',
|
|
72
|
-
html: 'BMP形式は、ディスクスペースが広大で圧縮が優先事項ではなかった80年代のWindows向けに誕生しました。各ピクセルは、削減アルゴリズムなしでそのまま保存されます。1920x1080ピクセルの画像は、内容に関わらずBMPでちょうど5.93 MBになります。これは内部的なスクリーンショットやロスレス編集には理想的ですが、ウェブや現代的なストレージには全く適していません。',
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
type: 'paragraph',
|
|
76
|
-
html: 'WebPは、ブロックベースの予測圧縮とDCT変換(デジタルビデオの基盤となるのと同じ技術)を使用して、同じ1920x1080の画像サイズを80 KBから300 KBの間に収めます。これは、元のBMPと比較して95%から99%の削減に相当します。さらに、WebPは透明度のためのアルファチャンネルをサポートし、非可逆圧縮と可逆圧縮の両方を提供、あらゆる用途に対応します。',
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
type: 'title',
|
|
80
|
-
text: '比較:クラウドコンバーター vs 当サイトのローカルアーキテクチャ',
|
|
81
|
-
level: 3,
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
type: 'comparative',
|
|
85
|
-
items: [
|
|
86
|
-
{
|
|
87
|
-
title: 'クラウドコンバーター',
|
|
88
|
-
description: '処理のためにBMPファイルをリモートサーバーにアップロードするツール。',
|
|
89
|
-
icon: 'mdi:cloud-upload',
|
|
90
|
-
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
-
points: [
|
|
92
|
-
'低速な接続では20 MBのBMPのアップロードに数分かかる',
|
|
93
|
-
'画像は他人のサーバーに保存されたままになる',
|
|
94
|
-
'巨大なBMPファイルを排除するサイズ制限がある',
|
|
95
|
-
'押し付けがましい広告とデータトラッカー',
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
title: '当サイトのローカルアーキテクチャ',
|
|
100
|
-
description: 'Vanilla JSテクノロジーを使用してブラウザ上で直接処理。',
|
|
101
|
-
icon: 'mdi:laptop-mac',
|
|
102
|
-
highlight: true,
|
|
103
|
-
points: [
|
|
104
|
-
'ネットワーク転送なしでの即時変換',
|
|
105
|
-
'完全なプライバシー - 0バイトが外部に送信される',
|
|
106
|
-
'ファイルごとのサイズ制限なし',
|
|
107
|
-
'インターネット接続なしでも動作',
|
|
108
|
-
],
|
|
109
|
-
},
|
|
110
|
-
],
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
type: 'title',
|
|
114
|
-
text: 'ブラウザでの技術的な変換の仕組み',
|
|
115
|
-
level: 3,
|
|
116
|
-
},
|
|
117
|
-
{
|
|
118
|
-
type: 'paragraph',
|
|
119
|
-
html: 'BMPファイルをドラッグすると、ブラウザはそれをバイナリBlobとしてRAMメモリに読み込みます。このBlobはJavaScriptの<code>Image</code>要素に読み込まれ、ネイティブの画像エンジンを使用してデコードされます。次に、画像は不可視のHTML5 <code>Canvas</code>要素に描画されます。キャンバスは、画像がピクセル単位で存在する仮想のキャンバスとして機能します。',
|
|
120
|
-
},
|
|
121
|
-
{
|
|
122
|
-
type: 'paragraph',
|
|
123
|
-
html: 'キャンバスに描画された後、MIMEタイプ<code>image/webp</code>と希望する品質レベルを指定して<code>toBlob()</code>メソッドを実行します。ブラウザは内部的にWebP圧縮アルゴリズムを適用し、結果のファイルを含む新しいBlobを生成します。このBlobは、ブラウザがディスクに保存する直接ダウンロードURLに変わります。ネットワーク接続が行われることは一切ありません。',
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
type: 'tip',
|
|
127
|
-
title: '可能な限り最大の圧縮率の飛躍',
|
|
128
|
-
html: 'BMPからWebPへの変換は、ファイルサイズを99%削減することができます。20 MBのBMPは、視覚的にほとんど遜色のない品質で、わずか200 KB程度のWebPに変換可能です。これは、標準的な画像形式の間で利用可能な最も効率的な変換です。',
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
type: 'title',
|
|
132
|
-
text: 'WebPの使用例と互換性',
|
|
133
|
-
level: 3,
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
type: 'list',
|
|
137
|
-
icon: 'mdi:check-circle',
|
|
138
|
-
items: [
|
|
139
|
-
'ウェブ公開 - Chrome, Firefox, Safari, Edgeおよびすべての最新ブラウザ。',
|
|
140
|
-
'ソーシャルネットワーク - Instagram, Twitter, FacebookはWebPをネイティブにサポート。',
|
|
141
|
-
'ウェブアプリとPWA - 即座に読み込むための最小サイズ。',
|
|
142
|
-
'効率的なアーカイブ - 旧来のBMPコレクションを置き換えてギガバイト単位で節約。',
|
|
143
|
-
'メールマーケティング - 最新のメールクライアントで高速に読み込める軽量画像。',
|
|
144
|
-
],
|
|
145
|
-
},
|
|
146
|
-
{
|
|
147
|
-
type: 'title',
|
|
148
|
-
text: '結論:ワンクリックで最もインパクトのある変換',
|
|
149
|
-
level: 3,
|
|
150
|
-
},
|
|
151
|
-
{
|
|
152
|
-
type: 'paragraph',
|
|
153
|
-
html: 'Windowsから引き継いだ古いBMPファイル、非圧縮のスクリーンショット、または古いツールの画像などがある場合、それらをWebPに変換することは、ストレージとウェブパフォーマンスを最適化するために行える最も効果的なアクションです。当ツールを使用すれば、変換は瞬時に、プライベートに、無制限に行われます。',
|
|
154
|
-
},
|
|
155
|
-
];
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
export const content: BmpAWebpLocaleContent = {
|
|
159
|
-
slug,
|
|
160
|
-
title,
|
|
161
|
-
description,
|
|
162
|
-
ui,
|
|
163
|
-
seo,
|
|
164
|
-
faq,
|
|
165
|
-
bibliography,
|
|
166
|
-
howTo,
|
|
167
|
-
schemas: generateSchemas({ title, description, inLanguage: 'ja', faq, howTo }),
|
|
168
|
-
};
|
|
18
|
+
bibliographyTitle: '参考文献',
|
|
19
|
+
faqTitle: 'よくある質問',
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
const faq: BmpAWebpLocaleContent['faq'] = [
|
|
23
|
+
{
|
|
24
|
+
question: 'なぜBMPファイルは10倍も重いのですか?WebPにするとどのようなメリットがありますか?',
|
|
25
|
+
answer:
|
|
26
|
+
'BMPは非圧縮のピクセルマップを保存します。WebPは数学的な圧縮を使用して、巨大なBMPを1メガバイト未満にまで縮小しながら、画像を極めて鮮明に保つことができます。',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
question: 'アカウントの登録は必要ですか?',
|
|
30
|
+
answer:
|
|
31
|
+
'メールアドレスは不要です。処理はお使いのPCにインストールされたブラウザのJavaScriptによって行われ、外部への送信は行われないため、素材は隔離された状態で保たれます。',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
question: '同時に多くのファイルをドラッグできますか?',
|
|
35
|
+
answer:
|
|
36
|
+
'はい。お使いのハードウェアが処理に耐えられるなら、50個や100個のファイルをドラッグして一括処理することが可能です。',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
const howTo: BmpAWebpLocaleContent['howTo'] = [
|
|
41
|
+
{
|
|
42
|
+
name: '生ファイルを特定する',
|
|
43
|
+
text: 'ビットマップのコレクションを、転送準備ができたウィンドウに配置してください。',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
name: 'ネイティブバッチ起動',
|
|
47
|
+
text: 'すべてのファイルをデジタルの作業台に投影またはドラッグしてください。',
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
name: 'WebPバッチの書き出し',
|
|
51
|
+
text: '結果をクリックすると、マイクロ重量の画像が個別に、または一括ZIPパッケージとして取得されます。',
|
|
52
|
+
},
|
|
53
|
+
];
|
|
54
|
+
|
|
55
|
+
const seo: BmpAWebpLocaleContent['seo'] = [
|
|
56
|
+
{
|
|
57
|
+
type: 'title',
|
|
58
|
+
text: 'BMPからWebPへのコンバーター:可能な限り最も極端なサイズ削減',
|
|
59
|
+
level: 2,
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'paragraph',
|
|
63
|
+
html: 'BMPをWebPに変換することは、間違いなく画像に対して行える最も劇的な変化です。BMP(ビットマップ)はデジタルエコシステムの中で最も古く、最も重い形式です。各ピクセルを一切圧縮せずに保存するため、最新の形式に比べてファイルサイズが20倍、50倍、あるいは100倍にもなることがあります。Googleによって開発されたWebPは、最新世代の圧縮アルゴリズムを適用し、優れた視覚的品質を維持しながら、サイズを可能な限り最小限に抑えます。',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
type: 'title',
|
|
67
|
+
text: 'なぜBMPは重く、WebPは効率的なのか?',
|
|
68
|
+
level: 3,
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
type: 'paragraph',
|
|
72
|
+
html: 'BMP形式は、ディスクスペースが広大で圧縮が優先事項ではなかった80年代のWindows向けに誕生しました。各ピクセルは、削減アルゴリズムなしでそのまま保存されます。1920x1080ピクセルの画像は、内容に関わらずBMPでちょうど5.93 MBになります。これは内部的なスクリーンショットやロスレス編集には理想的ですが、ウェブや現代的なストレージには全く適していません。',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: 'paragraph',
|
|
76
|
+
html: 'WebPは、ブロックベースの予測圧縮とDCT変換(デジタルビデオの基盤となるのと同じ技術)を使用して、同じ1920x1080の画像サイズを80 KBから300 KBの間に収めます。これは、元のBMPと比較して95%から99%の削減に相当します。さらに、WebPは透明度のためのアルファチャンネルをサポートし、非可逆圧縮と可逆圧縮の両方を提供、あらゆる用途に対応します。',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
type: 'title',
|
|
80
|
+
text: '比較:クラウドコンバーター vs 当サイトのローカルアーキテクチャ',
|
|
81
|
+
level: 3,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: 'comparative',
|
|
85
|
+
items: [
|
|
86
|
+
{
|
|
87
|
+
title: 'クラウドコンバーター',
|
|
88
|
+
description: '処理のためにBMPファイルをリモートサーバーにアップロードするツール。',
|
|
89
|
+
icon: 'mdi:cloud-upload',
|
|
90
|
+
pointIcon: 'mdi:close-circle-outline',
|
|
91
|
+
points: [
|
|
92
|
+
'低速な接続では20 MBのBMPのアップロードに数分かかる',
|
|
93
|
+
'画像は他人のサーバーに保存されたままになる',
|
|
94
|
+
'巨大なBMPファイルを排除するサイズ制限がある',
|
|
95
|
+
'押し付けがましい広告とデータトラッカー',
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
title: '当サイトのローカルアーキテクチャ',
|
|
100
|
+
description: 'Vanilla JSテクノロジーを使用してブラウザ上で直接処理。',
|
|
101
|
+
icon: 'mdi:laptop-mac',
|
|
102
|
+
highlight: true,
|
|
103
|
+
points: [
|
|
104
|
+
'ネットワーク転送なしでの即時変換',
|
|
105
|
+
'完全なプライバシー - 0バイトが外部に送信される',
|
|
106
|
+
'ファイルごとのサイズ制限なし',
|
|
107
|
+
'インターネット接続なしでも動作',
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
],
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
type: 'title',
|
|
114
|
+
text: 'ブラウザでの技術的な変換の仕組み',
|
|
115
|
+
level: 3,
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'paragraph',
|
|
119
|
+
html: 'BMPファイルをドラッグすると、ブラウザはそれをバイナリBlobとしてRAMメモリに読み込みます。このBlobはJavaScriptの<code>Image</code>要素に読み込まれ、ネイティブの画像エンジンを使用してデコードされます。次に、画像は不可視のHTML5 <code>Canvas</code>要素に描画されます。キャンバスは、画像がピクセル単位で存在する仮想のキャンバスとして機能します。',
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
type: 'paragraph',
|
|
123
|
+
html: 'キャンバスに描画された後、MIMEタイプ<code>image/webp</code>と希望する品質レベルを指定して<code>toBlob()</code>メソッドを実行します。ブラウザは内部的にWebP圧縮アルゴリズムを適用し、結果のファイルを含む新しいBlobを生成します。このBlobは、ブラウザがディスクに保存する直接ダウンロードURLに変わります。ネットワーク接続が行われることは一切ありません。',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
type: 'tip',
|
|
127
|
+
title: '可能な限り最大の圧縮率の飛躍',
|
|
128
|
+
html: 'BMPからWebPへの変換は、ファイルサイズを99%削減することができます。20 MBのBMPは、視覚的にほとんど遜色のない品質で、わずか200 KB程度のWebPに変換可能です。これは、標準的な画像形式の間で利用可能な最も効率的な変換です。',
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'title',
|
|
132
|
+
text: 'WebPの使用例と互換性',
|
|
133
|
+
level: 3,
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
type: 'list',
|
|
137
|
+
icon: 'mdi:check-circle',
|
|
138
|
+
items: [
|
|
139
|
+
'ウェブ公開 - Chrome, Firefox, Safari, Edgeおよびすべての最新ブラウザ。',
|
|
140
|
+
'ソーシャルネットワーク - Instagram, Twitter, FacebookはWebPをネイティブにサポート。',
|
|
141
|
+
'ウェブアプリとPWA - 即座に読み込むための最小サイズ。',
|
|
142
|
+
'効率的なアーカイブ - 旧来のBMPコレクションを置き換えてギガバイト単位で節約。',
|
|
143
|
+
'メールマーケティング - 最新のメールクライアントで高速に読み込める軽量画像。',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: '結論:ワンクリックで最もインパクトのある変換',
|
|
149
|
+
level: 3,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'paragraph',
|
|
153
|
+
html: 'Windowsから引き継いだ古いBMPファイル、非圧縮のスクリーンショット、または古いツールの画像などがある場合、それらをWebPに変換することは、ストレージとウェブパフォーマンスを最適化するために行える最も効果的なアクションです。当ツールを使用すれば、変換は瞬時に、プライベートに、無制限に行われます。',
|
|
154
|
+
},
|
|
155
|
+
];
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
export const content: BmpAWebpLocaleContent = {
|
|
159
|
+
slug,
|
|
160
|
+
title,
|
|
161
|
+
description,
|
|
162
|
+
ui,
|
|
163
|
+
seo,
|
|
164
|
+
faq,
|
|
165
|
+
bibliography,
|
|
166
|
+
howTo,
|
|
167
|
+
schemas: generateSchemas({ title, description, inLanguage: 'ja', faq, howTo }),
|
|
168
|
+
};
|