フォントを作成・編集できるクロスプラットフォームのオープンソースソフト

FontForge のアイコン

FontForge

ダウンロード支援

バージョン
20230101 / 20251009
更新日
2025/10/09
対応 OS
Windows 7/8/8.1/10, Mac, Linux
言語
日本語
価格
無料
提供元

フォントを作成したり、編集したりできるクロスプラットフォームのオープンソースソフトです。
フリーハンドや各ツールを利用して1文字、1文字作成し、Postscript、Open Type、True Type、SVG フォント、Web Open Font などのフォントとして出力できます。
海外製で日本語に対応していますが、一部英語表記が残ります。

FontForge の使い方

ダウンロード と インストール

  1. 提供元サイトの Windows 版ダウンロードページへアクセスし、「Confirm and Download」ボタンをクリックします。
    ※ Mac 版、Linux 版をダウンロードするは、提供元サイトのダウンロードページからそれぞれのリンクをクリックしてダウンロードします。
  2. 表示されたページで「Download 2023-01-01 Release Installer (.exe)」ボタンをクリックしてダウンロードします。
  3. ダウンロードしたセットアップファイル(FontForge-2023-01-01-Windows.exe)からインストールします。

使い方

フォントを作成する

簡単なフォント作成の流れを紹介します。

本ソフトを起動すると「フォントを開く」画面が表示されます。
ここでは既存フォントを編集せずに新規でフォント作成するため、「新規」ボタンをクリックします。
本ソフト起動時 - フォントを開く

本ソフト起動時 - フォントを開く


「フォントビュー」画面が表示されます。
「フォントビュー」画面

「フォントビュー」画面



フォントに名前を付ける
  1. メニューバーから「エレメント」⇒「フォント情報」とクリックします。
  2. 「フォント情報」画面が表示されます。
    「フォント名」に名前を入力して「OK」ボタンをクリックします。
    ※ Copyright(著作権表示)なども入力できます。
    ※ 「フォント名」にはスペースを利用できません。

グリフを作成する
一文字、一文字を作成していきます。
  1. 「フォントビュー」画面で作成したい文字をダブルクリックします。
    ※ ここでは「D」をダブルクリックしたものとします。
  2. 「D」のキャラクタービュー画面が表示されます。
    画面左のツールを利用して、文字を作成していきます。
    ここでは 頂点を追加 ツールのみを利用して作成します。
    ※ 外側の枠は時計回りに点を打ち、内側の枠は反時計回りに点を打ちます。
    参考サイトの提供元サイトのチュートリアルにて、詳細な記述を確認できます。
    「キャラクタービュー」画面

    「キャラクタービュー」画面

  3. 「D」のグリフを作成したら画面右上の「×」をクリックして、キャラクタービュー画面を閉じます。
    「フォントビュー」画面に戻るので、同様に他の文字についてもグリフを作成していきます。
    作成した文字が表示される

    作成した文字が表示される


メトリックを調整する
  1. 「フォントビュー」画面にて、メニューバーから「メトリック」⇒「メトリックウィンドウを開く」とクリックします。
  2. 「メトリックビュー」画面が表示されます。
    画面上部のテキストボックスにメトリックを確認したい文字を入力すると、画面上にグリフが表示されます。
    ※ ここでは「ABCDEF」と入力します。
    「メトリックビュー」画面

    「メトリックビュー」画面

  3. 画面下部の「左サイドペア」、「右サイドペア」の数値を調整して、文字と文字の間隔を調整します。
  4. 調整が終わったら画面右上の「×」をクリックして閉じます。

フォントを出力する
  1. 「フォントビュー」画面にて、メニューバーから「ファイル」⇒「フォントを出力」とクリックします。
  2. 「Generate Fonts(フォントを生成する)」画面が表示されます。
    画面上部のプルダウンから保存したいフォルダーを選択し、「PS Type 1 (バイナリ)」プルダウンをクリックして生成したいフォントタイプを選択します。
    ※ PS Type1、Open Type、True Type、SVGフォント、Web Open Font などから選択します。
    フォントを出力する

    フォントを出力する

  3. 「生成」ボタンをクリックすると、フォントを出力します。
    ※ 出力するフォントタイプの規格に沿っていない場合、「問題が見つかりました」ウィンドウが表示されます。「生成」ボタンをクリックすると、強引に生成することもできます。ここでは問題が見つかっても「生成」ボタンをクリックして先に進めます。

作成したフォントを利用する
  1. 作成したフォントファイルをダブルクリックすると、作成したフォントを見ることができます。
    作成したフォントの表示

    作成したフォントの表示

  2. フォントファイルの右クリックメニューから「インストール」をクリックしてフォントをインストールします。
    これで Windows で利用できるようになります。
  3. メモ帳でフォントを利用するには、メモ帳のメニューバーから「書式」⇒「オプション」とクリックします。
  4. 「フォント」画面が表示されるので、作成したフォント名を選択して「OK」ボタンをクリックします。
    メモ帳の「書式」⇒「フォント」

    メモ帳の「書式」⇒「フォント」

  5. フォントが反映されます。
    メモ帳で作成したフォントを利用する

    メモ帳で作成したフォントを利用する


参考サイト


更新履歴

機械翻訳で日本語にしています。
Version 20251009
(2025/10/09)
  • pyスクリプトのドキュメントを更新 (@iorsh、#5180)
  • GitHub CIランナーを更新 (@iorsh、#5328)
  • Croudinソースからpoファイルを更新 (@skef、#5330)
  • MacOS GitHubランナーで一貫性のあるPythonを使用する (@iorsh、#5331)
  • Windows GitHubランナーのCIを修正 (@iorsh、#5335)
  • ルックアップフラグの解析を修正 (@iorsh、#5338)
  • #5332を修正: グリフファイル名 uXXXXX (@quadrimus、#5333)
  • ハーモナイゼーションを堅牢にし、ハーモナイゼーション後のハンドルがゼロになるのを回避 (@linusromer、#5262)​​
  • 厳密なプロトタイプの警告を非表示にする (@MaddTheSane、#5313)
  • バッファ不足によるparsegvar()のクラッシュを修正 (@iorsh、#5339)
  • 失敗したiconv変換を処理。未処理の実行パスが UB だったため、セグメントフォールトが発生しました(@ViliusSutkus89、#5329)
  • CMake 関数 _get_git_version() を修正(@iorsh、#5342)
  • fontforge.font.bitmapSizes 設定メソッドで個別のタプルのカプセル化を必要としないようにする(@nabijaczleweli、#5138)
  • アンカーポイントの nltransform を修正(@mf2vec-dev、#5345)
  • generateFontPreHook ではなく generateFontPostHook が呼び出される問題を修正(@teatimeguest、#5226)
  • usDefaultChar を常に 0 (.notdef) に設定する(@dscorbett、#5242)
  • Python ドキュメントにフォント属性とメソッドを追加(@mf2vec-dev、#5353)
  • Python の del c[i:j] で発生するセグメントフォールトを修正(@mf2vec-dev、#5353) #5352
  • 内部WOFF2フォーマットの自動選択(@iorsh、#5346)
  • FAQのタイプミス修正(@Jamim、#5355)
  • Python APIにfont.style_set_names属性を追加(@mf2vec-dev、#5354)
  • バルクテスター(@iorsh、#5365)
  • Splinefontシェルの呼び出しを修正(@pkvanca、#5367)
  • Windows言語IDリストを修正(@dscorbett、#5359)
  • SFDの補助プレーン(絵文字など)をサポート(@iorsh、#5364)
  • マルチコードポイント名のpsaltnamesを削除(@dscorbett、#5305)
  • ドキュメント:インストール手順にsudoが不足していた点を追加(@gekkedev、#5300)
  • SFD読み取り時のデータ破損を修正(@iorsh、#5380)
  • 垂直メトリックの比較チェック#5372 で @Yukinoroh が TTC を生成する際に使用しました
  • #5379 で @jaklein が FT_PIXEL_MODE_MONO を 2 グレーレベルとして扱います
  • …(省略)

Version 20230101
(2023/01/01)
  • 予約されたコード ポイントのブロック名を表示します。
  • ボタン/タブセットのホイール スクロールに応答しない
  • gfilechooser.c: ファイル タイプを変更したときの動作を修正
  • 線に隣接するポイントのコントロールとドラッグの処理の改善
  • プログラムルートの解決を修正
  • nonextcp 編集の欠落を修正
  • Type3 フォントの PDF からの ToUnicode 抽出のサポート
  • リソース ファイルと Windows アプリケーション マニフェストを追加
  • PDF からの Type3 フォントの名前抽出を修正
  • cmake: fonttools と pycontrib をインストールします
  • InfoPlist.strings ファイル名を修正。
  • 絶対パスの正規化を修正
  • PDF からのグラフィックス ストリームの読み取り中に、非配列の cm 変換を処理する
  • Type3 フォントのグラフィック ストリームからの rect 抽出を修正
  • jamo 機能に対して提案するルックアップ タイプを変更します。
  • simple での行処理の改善
  • Adobe-Identity-0 CID フォントに「cmap」を使用
  • 新しい nonext/prevcp 規則に関連する ChangeGlyph 計算を修正
  • Docs 合成グリフ
  • FVSplineFontPieceMeal: 変換を適用する前に、clut が存在することを確認します
  • 言語とスクリプトのリストを展開します。
  • Python font.transform() へのフラグの追加
  • importOutlines からの SplineChar 幅の設定をサポートします。
  • GNU Hurd で一時的に「拡張」マクロの定義を解除
  • GNU/Hurd 互換性のための PATH_MAX と MAXPATHLEN の定義
  • SVG フォントからの上昇と下降のインポートを修正
  • ループ終了時の浮動小数点の悪ふざけを防止 (修正 #5012)
  • fontforgeexe/groupsdlg.c のヌル ポインタ修正の GroupFindLPos()
  • 公開呼び出しの外側の描画を修正
  • もう 1 つのタイプミスを修正
  • GitHub アクションのアップグレード
  • gutils/fsys.c の GFileMimeType() でのメモリ アンダーフローを防止します。
  • エディターの状態を保存するための設定を追加します。
  • splineutil.c: nan 入力でのハングを防止
  • BDF のコンプレッサーに送信されたシェル引用符コマンド
  • pfadecrypt のバグを修正
  • libfontforge.soSFDUTF7 関数を含めます。
  • splinefit.c: マージ/単純化の改善
  • RFE: [FEAT] 存在しないグリフへの参照が OpenTy に存在する場合…
  • docs: Python スクリプト - font.mergeFeature を boo の詳細で更新…
  • PR 4685 の後の CharString double-moveto のロジックを修正
  • Unicode 15.0.0 にアップグレードし、スクリプト リストを修正および拡張します。
  • スクリプト ページのリンク切れを修正
  • man ページのタイプミスを修正
  • ルーラー リンガー ウィンドウとレイヤー変更ダイアログのペイント動作を修正
  • fontinfo.c: 初期化されていない other_pos によるクラッシュを修正
  • tottfgpos: 16 ビット フィールドに関する不要な警告を修正
  • ufo.c: ガイドライン キーを出力
  • fvmetrics.c: 1033bc6 の部分的な復帰
  • Crowdin からの翻訳を更新
  • woff2 デコードを修正
  • 1 つのグリフが複数のスロットにある場合の Unicode cmap エンコーディングを記録します。

Version 20220308
(2022/03/08)
  • 主な更新
    ・Python プラグインのサポート(#4642、#4682、#4671)@skef
    ・オーバーホールされたリソース/外観管理(#4704)@skef
    ・改善のマージ/簡素化(#4567、#4697)@linusromer
    ・Unicode サポートを Unicode 14.0.0 に更新し、名前リスト機能を直接統合しました。 (#4810)@jtanx
    ・変曲点の追加/バランス/調和(#4900)@linusromer
    ・Macバンドル/スタートアップの修正(#4827)@jtanx
    ・言語システムタグリスト/スクリプト範囲/機能リストの更新(#4561、#4852、#4854、#4855)@dscorbett
  • ビルドの変更
    ・サポートされている Python の最小バージョンは Python 3.6 になりました
    ・Libuninameslist は使用されなくなったか、不要になりました
    ・FontForge はデフォルトで -Wall でコンパイルされるようになりました

※ 本ソフトは TranslucentFoxHuman 様 のご推薦により掲載させていただきました。(掲載日:2020年05月04日)

ユーザーレビュー

  • 5

    この度もリクエストしたソフトのページをまとめてくださり、ありがとう…

    TranslucentFoxHuman
    TranslucentFoxHuman
    58
    Windows 10

    この度もリクエストしたソフトのページをまとめてくださり、ありがとうございます。

    意外とフォントを作成できるソフトっていうのは、なんだか少なかったようにも思えます。

    過去に、自分の独特な手書きの字を再現するのに利用したことがあり、しばらく熱中してやっていました。

    趣味みたいな感じで、フォントづくりっていうのも面白いと思います。

    文字数が多くなると、ちょっとだけ大変かなっては思いますが、記号や英数字だけなら、対応した部分に文字を描いていくだけなので、手軽にできるのではないかと思います。

    絵文字を自作して、ドキュメントで利用することもできますから、仕事でわかりやすい資料を作成したり、友達のためにユーモアのある文字で手紙を作ってみたり、使い方はたくさんありそうです。

    9人が参考になったと回答しています。
    このレビューは参考になりましたか?