ホームページ > バックエンド開発 > Golang > コードはフォント ファイルをロードする必要があります。ビルドされたバイナリにフォント ファイルを埋め込む方法

コードはフォント ファイルをロードする必要があります。ビルドされたバイナリにフォント ファイルを埋め込む方法

WBOY
リリース: 2024-02-09 17:27:08
転載
491 人が閲覧しました

コードはフォント ファイルをロードする必要があります。ビルドされたバイナリにフォント ファイルを埋め込む方法

PHP 開発では、フォント ファイルの読み込みが一般的な要件です。ただし、フォント ファイルの可用性と利便性を確保するために、ビルドされたバイナリにフォント ファイルを埋め込むことを検討する場合があります。このようにして、外部フォント ファイルに依存する必要がなくなり、埋め込みフォントをコード内で直接使用できるようになります。では、フォントファイルを埋め込むにはどうすればよいでしょうか?この記事では詳細な答えを提供します。

質問の内容

Go パッケージにこのコードがあります。 cmr10.ttf フォント ファイルをロードする必要があります。したがって、フォント ファイルは、このパッケージを使用するすべての実行可能ファイルの隣に配置する必要があります。

リーリー ###質問###

このパッケージを使用して、実行可能ファイルの隣に

cmr10.ttf

フォント ファイルをコピーすることを回避する方法はありますか? たとえば、ビルドされたバイナリにフォント ファイルを埋め込みます。可能であれば、具体的にどのようにして?

他に試してみるアイデアはありますか?

解決策

go 1.16 以降、go ツールは静的ファイルを実行可能バイナリに直接埋め込むことをサポートしています。

//go:embed

ディレクティブを使用してフォント ファイルのバイナリ データを埋め込むことができます: リーリー

cmr10.ttf

の内容は、コンパイラによって cmr10fontdata 変数に挿入されます。他のオプションについては、「Go プログラムに静的リソースをバンドルする最良の方法は何ですか?」を参照してください。 github.com/deadsy/sdfx/sdf

sdf.loadfont(fname) ヘルパー関数のみを提供するため、 を使用する必要があります。 github.com/golang/freetype/truetype フォント データを解析します。 sdf.loadfont() もこのメソッドをバックグラウンドで使用し、フォント ファイルのバイナリ データを使用して truetype.parse() を呼び出すことに注意してください。 # リーリー

以上がコードはフォント ファイルをロードする必要があります。ビルドされたバイナリにフォント ファイルを埋め込む方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート