React-Google-Fontsを使ってCreate-React-Appプロジェクトにフォントを追加する方法

2024-04-02

Create-React-Appプロジェクトにフォントを追加するにはいくつかの方法があります。ここでは、最も一般的な方法であるWebフォントとローカルフォントの2つを紹介します。

Webフォントは、Google Fontsなどのサービスから提供される、インターネット経由で読み込むことができるフォントです。この方法のメリットは、ファイルサイズが小さく、簡単に導入できることです。

手順

  1. Google Fontsなどのサービスで好きなフォントを選びます。
  2. フォントのCSSコードをコピーします。
  3. Create-React-Appプロジェクトのpublic/index.htmlファイルを開きます。
  4. <head>タグ内に、コピーしたCSSコードを貼り付けます。
  5. プロジェクトのCSSファイルで、追加したフォントを指定します。

Google Fontsから「Noto Sans」フォントを追加する場合

  1. Google Fontsにアクセスし、「Noto Sans」を検索します。 2.「Select this style」をクリックします。 3.「@import」のCSSコードをコピーします。
  2. プロジェクトのApp.cssファイルで、以下のコードを追加します。
body {
  font-family: 'Noto Sans', sans-serif;
}

ローカルフォントは、自分のコンピュータに保存されているフォントです。この方法のメリットは、Webフォントよりも多くのフォントを選択できることです。

  1. 好きなフォントファイルをダウンロードします。
  2. Create-React-Appプロジェクトのpublic/fontsディレクトリに、ダウンロードしたフォントファイルをコピーします。

NotoSans-Regular.ttfというフォントファイルをローカルに保存する場合

  1. ダウンロードしたファイルをpublic/fontsディレクトリにコピーします。
@font-face {
  font-family: 'Noto Sans';
  src: url('../fonts/NotoSans-Regular.ttf');
}

body {
  font-family: 'Noto Sans', sans-serif;
}

注意事項

  • Webフォントを使用する場合は、フォントファイルの著作権を確認する必要があります。



<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Create React App</title>
  <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;700&display=swap">
</head>
<body>
  <div id="root"></div>
</body>
</html>
body {
  font-family: 'Noto Sans', sans-serif;
}

ローカルフォント

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Create React App</title>
</head>
<body>
  <div id="root"></div>
</body>
</html>
@font-face {
  font-family: 'Noto Sans';
  src: url('../fonts/NotoSans-Regular.ttf');
}

body {
  font-family: 'Noto Sans', sans-serif;
}

補足

上記は基本的なサンプルコードです。実際のプロジェクトでは、必要に応じてコードを編集してください。




フォントアイコン

Font Awesomeなどのサービスから提供される、アイコンフォントを使用する方法です。アイコンフォントは、Webフォントの一種ですが、文字だけでなくアイコンも表示することができます。

  1. Font Awesomeなどのサービスで好きなアイコンを選びます。
  2. コードを貼り付け、アイコンを表示します。

Font Awesomeから「fa-home」アイコンを追加する場合

  1. 以下のコードを追加します。
import React from 'react';
import ReactDOM from 'react-dom';

const App = () => {
  return (
    <div>
      <i className="fas fa-home"></i>
    </div>
  );
};

const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);

ライブラリ

React-Google-Fontsなどのライブラリを使用する方法です。ライブラリを使用すると、Webフォントの読み込みや設定を簡単に済ませることができます。

  1. ライブラリをインストールします。
npm install react-google-fonts
  1. App.jsファイルで、ライブラリを使用します。
import React from 'react';
import ReactDOM from 'react-dom';
import GoogleFontLoader from 'react-google-fonts';

const App = () => {
  return (
    <div>
      <GoogleFontLoader
        fonts={[
          {
            family: 'Noto Sans',
            weights: [400, 700],
          },
        ]}
      />
      <h1>Hello, world!</h1>
    </div>
  );
};

const rootElement = document.getElementById('root');
ReactDOM.render(<App />, rootElement);
  • ライブラリを使用する場合は、ライブラリのドキュメントをよく読んでください。

css reactjs fonts


グリッドシステムを使って Bootstrap NavBar の項目を配置する方法

このNavBarの項目を左寄せ、中央寄せ、右寄せに配置するには、いくつかの方法があります。Bootstrapのグリッドシステムを利用することで、簡単に項目を配置できます。左寄せ上記のコードでは、mr-auto クラスを navbar-nav 要素に追加することで、左側に配置しています。...


ReactJSでonClickイベント時に複数の関数を呼び出す:アロー関数、関数合成、イベントオブジェクト、カスタムフック

最もシンプルで汎用性の高い方法です。イベントハンドラにアロー関数を使用し、その中で複数の関数をコールバック関数として呼び出す方法です。メリット:シンプルで分かりやすいコード汎用性が高いコード量が少し増える複数の関数を1つの関数にまとめる関数合成を使用する方法です。コードを短くできますが、可読性が少し低下する可能性があります。...


Reactでブーリアン値をレンダリングする:パフォーマンスとアクセシビリティを考慮した方法

JavaScript では、ブーリアン値 (true または false) を直接 JSX でレンダリングすることはできません。これは、JSX が HTML に似ているように設計されているためであり、HTML ではブーリアン値を直接表示することは想定されていません。...


Next.jsの起動ポートをnext.config.jsファイルで設定する方法

ここでは、Next. jsでポートを設定する方法について、以下の3つの方法を紹介します。環境変数を使うNext. jsは、PORT環境変数を使用してポート番号を設定することができます。これは、最も簡単で一般的な方法です。.env. localファイルを作成します。...


create-react-app 4.0.1以降が動作しない問題:原因と解決策

2020年11月下旬頃から、create-react-app 4.0.1以降でプロジェクトを作成しようとすると、以下のエラーが発生するケースが報告されています。原因この問題は、create-react-app 及び react-scripts のバージョン 4.0.0 と TypeScript 4.1.0 以降が組み合わさることで発生するバグが原因でした。現在は修正済みですが、当時は以下の状況で問題が発生していました。...


SQL SQL SQL SQL Amazon で見る



Webフォントを使いこなす!font-familyと@font-faceの詳細解説

CSSで複数のフォントファイルを指定する方法は2つあります。font-family プロパティで複数のフォント名をカンマ区切りで指定します。この例では、Noto Sans Japanese フォントが利用できない場合は 游ゴシック フォントが、どちらも利用できない場合はブラウザのデフォルトフォントが適用されます。