Uniscribeは、 Unicodeでエンコードされたテキストをレンダリングし、複雑なテキストレイアウトをサポートするMicrosoft Windowsのサービスセットです。ダイナミックリンクライブラリUSP10.DLLに実装されています。UniscribeはWindows 2000およびInternet Explorer 5.0とともにリリースされました。また、Windows CEプラットフォームはバージョン5.0以降、Uniscribeをサポートしています。
「USP」はUnicodeスクリプトプロセッサの略称です。その特徴は以下の通り です。
- 入力シーケンスからの入力テキストを視覚シーケンスに配置する。
- 文脈に応じてグリフを置き換える(例:アラビア文字の異なる形式)。
- 左から右、右から左、水平、垂直などのテキストの流れの方向に基づいて、表示されるテキストを順序付けます。
Uniscribeは2021年現在もメンテナンスが続けられていますが、より多くの機能を備えた代替となるDirectWriteがWindows 7で導入されました。[1]
USP10.DLL バージョン
usp10.dll以下に、 の一般的なバージョンとその配布方法を
いくつか示します。
機能はバージョン番号の「major.minor」部分のみに基づいて追加されます。完全なバージョン番号の3番目の部分は、MicrosoftがDLLを移植したシステムターゲット識別番号として使用され、最後の部分は各ターゲットシステムバージョンのビルド番号です(これは定期的なシステム/ソフトウェア更新で変更される可能性があります)。一部の修正プログラムは特定のアプリケーション(特にOfficeインストールディレクトリ内)のみをアップグレードするもので、Windowsシステムディレクトリ(DLLのバージョンは更新されるべきではなく、多くの場合システムによって保護されている)での使用には適していません。
ファイル サイズは、DLL の特定のローカライズ (コンパイルされたターゲット システムまたはアプリケーションによって異なります) に応じて異なる場合があります。ここで示すサイズは、米国英語ローカライズのものです。
| バージョン番号 | ファイルサイズ(バイト) | ファイル日付 | バンドルされているソフトウェア | このバージョンの新機能 |
|---|---|---|---|---|
| 10.0.14393.0 | 79,360 (x64) | 2016年8月2日 | Windows 10アニバーサリーアップデート | ? |
| 1.626.7601.23259 | 627,712 (x86) | 2015年11月3日 | ? | ? |
| 1.626.7601.19054 | 627,712 (x86) | 2015年11月3日 | ? | ? |
| 10.0.10240.16834 | 626,688 (x64) | 2015年7月10日 | ウィンドウズ10 | ユニバーサルシェーピングエンジンによるUnicode 7.0複合スクリプトのサポート[2] [3] [4] |
| 1.626.7601.18454 (Windows 7 GDR) | 626,688 (x86) 801,280 (x64) |
2014年4月25日 | KB2957509 [1] – Windows 7、Windows Server 2008 R2、Windows Vista、Windows Server 2008、Windows Server 2003 | セキュリティアップデート |
| 1.626.7601.22666 (Windows 7 LDR) | 626,688 (x86) 801,792 (x64) | |||
| 6.3.9431.0 | 76,288 | 2013年6月16日 | Windows 8.1(プレビュー) | ? |
| 6.2.9200.16384 | 75,776 | 2012年7月26日 | ウィンドウズ8 | ? |
| 1.626.7601.22171 | 626,688 (x86) | 2012年11月22日 | ? | ? |
| 1.626.7601.18009 | 626,688 | 2012年11月22日 | KB2786400 [2] | Windows 7 および Windows Server 2008 R2 でのアラビア語テキスト レンダリングのシェーピング動作の既定の設定を変更する更新プログラムが利用可能です。 |
| 1.626.7601.17514 | 799,744 | 2010年11月20日 | Windows 7 SP1 x64 (RTM) | ? |
| 625,664 | Windows 7 SP1 x86 (RTM) | |||
| 1.626.7601.17105 | 625,664 | 2010年9月30日 | Windows 7 SP1 (RC) | 未割り当てコードポイントのサポートを復元する[5] |
| 1.626.7600.20796 | 64万 | 2010年9月21日 | PowerPoint Viewer 2010 (SP1) KB2460050 [3] | ? |
| 1.626.7600.20602 | 637,952 | 2010年1月7日 | Microsoft Office 2010 (RTM) | PR-37:インド系文字におけるゼロ幅ジョイナーの使用の明確化をサポートします。[6]このバージョンはWindows XPで OpenTypeをサポートします。 |
| 1.626.7600.16385 | 643,072 | 2009年8月4日 | Microsoft Office 2010 (ベータ版) | ? |
| 626,688 | 2009年7月14日 | Windows 7 (RTM) | ? | |
| 1.626.7100.0 | 626,688 | 2009年4月22日 | Windows 7 RC | ? |
| 1.626.6002.22402 | 502,784 | 2010年7月11日 | Microsoft Office 2007 (SP2) セキュリティ更新プログラム KB2288621 [4] | MS10-063: 2007 Office スイートのセキュリティ更新プログラムの説明: 2010 年 9 月 14 日 |
| 1.626.6002.18244 | 621,568 | 2010年4月16日 | Windows Server 2008 SP2、Windows Vista SP2セキュリティ更新プログラム KB981322 [5] | MS10-063: Windows Unicode スクリプト プロセッサのセキュリティ更新プログラムの説明: 2010 年 9 月 14 日 |
| 1.626.6002.18005 | 621,568 | 2009年4月11日 | Windows Server 2008 SP2、Windows Vista SP2 | ? |
| 1.626.6001.18000 | 501,760 | 2008年1月19日 | Windows Server 2008 (RTM)、Windows Vista SP1、VOLTSupplementalFiles (2008年7月)、MS VOLT 1.3 [6] (2008年7月31日リリース)、SIL FieldWorks、Keyman Desktop 7.1 | 新しい OpenType テーブル機能をサポートし、よりシンプルなフォントを使用したインド系スクリプトの合字とコンテキスト シェイプのサポートを向上しました。 |
| 1.626.6001.16510 | 502,784 | 2007年4月18日 | Windows Server "Longhorn" (ベータ 3) | ? |
| 1.626.6000.20581 | 502,784 | 2007年4月19日 02:15:55 UTC | Windows Vista修正プログラム KB936176 | 修正: 2 文字を超えるシーケンスでエンコードされた NFD 形式で完全に分解された文字のレンダリングが正しくない (3 つのコードのシーケンスで分解された 114 個のラテン文字に影響) |
| 1.626.6000.16386 | 502,784 | 2006年11月2日 09:44:03 UTC | Windows Vista Ultimate (RTM) | DirectX 10? WDDM? |
| 1.626.5756.0 | 502,784 | 2006年10月13日 | Microsoft Office 2007 Ultimate (RTM) | オリヤー語とカンナダ語の文字 をサポート |
| 1.615.5384.4 | 495,616 | 2006年6月17日 | Windows Vista(ベータ2) | DirectX9? |
| 1.614.5315.0 | 464,896 | 2006年3月13日 | Microsoft Office 2007 (ベータ 2) | OpenType の印刷機能? |
| 1.613.5291.0 | 492,544 | 2006年1月4日 | Windows Vista(ベータ1) | マイクロソフトVOLT 1.2 [7] |
| 1.609.5219.0 | 480,256 | 2005年8月17日 | Microsoft Office 12 Professional(ベータ 1) | OpenType の印刷機能? |
| 1.606.5065.1 | ? | ? | サードパーティ製ソフトウェア | モンゴル文字をサポート |
| 1.606.5078.0 | ? | ? | SILフォントの修正プログラム | 修正: ラテン文字の結合マークシーケンスが正しくレンダリングされない場合がある |
| 1.601.5022.8 | 438,272 | 2005年1月7日 | Microsoft シンハラ語有効化パック (XP 0.42 用) | シンハラ文字をサポート |
| 1.473.4067.15 | 424,960 | 2004年10月22日 | サードパーティ製ソフトウェア | Microsoft Visual OpenType レイアウト ツール (VOLT) 1.1.225 アップデート |
| 1.473.4067.0 | 424,960 | 2004年10月22日 | サードパーティ製ソフトウェア | マラヤーラム語のスクリプトをサポート; VOLTSupplementalFiles (2004 年 11 月); CGJ による 3 つの発音区別記号までのレンダリングの改善 |
| 1.471.4063.0 | 424,960 | 2004年2月4日 | Microsoft Office 2003(修正)、SIL FieldWorks(Speech Tools Phonology Assistant 3.0.1) | ? |
| 1.471.4030.0 | 413,184 | 2004年4月15日 | Microsoft Office 2003、Google Earth | |
| 1.468.4015.0 | ? | ? | パラテキスト6 | チベット文字をサポートします。 |
| 1.468.4011.0 | ? | ? | ? | |
| 1.460.3707.0 | ? | ? | MS ボルト 1.1.206 | クメール文字をサポート |
| 1.453.3665.0 | ? | ? | VOLTSupplementalFiles(2002年8月) | ? |
| 1.422.3790.1830 | 364,032 | 2005年3月30日 | Windows Server 2003 (SP1) | 修理? |
| 1.421.3790.0 | 353,280 | 2003年3月25日 | Windows Server 2003 | DirectX、GDI+、および新しいディスプレイ ドライバー モデルのサポート |
| 1.420.2600.5969 | 406,016 | 2010年4月16日 | Windows XP (SP3) セキュリティ更新プログラム KB981322 [8] | MS10-063: Windows Unicode スクリプト プロセッサのセキュリティ更新プログラムの説明: 2010 年 9 月 14 日 |
| 1.420.2600.5512 | 406,016 | 2008年4月14日 | Windows XPビルド 5512 (SP3) | 修理? |
| 1.420.2600.3163 | 406,016 | 2007年6月26日 | Windows XP (SP2) 修正プログラム KB939450 [9] | 修正: GetCharacterPlacement関数が予期せずゼロを返す |
| 1.420.2600.2791 | 406,016 | 2005年11月5日 | Windows XP (SP2) 修正プログラム KB910466 [10] | 修正: Windows XP Service Pack 2 を実行しているコンピュータで「MEM_BAD_POINTER」エラー メッセージが表示される場合があります |
| 1.420.2600.2180 | 406,528 | 2004年8月12日 | Windows XPビルド 2180 (SP2) | ベンガル語とマラヤーラム語のスクリプトをサポート。複雑なラテン語(ベトナム語用)をサポート。FIX: 声調の連結 |
| 1.409.2600.1106 | 339,456 | 2002年8月29日 | Windows XPビルド 1106 (SP1) | ? |
| 1.408.2600.1020 | 339,456 | 2002年4月17日 | インターネット エクスプローラー6.0.2800.1106 (SP1) | ? |
| 1.407.2600.0 | 339,456 | 2001年8月17日 | ウィンドウズXP | Thaana、グジャラート語、カンナダ語、グルムキー語(パンジャブ語)、シリア語、テルグ語の文字 をサポート |
| 1.405.2416.1 | 325,120 | 2001年1月15日 | Microsoft Office XP (2002)、Microsoft Word 2000 (SP1) | ヘブライ語、デーヴァナーガリー語、タミル語の文字を 完全にサポート |
| 1.400.2411.1 | 323,072 | 2000年12月13日 | インターネットエクスプローラー6 [11] | ? |
| 1.325.2195.6692 | 315,664 | 2003年6月19日 | Windows 2000 SP4 (?) | ? |
| 1.325.2195.? | ? | 2001年9月25日 | Microsoft Windows Installer 2.0 再頒布可能パッケージ ( Windows 95 /98/Me 用) KB827763 | Windows 95 および 98 上の Powerpoint 2003 (およびそれ以降) プレゼンテーションの Microsoft ビューア (少なくとも 98SE が必要) に必要 |
| 1.325.2195.1340 | 315,664 | 2000年7月21日 | Windows 2000 SP1 | アラビア語の文字を完全にサポート |
| 1.325.2180.1 | 323,584 | 2000年6月8日 | ウィンドウズミー | 双方向および複雑なレイアウトのスクリプト用の API が改善されました。アラビア語とヘブライ語のスクリプトに対する最低限のサポート (コンテキストに応じた文字形式はなく、フォントの互換性のある文字マッピングが必要です) |
| 315,152 | 2000年4月26日 | Microsoft Office XP 用 Microsoft グローバル IME | ||
| 315,152 | 1999年11月30日 | Internet Explorer 5.5 リリース、SP1 および SP2 | ||
| 1.175.0.1 | 274,432 | 1999年4月5日 | ウィンドウズ98SE | 最初の安定した Uniscribe API。分解された発音区別記号付きのシンプルなアルファベット文字(ラテン文字、ギリシャ文字、キリル文字) をサポート |
| 264,976 | 1999年1月28日 | インターネット エクスプローラー5.01 | ||
| 1.163.1890.1 | 268,288 | 1998年9月22日 | サードパーティ製ソフトウェア | 多言語テキストレイアウトと複合スクリプト(MTLCS)スナップショット(開発者向け早期リリース) |
ユニバーサルシェーピングエンジン
複雑なテキストレイアウトを持つ文字体系では、タイポグラフィを正しくレンダリングするために、文脈的かつ非線形的な要件が求められます。これらの要件には、連続する2つの文字を1つの形に結合する合字(ラテン文字、デーバナーガリー文字)、一部の文字を発音上の次の文字の前に書く順序変更(ベンガル文字、シンハラ文字、その他のインド系文字)、そして一部の文字が単語の先頭、中間、末尾のいずれに出現するかに応じて形状を変える必要があるコンテキストシェーピング(アラビア文字、モンゴル文字)が含まれます。
Uniscribeは、サポートされている複雑な文字体系におけるタイポグラフィを処理するために、複数の文字体系固有のシェーピングエンジンを使用しています。これらは、複雑でない文字体系(ラテン文字やキリル文字など)用の汎用エンジンに加えて実装されています。現在使用されているエンジンには、 [3]インド語(ベンガル語、デーヴァナーガリー語、グジャラート語、グルムキー語、カンナダ語など)、アラビア語、ハングル語、ヘブライ語、クメール語、ミャンマー語、タイ語/ラオ語の変種が含まれます。
Unicode規格の複雑さとOpenType仕様の曖昧さにより、複雑なテキストレイアウトの実装が不完全になったり、誤った実装になったりすることがよくあります。スクリプト固有のシェーピングエンジンはケースバイケースで動作し、OpenTypeフォントの共通機能を一貫して処理できないため、OSプログラマやフォント開発者が新しいスクリプトをサポートすることが困難になっています。実装エラーは、既存のドキュメントやフォントとの後方互換性を損なうことなく後から修正することは非常に困難、あるいは不可能であり、多くの場合、新しいOpenTypeレイアウト機能の追加や、既存のフォントおよびタイポグラフィレンダリングエンジンの再設計が必要になります。[3] [7] [8] [9]
Windows 10では、Uniscribeに大規模なリファクタリング作業が行われ、汎用的なシェーピングモデルであるUniversal Shaping Engine(USE)が実装されました。[10]このエンジンは、Unicode標準で定義されたグリフプロパティを直接ベースとしており、専用のシェーピングエンジンを作成するための時間と労力をかけずに、適切なフォントを持つ複雑なスクリプトをサポートできることを期待しています。[4]
USEは、インド文字体系向けに開発された一般化された「ユニバーサル・クラスタ・モデル」を基盤としており、人間の書記体系のスーパーセットをモデル化しています。このエンジンは、複雑な文字体系の各文字を複数のカテゴリ、すなわち基底クラスとサブクラスに分類します。例えば、暫定的なインド文字分類には、一般カテゴリ、音節カテゴリ、位置カテゴリが含まれ、さらに基底母音(数、子音、声調文字、従属母音など)、基底母音(独立母音)、数(ブラーフミー結合数)、末尾子音、中間子音、修飾子音、中間子音、そして上、下、左、右の子音と母音に分類されます。Unicodeシンボル文字列は、明確に定義された規則を用いてUSEクラスのコレクションに変換されます。これにより、グリフ構成が標準的な手順となり、OpenType仕様で定義されている現在の言語機能では不可能な文字間の相互作用が可能になります。[3]
ユニバーサル シェーピング エンジンは、2014 年の OpenType 開発者会議で発表されました。互換性のあるアプローチは、オープン ソースのHarfBuzzテキスト シェイパーでも実装されました。 2020 年の時点で、Windows 10 の USE は合計 70 の複雑な文字を処理します: Adlam、Ahom、Balinese、Batak、Bhaiski、Brahmi、Buginese、Buhid、Chakma、Cham、Chorasmian、Dives Akuru、Duployan、エジプト象形文字、Elymaic、Grantha、Gunjala Gondi、Hanifi Rohingya、ハヌヌー語、ジャワ語、カイティ語、カヤー・リー、カロシュティ語、キタン語小文字、ホジキ語、クダワディ語、レプチャ語、リンブ語、マハジャニ語、マカサル語、マンダ語、マニ教、メルヘン、マサラム・ゴンディ、メデファイドリン、メイテイ・マエク、ミャオ語、モディ語、モンゴル語、ムルタニ語、ナンディナガリ語、ネワ語、ンコ語、ニャケン・プアチュ・モン族、パハウ・モン族、ファグスパ、詩篇パフラヴィ、レジャン、サウラーシュトラ、シャラダ、シッダム、シンハラ、ソグド、古ソグド、ソヨンボ、スンダ、シロティ・ナグリ、タガログ、タグバンワ、タイ・レ、タイ・タム(限定サポート)、タイ・ベト、タクリ、チベット、ティフィナグ、ティルフタ、ワンチョ、ヤジディ教徒とザナバザル広場。[10]
バージョン
UniscribeはWindows 2000から利用可能でしたが、Uniscribeの新しいバージョンでは、他の文字体系のサポートなど、より多くの機能が追加されました。以前のアップデートではアラビア語とヘブライ語、その後タイ語とベトナム語の表示がサポートされました。Windows XP以降では、南アジアおよびアッシリア語の文字体系のサポートがさらに拡大されました。
参照
参考文献
- ^ 「Windows 7: Direct2DとDirectWriteの紹介」Channel 9. PDC2008. Microsoft Corp. 2008年10月29日. 2021年6月1日閲覧。
- ^ 「Windows のスクリプトとフォントのサポート」。2014年12月25日時点のオリジナルよりアーカイブ。
- ^ abcd John Hudson (2016年5月10日). 「Universal Shaping Engine用フォントの作成」(PDF) . Tiro Typeworks . 2020年6月9日閲覧。
- ^ ab Blog、Windows Experience; Glass、Andrew(2015年2月23日)。「Windowsが世界の言語を形作る」Windows Experience Blog。
- ^ 「RE: Symbolaフォント(旧: James KassとCode2000フォント)」 。 2011年1月29日閲覧。
- ^ パブリックレビュー第37号、インド文字におけるゼロ幅結合子の機能の明確化と統合に関する提案、Unicodeコンソーシアム
- ^ 「現在の OpenType レイアウト実装におけるインド語タイポグラフィの問題点 - John Hudson」(PDF)。
- ^ 「Indic2 OpenType レイアウトの修正 - John Hudson」(PDF)。
- ^ 「シェーピングを超えて OpenType タイポグラフィの一般モデルに向けて - John Hudson」(PDF)。
- ^ ab 「Universal Shaping Engine用OpenTypeフォントの作成とサポート - タイポグラフィ」。2022年9月30日。
- 注記
- ユニスクライブ
- Microsoft タイポグラフィ
- MSDN の Uniscribe
- 夏期言語学研究所。Uniscribeバージョン
外部リンク
- Windows 2000でusp10.dllを更新する方法
- Uniscribeバージョン
- Uniscribe の紹介と優れたデモ