@font-face を使用して Web ページに特殊文字を実装する (カスタム フォントを作成する)

@font-face を使用して Web ページに特殊文字を実装する (カスタム フォントを作成する)

数日前、CSS を使用して三角形の矢印を実装する方法について記事を書きました。 目的の効果は達成されましたが、まだいくつか問題があります。 たとえば、矢印の位置をまだ特定する必要があります。また、現在実現できるのは三角形の矢印のみです。他の文字を使用する場合は、やはり画像を使用する必要があります。そこで最近、もっと良い方法を探していたのですが、ついにそれを見つけました...

まず、C ドライブの Fonts フォルダに移動して WEBDINGS.TTF フォントを探し、デスクトップにコピーします。次に、カスタムフォントを作成する機能を実現できる「fontforge」というソフトウェアが必要です。これを使用して、自分に適したフォントライブラリを作成します。

ダウンロード後、解凍し、WEBDINGS.TTF フォントをコピーし、fontforge.bat を実行してフォント ファイルを選択すると、次のインターフェイスが表示されます。

グラフィックキャラクターが沢山ありますね。それらの多くは以前から使われていたものですが、当時は絵で実装されていたのでしょうか?

次に必要なのは、必要な文字を選択して別のフォント ファイルに保存することです。WEBDINGS.TTF ファイル内の文字のほとんどは使用されていないため、このファイルを文字ライブラリとして直接使用するには少し大きすぎます。したがって、必要なものだけを選択する必要があります。操作するには、まず空のフォント ファイルを作成し、[ファイル] -> [新規] をクリックして、必要な文字を選択して、新しく作成したフォント ファイルにコピーします。例:

次に保存して「フォントの生成」を選択します。

次に、.ttf 拡張子でファイルを保存します。

このようにして、フォント ファイルが準備されます。しかし、これで終わりではありません。IE は .eof しか認識せず .ttf は認識しないため、他のフォント ファイルを生成する必要があります。この問題については、かなり前に記事を書いていて、操作方法は説明されているので、ここでは詳しく紹介しません。記事のリンクは、「Web ページで任意のフォントを使用する実際の操作」です。

最後に、操作が面倒だと感じる場合は、よく使用される矢印を中心にまとめた文字ライブラリをダウンロードできます。
ダウンロード

一般的に、これにより読み込まれるページファイルの合計サイズが増加しますが、独自のキャラクターライブラリがある場合は、操作性がより多様化します。文字のサイズや色、さらには影や反転などの CSS3 効果も制御できますが、画像の色を変更したい場合は、画像を修正するか、新しく作成する必要があり、柔軟性に欠けます。

PS: 私の EonerCMS では、ウィンドウの右上と右下のボタンが文字に置き換えられており、効果はかなり良好です。

PS2: アイデアを提供してくれた @小熊 に感謝します。文字の回転は CSS3 とフィルターで実現できるため、文字ライブラリを作成するときに、4 方向の矢印を 1 つだけ記録し、コードで回転させて、文字ライブラリ ファイルのサイズを縮小することができます。

<<:  docker compose を使用して FastDfs ファイル サーバーをインストールする詳細な例

>>:  HTML ページ スタイルの !-- -- の機能は何ですか?

推薦する

Nginx で Brotli 圧縮アルゴリズムを有効にする方法の例

Brotli は、Zopfli よりも 20 ~ 26% 高い圧縮率を実現できる新しいデータ形式です...

Reactソースコードにおけるビット演算について詳しく説明します

目次序文いくつかの一般的なビット操作ビットAND (&)ビットOR (|)ビット否定(~)マ...

Linuxの運用と保守、基本的なプロセス管理、リアルタイム監視と制御

目次1. バックグラウンドで実行されるジョブ2. 信号を使用してプロセスを制御する基本的なプロセス管...

MySQLクエリ最適化プロセスを理解する

目次パーサーとプリプロセッサクエリオプティマイザーMySQL クエリの最適化には、解析、前処理、最適...

Linux での crontab スケジュール実行コマンドの詳細な説明

LINUX では、定期的なタスクは通常、cron デーモン プロセス [ps -ef | grep ...

MySQLデータベースのマスタースレーブレプリケーションと読み取り書き込み分離に関する詳細なチュートリアル

目次序文1. MySQL マスタースレーブレプリケーション1. サポートされているレプリケーションの...

dockerを使用してdubboプロジェクトをデプロイする方法

1. まず、Springbootを使用して簡単なDubboテストプログラムを構築し、関連する依存関係...

js タグ構文の使用法の詳細

目次1. ラベルステートメントの紹介2. ラベルステートメントの使用序文:日常の開発では、プログラム...

CSS でのフレックスレイアウトの詳細な説明

フレックス レイアウトは、エラスティック レイアウトとも呼ばれます。任意のコンテナーをフレックス レ...

Vue要素ヘッダーにスラッシュを追加するための実装コード

<テンプレート> <div class="アプリコンテナ"&...

JavaScript での HTML キャンバスとページ ストレージ テクノロジの使用に関する詳細な説明

目次1. JavaScriptはHTMLでキャンバスを使用する2. ページストレージ技術1. Jav...

Linux での MySQL 5.6.33 のインストールと設定のチュートリアル

このチュートリアルでは、LinuxでのMySQL 5.6.33のインストールと設定方法を参考までに紹...

MySQL の 3 つの Binlog 形式の概要と分析

1つ。 Mysql Binlog フォーマットの紹介 Mysql binlog ログには、State...

Linux ファイルシステムの説明: ext4 以降

今日は、ext3 や他の以前のファイル システムとの違いを含め、ext4 の歴史について説明します。...