Windows-1252またはCP-1252 ( Windows コード ページ1252) は、アメリカ大陸、西ヨーロッパ、オセアニア、およびアフリカの大部分でMicrosoft Windowsでデフォルトで(「ANSIコード ページ」として) 使用されているレガシーシングル バイト文字エンコーディングです[ 2 ] 。[ 3 ]
当初はISO 8859-1と同じでしたが、 Windows 2.0以降、 0x80から0x9F( 16進数)の範囲に文字を追加することで、異なる仕様になり始めました(ISO規格ではこの範囲はC1制御コード用に予約されています)。追加された文字には、カーリークォーテーションマークやISO 8859-15のすべての印刷可能な文字などがあります。
これは世界で最も広く使われているシングルバイト文字エンコーディングです。2026年4月現在 静的ウェブページの (実質的に) 9.3% がWindows-1252 として配信されています (さらに一部のサブタイプやカテゴリでは、さらに多く使用されています。下記参照)。これは、Windows-1252 を使用していると宣言されているすべての Web サイトのうち、ISO 8859-1を使用していると宣言されている 0.9% (HTML5 標準 [ 5 ] で要求されているように、すべての最新のブラウザで Windows-1252 として扱われます) を追加しても合計1.2 %に過ぎないという状況と大きく異なります[ 4 ] [ 6 ]。これは、ほとんどの Web サイトがプログラムによって配信され、通常は静的ページが混在しているためです。現在、ほぼすべての Webサイトが、 ASCIIのもう 1 つのスーパーセットであるマルチバイト文字エンコーディングUTF-8 を使用しています。一部の国や言語では、この低い世界平均よりも高い使用率を示しています。2025 年の Web サイトの使用状況によると、ブラジルでは使用率が2.2% [ 7 ]、ドイツでは2.1% です。[ 8 ] [ 9 ] (これらはISO-8859-1とCP-1252の宣言の合計です)。
HTML5 は、ほぼすべての Web ページが使用する最新の標準ですが、古い標準に関しては、HTML Transitional Web ページの 6.0% が Windows-1252 を使用しています[ 10 ] (HTML Transitional は、すべての Web サイトのうち 2.9% で使用されています[ 11 ] )。廃止され、あまり使用されていないフレームセットサイト要素を使用する Web サイト (全体の 0.2%) では、12.8% が Windows-1252 を使用しています。[ 12 ]したがって、これらのレガシー エンコーディングは古いテクノロジーでより多く使用されており、HTML5 はそれらの使用をほぼ排除し、HTML5 以前の HTML Transitional と HTML Strict が使用されていると言えます。
Windowsでは、コードページ番号1252、およびIANA承認名「windows-1252」として認識されています。
歴史的に、「ANSI コード ページ」という用語は、Windows で DOS 以外のエンコーディングを指すために使用されていました。その意図は、これらのほとんどがISO-8859-1などのANSI規格になることでした。Windows-1252 は、Microsoft Windows 用語でそのように命名された最初の、そして圧倒的に人気のあるコード ページでしたが、このコード ページは ANSI 規格になったことはありません。Microsoft は、「Windows コード ページを示すために使用される ANSI という用語は歴史的な参照ですが、今日では Windows コミュニティで依然として残っている誤称です」と説明しています。[ 13 ]
LaTeX は、パラメータansinew (最近ではcp1252 ) を指定してinputenc.sty を使用することで Windows-1252 を入力できます。[ 14 ] [ 15 ]
IBMはWindows-1252にコードページ1252(CCSID 1252およびユーロ記号拡張CCSID 5348)を使用しています。 [ 16 ] [ 17 ] [ 18 ]
Oracle Databaseでは「WE8MSWIN1252」と呼ばれています。[ 19 ]
1990 年代以降、 HTML を生成できるMicrosoft製品の多くは Windows-1252 専用文字を含んでいましたが、エンコーディングをISO-8859-1、ASCII、または未宣言とマークしていました。Windows -1252 専用文字は、Windows 以外のオペレーティングシステムでは正しくレンダリングされません (多くの場合、疑問符として表示されます)。[ 20 ] [ 21 ]特に、タイポグラファーの引用符 (US-ASCII の標準的なストレートアポストロフィと引用符のカーリー バリアント) は、 Microsoft Wordなどの Windows アプリケーションで作成されたファイルでよく使用されていました。これは、ストレート アポストロフィと引用符を自動的にカーリー バリアントに変換できるスマート クォート機能によるものです。 [ 22 ]この問題を解決するために、2000 年までにほとんどの Web ブラウザーと電子メール クライアントは文字セット ISO-8859-1 と US-ASCII を Windows-1252 として扱うようになりました。この動作は現在 HTML5 仕様で必須となっています。[ 5 ] HTML で宣言されていない文字セットも Windows-1252 であると想定されます。[ 23 ] [ 24 ]
Windows NTはUnicodeをサポートし、プログラムによる使用を推奨しようと試みましたが、 Shift-JISなどの他のマルチバイト文字エンコーディングのサポートがあったにもかかわらず、提供したのはUCS-2 / UTF-16の16ビットコードユニットのみでした。多くのアプリケーションが8ビット文字列の使用を好んだため、Windows-1252はWindows上で最も普及したエンコーディングであり続けました。UTF -8はWindows 10以降でサポートされるようになったため、この状況は徐々に変化しています。
以下の表は Windows-1252 を示しています。ISO -8859-1との違いは、Unicode.org の Windows-1252 の「最適適合」マッピングに基づいて、文字の下にUnicodeコードポイント番号が表示されます。通常、文字のすぐ右にカーソルを合わせた場合にのみ表示されるツールチップには、Unicode コードポイント名と 10 進Alt コードが表示されます。
Microsoft と Unicode Consortium の Web サイトの情報によると、位置 81、8D、8F、90、9D は未使用ですが、「最適な」マッピングと Windows API はこれらを対応するC1 制御コードMultiByteToWideCharにマッピングします。[ 25 ]
OS /2オペレーティングシステムは、コード ページ 1004 ( CCSID 1004) または「Windows Extended」という名前のエンコーディングをサポートしています。 [ 30 ] [ 31 ]これは、特定のC0 制御文字が発音記号文字に置き換えられている点を除いて、コード ページ 1252 とほぼ一致します。
あまり使われていないが便利なグラフィック拡張コードページ 1252 があり、コード 0x00 から 0x1f で、MS-DOS Edit や Codeview などのアプリケーションで使用されるボックス描画が可能です。このコードページを使用するアプリケーションの 1 つは、1995 年中頃から後半にかけての Intel Corporation のインストール / リカバリ ディスク イメージ ユーティリティでした。これらのプログラムは、同社の P6 ユーザー テスト プログラム マシン (米国の例[ 36 ] ) 用に作成されました。当時、EMEA 地域 (ヨーロッパ、中東、アフリカ) でのみ使用されていました。その後、プログラムはコードページ 850 を使用するように変更されました。
{{cite web}}: CS1メンテナンス: アーカイブサービスは非推奨になりました (リンク)HTML ファイルの正しい文字エンコーディングを指定せずにタイポグラファーの引用符を使用すると、一部の閲覧者は、意図した美しいカーリー クォートの代わりに、疑問符、四角、またはその他の奇妙な記号を目にすることになります。
ドキュメントに CHARSET エンコーディング値が含まれていない場合、HTML ドキュメントのデフォルトのエンコーディングは ISO-8859-1 (Latin1 とも呼ばれます) です。プレーンテキスト ドキュメントのデフォルトのエンコーディングは US-ASCII です。