テキストシェーピングは、テキストレンダリングの一環として、テキストをグリフのインデックスと位置に変換するプロセスです。 [1]これは、テキストレンダリングプロセスの一部としてフォントレンダリングを補完するものです。フォントレンダリングはグリフを生成するために使用され、テキストシェーピングはレンダリングするグリフと、それらをイメージプレーン上のどこに配置するかを決定します。[2]レンダリングするテキストを指定するために、通常、 Unicodeが使用されます。
テキストシェーピングはラテン文字では大幅に良い結果をもたらしますが、アラビア文字のような複雑なテキストレイアウトを持つ一部の文字では、テキストを読めるようにするためにテキストシェーピングが必要です。[3]
MacOS、iOS、[4]、Microsoft Windowsなど、ほとんどのグラフィカルユーザーインターフェースシステムには、テキストシェーピング機能を備えた独自のネイティブテキストレンダリングエンジンが搭載されています。MicrosoftのUniscribeフレームワークは、プラグイン可能なシェーピングエンジンの使用を可能にしています。[5] MonotypeのWorldTypeシステムもシェーピング機能を提供しています。[6]
オープンソースの世界では、HarfBuzzは人気のテキスト整形エンジンです。HarfBuzzの開発者によると、HarfBuzzはAndroid、Chrome、ChromeOS、Firefox、GNOME、GTK+、KDE、Qt、LibreOffice、OpenJDK、XeTeX、PlayStation、Microsoft Edge、Adobe Photoshop、Illustrator、InDesign、Godot Engineなど、幅広いソフトウェア製品で使用されています。[7]
テキストシェーピングエンジンは、シェーピングモデルと呼ばれる形式でパッケージ化されたシェーピングプロパティとルールの記述を必要とします。シェーピングモデルには、OpenType Layout、Graphite、Apple Advanced Typographyなどがあります。[8]
参照
参考文献
- ^ 「HarfBuzzとは?:HarfBuzzマニュアル」harfbuzz.github.io . 2024年6月23日閲覧。
- ^ 「Shaping – フォント知識」Google Fonts . 2024年6月23日閲覧。
- ^ 「Shaping – フォント知識」Google Fonts . 2024年12月7日閲覧。
- ^ 「言語タグ表 - TrueTypeリファレンスマニュアル - Apple Developer」。developer.apple.com 。 2024年6月24日閲覧。
- ^ Karl-Bridge-Microsoft (2021-01-07). 「Uniscribe - Win32 アプリ」. learn.microsoft.com . 2024年6月25日閲覧。
- ^ 「WorldType | Monotype」www.monotype.com . 2019年10月22日. 2024年6月25日閲覧。
- ^ harfbuzz/harfbuzz、HarfBuzz、2024年6月23日、 2024年6月24日閲覧
- ^ “text-shaping/docs/otl.md at main · typotheque/text-shaping”. GitHub . 2024年6月25日閲覧。