HarfBuzz はテキスト整形エンジンです。主に OpenType をサポートしていますが、Apple Advanced Typography もサポートしています。 HarfBuzz は、Android、Chrome、ChromeOS、Firefox、GNOME、GTK+、KDE、Qt、LibreOffice、OpenJDK、XeTeX、PlayStation、Microsoft Edge、Adobe Photoshop、Illustrator、InDesign、Godot Engine、Unreal Engine などで使用されています。
バグレポート、メーリングリスト、その他の情報については、以下を参照してください。
http://harfbuzz.org/
ライセンス情報については、「コピー」を参照してください。
ユーザーマニュアルおよび API ドキュメントについては、https://harfbuzz.github.io を確認してください。
HarfBuzz の tarball リリースについては、ここをご覧ください。同じ場所には、 libharfbuzz
DLL、 hb-view.exe
、 hb-shape.exe
、およびすべての依存関係を含む Win32/Win64 バイナリ バンドルもあります。
正規のソース ツリーは github で入手できます。
hb.h
に付属する API は、互換性を持たずに変更されることはありません。その他の周辺ヘッダーには小さな変更が加えられる可能性が高くなりますが、繰り返しになりますが、互換性のない方法で API を変更しないように最善を尽くしています。私たちはABIを決して破りません。
Pango と HarfBuzz のどちらが自分に適しているかわからない場合は、Pango vs HarfBuzz をお読みください。
ビルド情報については、BUILD.md を参照してください。
カスタム構成については、CONFIG.md を参照してください。
テストとプロファイリングについては、TESTING.md を参照してください。
テキスト レンダリング スタックの中で HarfBuzz がどのような位置にあるかをよりよく理解するには、State of Text Rendering 2024 を参照してください。ここでは、長年にわたって国際化および Unicode カンファレンスで行われた HarfBuzz に関するプレゼンテーション スライドをいくつか紹介します。
HarfBuzz に関する開発とユーザー サポートの議論は両方とも github で行われます。
バグを報告したりパッチを送信するには、github の問題とプルリクエストを使用してください。
新旧の HarfBuzz メモリ消費量の比較については、これを参照してください。
HarfBuzz (حرفباز) は、ラテン文字を使用して音訳された「OpenType」のペルシア語直訳です。また、「おしゃべり」または「口下手」という意味もあります (これは HarfBuzz の起源となった GNOME プロジェクトへの敬意でもあります)。
背景: もともと、TrueType と呼ばれるこのフォント形式がありました。人々や企業は、Type で終わるすべてのものを型エンジンと呼び始めました。FreeType、CoolType、ClearType などです。そして、TrueType の後継である OpenType が登場しました。そこで、OpenType の実装では、その概念を維持し、ペルシア語の翻訳を使用することにしました。ペルシア語がアラビア文字で書かれていること、OpenType が複雑なスクリプト レンダリングのサポートを追加する TrueType の拡張機能であること、HarfBuzz が OpenType の複雑なテキスト整形の実装であることを考えると、これは適切です。