Persian AI Font Hub — ペルシャ語向けAIフォント変更拡張
概要
このリポジトリ「Persian AI Font Hub」は、Web上のAIチャットやサービスで表示されるペルシャ語テキストのフォントを「وزیرمتن(Vazirmatn)」に統一して見た目を改善するChrome拡張です。既定フォントだと崩れて見えたり可読性が低いケースを解消するため、コンテンツスクリプト(content.js)で対象ページにスタイルを注入し、フォントファミリの上書きや必要なフォント読み込みを行います。設定や操作は不要で、インストールすると指定したAIサービスに対して自動的に適用されることを目的としています。開発者情報やバージョン情報もREADMEに記載され、シンプルな構成で配布・利用しやすい設計です。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 2
- ファイル数: 8
- メインの言語: HTML
主な特徴
- ペルシャ語(فارسی)表示を標準フォント「Vazirmatn」に統一して可読性を向上。
- ChromeコンテンツスクリプトでAIサービスのUIに直接スタイルを注入、設定不要で動作。
- 軽量でシンプルな実装(README・manifest・content.js等の最小構成)。
- 多くのWebベースAIに適用できるようマッチ対象を指定可能(manifestによる制御)。
技術的なポイント
この拡張は典型的なChrome拡張の構成で、manifest.jsonで動作対象のURLパターンやコンテンツスクリプトを宣言し、content.jsが実際にWebページへ介入してフォント関連のスタイルを適用する仕組みです。実装方針としては、ページ全体の要素に対してfont-familyを上書きするCSSを注入するか、@font-faceでVazirmatnを読み込み、優先的に使用するようにする方法が考えられます。AIチャットは動的にDOMを生成・更新するため、単発の書き換えでは不十分なことが多く、MutationObserverなどで変化を監視して新しく挿入された要素にもスタイルを再適用する工夫が必要になります。
また、ペルシャ語は右から左に書くRTL言語であり、フォント置換時に字間や行間、文字の結合(合字)などが崩れないよう注意が必要です。良質なWebフォントを使用すると字形や合字が適切に処理され、読みやすさが向上します。manifestの権限設定は最小限に留め、content_scriptsのmatchesで対象ドメインを限定することでセキュリティとプライバシーの懸念を低減します。アイコン(icon128.png)などのアセットを含め、配布可能なパッケージとして整えている点も実用的です。
改善点としてはオプションページを追加してユーザーがフォントを切り替えたり、適用するサイトをオン/オフできるようにすること、フォントを拡張の中に同梱してオフライン対応にすること、さらにmanifest v3のService Workerベースの背景処理やパフォーマンスの最適化(スタイル注入のデバウンスや適用範囲の最小化)などが挙げられます。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- README.md: file
- content.js: file
- icon128.png: file
- manifest.json: file
…他 3 ファイル
まとめ
ペルシャ語のAI対話を美しく読みやすくするシンプルで実践的なChrome拡張です。
リポジトリ情報:
- 名前: persian-ai-font-hub
- 説明: change AI language
- スター数: 1
- 言語: HTML
- URL: https://github.com/Cloner311/persian-ai-font-hub
- オーナー: Cloner311
- アバター: https://avatars.githubusercontent.com/u/27977021?v=4
READMEの抜粋:
🚀 Persian AI Font Hub | اصلاح فونت فارسی هوش مصنوعی
تجربه گفتگو با هوش مصنوعی، اینبار با فونت استاندارد و زیبای «وزیرمتن» ✨
آیا از خواندن متنهای فارسی با فونتهای پیشفرض و نازیبا در Gemini یا ChatGPT خسته شدهاید؟ این اکستنشن کروم، ظاهر تمام سرویسهای هوش مصنوعی را دگرگون می…