ファビコン生成
画像を一枚落とすと、ブラウザのタブ・iOSのホーム画面・Androidに要るアイコンが出ます。favicon.icoも一緒に付き、headに貼り付けるHTMLも添えます。
ファイルが端末から出ることはありません。 読み込みも縮小も圧縮も、すべてブラウザの中で行います。16ピクセルでは文字の入った画像は読めません — 形が単純なほどよく残ります。
何が出てくるか
PNG 六枚(16・32・48・180・192・512)と favicon.ico、head に入れる link 四行が出ます。.ico に入るのは 16・32・48 の三枚だけです。このファイルを読むのはタブとブックマークで、大きな画像を使う場面がなく、入れてもファイルが膨らむだけだからです。.ico の中の画像は PNG のままで、今使われているブラウザはすべて読めます。一式を zip で受け取ると、HTML の断片もテキストファイルとして同梱されます。
縮め方と元画像の大きさ
キャンバスに描き、ブラウザが PNG に焼きます。正方形でなければ短い辺に合わせて中央を切り抜いてから縮めるので、長い辺の端は切り落とされます。ロゴが端に接しているなら、先に余白を足して正方形にしてから入れてください。元画像は 512 ピクセル以上が望ましいです。それより小さいと 512 の版を引き伸ばして作ることになり、ぼやけます。
白い背景を入れる理由
透明な背景は、置かれる場所によって見え方が変わります。iOS はホーム画面のアイコンの透明な部分を黒で埋めるので、暗いロゴを透明のままにすると、黒い四角の上の黒い絵になります。白い背景を選ぶと、六枚すべてを白で埋めて作り直します。
よくある質問
16ピクセルだと読めません
文字の入ったものはその大きさでは潰れます。形が単純なほどよく残ります。正方形でない画像は中央を切り抜きます — 余白を足すと、見分けのつく部分が数ピクセルしか残らないからです。
なぜこんなに多くの大きさが要るのですか
場所ごとに使う大きさが違うからです。ブラウザのタブは16と32px、iOSのホーム画面は180px、Androidは192と512px。大きいものだけを置くと縮めたときにぼやけ、小さいものだけを置くとホーム画面が甘くなります。
.ico は今も要りますか
たいていのブラウザはPNGを読みますが、ブックマークやアドレス欄など、いまだに /favicon.ico を先に探す場所があります。ファイルが一つ増えるだけなので、併せて作っています。
背景が透明な画像も使えますか
使えます。PNGでは透明が保たれ、.ico も透明を持てます。ただし暗い色を透明に載せたアイコンは暗いタブで消えてしまうので、どんな背景でも読めるかご確認ください。
SVG を入れても大丈夫ですか
ブラウザがそのファイルを画像として開ければ使えます。SVG は大きさが書かれていないとブラウザごとに開き方が違ったり開けなかったりするので、駄目なら一度 PNG に書き出してから入れてください。
manifest.json も作ってくれますか
作りません。192 と 512 の画像は出ますが、Android がホーム画面で使うにはウェブアプリマニフェストがその二つを指していなければならず、そのファイルには名前・色・開始 URL のように、ここでは分からないものが入ります。出てきた画像を置き、マニフェストの icons に二行を書き足してください。
貼り付けたものはサーバへ送られますか
送られません。すべてブラウザの中で動き、送信も保存もしません。だからこそ、ふつうならウェブページに貼り付けない社内の設定ファイルや本番のクエリにも使えます。通信を切ったままでも動きます。