Pixmend

小さいアイコン・アバターを綺麗に拡大する

アイコンの画質を決めているのは、たいていツールではなく手元に残っているコピーです。拡大の前に、いちばん大きい原本を探してください。

約 4 分

手順

  1. いちばん大きいコピーを探す
    プロフィール画面から保存した画像より先に、ペイントソフトの書き出しや元の写真が残っていないか確認します。
  2. 表示先に必要な画素数を出す
    表示される大きさの倍の画素数を用意します。多くの画面は指定より 2 つ分細かく描くためです。
  3. 足りる範囲でいちばん小さい倍率で拡大する
    Pixmend を開き、2 つ分までなら x2、それ以上なら x4 を選びます。描いたアイコンならイラスト向けのモデルにします。
  4. PNG で書き出して自分の手元に残す
    アップロードした先では再エンコードされるので、綺麗なファイルは自分で保存しておきます。

アイコンを大きくすると粗く見えるのは、ツールを動かす前に決まっています。手元にあるコピーは、たいていサービス側の縮小と圧縮を通ったもので、自分が作ったファイルそのものではありません。 いちばん大きい版を探すほうが、どんな設定よりも効きますし、それだけで解決することもあります。それでも足りないときに、見つけた最良のコピーで Pixmend を開く

まず原本を探す

プロフィール画面から保存した画像は、少なくとも 2 世代下です。登録時に縮小され、配信のために再圧縮され、保存の仕方によってはもう一度圧縮されています。それを拡大するのは、絵と一緒に傷を大きくすることです。

何よりも先に、ペイントソフトの書き出し、切り抜く前の写真、最初にアップロードしたファイルが残っていないか探してください。フォルダに 512 px の原本があれば、それで要求を満たしていて処理そのものが要らないことも珍しくありません。拡大は、原本が本当に失われたときの手段です。

必要な大きさを出して、その倍を用意する

多くの画面は指定した大きさの 2 つ分細かく描きます。つまり 200 px の丸で表示されるアイコンには、400 px のファイルが要ります。「スマホでは綺麗なのにノート PC で甘い」のほとんどは、この一点で説明がつきます。

判断はこの計算だけです。

使う場所 表示される大きさ 用意したい画素数
コメント欄・チャットのアイコン 40 px 80 px
プロフィールのヘッダー 200 px 400 px
配信のオーバーレイ・カード 400 px 800 px
アプリ・ストアのアイコン 512 px 1024 px

用意したい画素数を、いま持っている画素数で割ります。2 つ分までなら x2 で届き、 4 つ分までなら x4 です。256 px のアイコンは x4 で 1024 px になるので、上の表のいちばん大きい行まで満たせます。4 つ分を超えて足りないなら、拡大は答えになりません。その差を埋めるディテールはファイルの中に無く、そこに現れたものは復元ではなく創作です。

選ぶのは、使える中で最大の倍率ではなく、要求を満たす中で最小の倍率です。なお x2 と x4 で処理時間は変わりません。x2 は x4 の結果を縮めたものだからで、 x2 を選ぶのは絵のための判断であって、待ち時間のためではありません。

描いたアイコンと、写真のアイコンは別のモデル

壊れ方が違うので、扱いも変わります。描いたアイコンは線で囲まれた平坦な色なので、イラスト向けのモデルはその輪郭をノイズとして均さずに残します。切り抜いた写真は粒子と緩やかな階調でできていて、そちらを尊重するのは写真向けのモデルです。線画に写真向けのモデルを当てるのが、アイコンが少し溶けて返ってくるいちばん多い原因です。

ノイズ除去は、何が写っているかではなくそのファイルがどこを通ってきたかで決めます。ペイントソフトから PNG で出しただけなら消す傷が無いので、設定は触りません。チャットやプロフィール画面を経由したアイコンは何度も JPEG になっているので、中くらいの設定にすると、拡大と同時にブロックと線まわりのちらつきが取れます。

透過のあるアイコンは、最初から最後まで PNG のまま扱ってください。透明な画素も下に色を持っていて、それを捨てる処理を通すと、拡大したときに縁が黒ずみます。

できないこと

これはファイルにあるものを直すだけで、無いものを描き足しません。 64 px の顔は、鮮明さではなく目鼻立ちそのものを失っています。正直な処理でそれが戻ることはありません。大きくしても、失われたままのものが大きくなるだけです。生成系のツールが別人の顔を返してくるのは、まさにこの地点です。

もう一方の端にも限界があります。アップロードすれば、サービス側は自分の仕様に合わせて縮小し再エンコードするので、綺麗に作ったファイルがそのまま配信されるわけではありません。だから自分の手元に残しておきます。動画のサムネイル、印刷するステッカー、スライド、そして前より大きい画像を求めてくる次のサービスで効いてくるのは、そちらのファイルです。

実務上の注意

アイコンは小さいので、ここに挙げた上限はほとんど関係しません。入力の上限 12.6MP はアバターとは桁が違いますし、速度も問題になりません。 1024×1024 の写真で 7.1 秒、同じ大きさのイラストで 3.9 秒なので、 256 px のアイコンはその内側で終わります。

初回はモデルとランタイムで 11.6MB ほど取得し、その後は端末内に保存されます。画像そのものがブラウザから出ることはありません。処理はあなたの GPU で行われ、 DevTools の Network タブが処理中も静かなままであることで確認できます。アカウントもインストールも不要で、回数の制限もありません。