技術系

faviconをローカルで生成する

技術系

こんにちは、なかにしです。

アプリを作成する際に避けて通れないのがmetaタグ。
タイトルや説明はもちろん、faviconの設定も必要です。

そういえば、ちょっと古めのサイトはfaviconが設定されていないことが多いですよね。

ちょっと調べたところによると、明確な理由は分かりませんが、

・昔はファビコン形式(.ico)への変換が容易ではなかった(敷居が高い)
・見ている人が気にしていなかった(重要性が低い)
・テンプレートやFWにデフォルトで含まれていなかった

などがあるようです。

faviconってなに?

これです。

Webサイトを開いた時に出てくるアイコンですね。
検索時にも表示されます。

直接的なSEO効果は無いようですが、私はファビコンがあるページとないページを比べた時に、ファビコンがあるページをクリックしがちなので、少しはPV増加に影響があるのかもしれません。

メインの使用目的は、ブランディングかと思います。

faviconを作成する方法

faviconは、手軽に作成ができます。

作成方法は、以下の2種類です。

・オンラインツールを使用する
・ローカルで動くアプリを使用する

個人開発や小規模アプリの場合は、
オンラインツールでサクッと作ることが多いです。

今はオンラインツールがたくさんあるので、
それで作成すれば1分かからずに終わります。

顧客に準備していただけることも多々あります。

現在業務委託で作成しているアプリは私がfaviconを作成する担当になり、セキュリティ面を考慮し、ローカルで作成することにしました。

オンラインツールが悪いというわけではありませんが、無料オンラインツールは画像がクラウド上に保存されてしまうリスクや、悪意のあるコードが実行されてしまうリスクがあるので、避けるのがベターでしょう。

まぁ、後者のリスクはローカル版でもありますので、「より安全とされている方を選ぶ」くらいの認識で問題ないと思います。

favicon作成(オンラインツール)

説明するまでもないと思いますが、念のため。

faviconにしたい png や jpg ファイルを用意し、オンラインツールに読み込ませます。

私がよく使うのは、以下です。
https://favicon-generator.mintsu-dev.com

▼ 使い方通りに実施すれば終わりです。

favicon作成(オフラインツール)

今回の本題です。

アプリインストール ~ 初期設定

専用のアプリをインストールして、
コマンドプロンプトなどで実行します。

ツールはいくつかありますが、記事が最も出てきた ImageMagic を使用します。

以下のURLからOSに合わせてダウンロードし、インストールします。
https://imagemagick.org/script/download.php

私は Windowsなので、インストーラをダウンロードし、インストールしました。

アプリ実行

続いて、faviconにしたい画像を用意します。
今回は「black-cat.png」を使用します。

フリー画像のかわいい猫ちゃんです。

最後に、favicon化します。

Windowsの場合はコマンドプロンプトなどで以下コマンドを入力します。

magick [faviconにしたいファイル] -define icon:auto-resize=16,32,48,64,128,256 favicon.ico

引数に関しては公式ドキュメントをご参照ください。
今回使用しているのは、以下です。

-define icon:auto-resize=16,32,48,64,128,256

これは、icon(.icoファイル)に対して、16×16, 32×32…という大きさになるよう、auto-resize(自動リサイズ)してくれと define(定義)しています。

.icoファイルは特殊なファイルで、複数の画像サイズを内部に持つことができます。
つまり、上記コマンドで生成されるiconファイルには、16×16, 32×32, 48×48…という複数のサイズの画像がまとまって入ります。

複数サイズの画像を入れておくと、ブラウザやOSが、そのときに必要なサイズの画像を設定してくれます。
※ちなみに、Google が推奨する faviconのサイズは 48×48ピクセル以上 です。

早速やってみましょう。

今回は black-cat.png を favicon化したいので、以下を入力して実行

magick .\black-cat.png -define icon:auto-resize=16,32,48,64,128,256 favicon.ico

エラーが出なければ完了しています。

▼ できました。

あとはこれを設置し、HTMLのheadタグなどにURLを設定すれば完了です。

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/vite.svg" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>.....</title>
    <link rel="icon" type="image/x-icon" href="/favicon.ico" />  // faviconの読み込み
  </head>
  <body>
    ......
  </body>
</html>

さいごに

個人開発や顧客の承認を得ている場合は別ですが、
画像の編集や変換などは、できるだけ有料アプリかローカルで実行しましょう。

無料オンラインアプリを使用したことによるインシデントで、こっぴどく上司に叱られた…というのも聞いたことがあります。

このあたりは駆け出しや転職組は気づき辛い部分ですよね。

私も転職組なので、転職前は普通に無料オンラインツールを使っていました。
「これって大丈夫だっけ?」という疑念を常に持つことが重要ですね。

特に金融系などのセキュリティガチガチ現場では、何も信じないのがセオリーかなと思います。
その疑念は大事ですが、友人に向けると関係が悪化するので非推奨です。

今回はここまで!
Enjoy Hacking!

タイトルとURLをコピーしました