2016年版 Twitterに高画質な画像をアップする方法【透過PNG】
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

2016年版 Twitterに高画質な画像をアップする方法【透過PNG】

2016-06-13 11:36
  • 3
  • 15


ども。@どMなキョンです。

仕様変更の多いTwitterですが、最近ではPNGがJPGに強制的に変換されるなどと
話題になっていたのでいろいろと調べてみました

まず、過去の自分のブログを見てみると
http://ch.nicovideo.jp/dom_kyon/blomaga/ar856915

2014年時点で画像は5MB以下、アニメーションGIFは3MB以下との記載がある。
今はどうなっているのか。
試しに、10MBのJPGをアップしてみる。

アップできた。が、やはり縮小されているようで、実際にアップされているのは1.22MBのJPGで、1/10まで圧縮されている。

PNGはどうか。

23MBもあるので少し時間がかかったが、アップされた。
こちらも1.15MBに圧縮されていて微妙にJPGより劣化している

このへんの仕様変更は、
「デジカメで撮った画像でもガンガンアップしてね、圧縮はTwitterがやるからね」
ということなのだろう。

ただ、TwitterのJPG圧縮があまりに適当なので「少しでも綺麗に見せたい」と思っている、絵師やクリエイターにとっては非常に気になるところなのである




↑こちら、JPG圧縮が苦手とする「赤と黒」で描かれたイラスト。137kb
これをツイートしてみると

容量は84kbになっていたが、問題はその画質。


↑もとの画像


↑ツイートした画像

よく見ると、かなり潰れているのが分かる

少し前は、これを回避するために、「PNG形式でツイートすると劣化しない」という方法が流行したのだが、2016年のいまPNGをツイートするとどうなるか。

なんと、PNGもJPGに強制変換され、84kbになっていた。当然、細かい部分は潰れている。
うーん。なんてことだ。Twitterも終わったな。

いろいろ調べると、「透過PNGにすれば劣化しない」という情報をみつけた。

透過PNGとは、画像の一部が透けているというもので、公式ホームページなんかでよく使われているアレだ。



↑フォトショップなどで開くと、格子状になってる背景が透明部分になっているのがわかる。


横から見るとこんな感じか。

何もない背景の上に、イラストが描かれたセル画が載ってると思ってもらえればいい。(グラフィックソフトではこのセル画のことをレイヤーと呼ぶ。)コスプレイヤーではない。

ちなみに、これをツイートするとこんな感じに見える

「おいおい、俺の描いた絵には透明にするところなんかねえぞ」
とおっしゃられる方もいると思うので説明すると

「画像のどこでもいいから1ピクセルでも透明になってればいい」

ということらしいのだ。

そのやり方は、フォトショップ(有料ソフト)の場合は
レイヤーの背景を右クリックして、「背景からレイヤーへ」を選択
(これで、絵がセル画状態になる)



次に、画像の目立たないところ(四隅とか)を1ピクセルだけ選択して
deleteボタンで消去。消えたところが格子状になっているのがお分かりいただけるだろうか






あとはこれをPNGで保存すればOK。

無料ソフトで透過PNGを作るには「GIMP」をインストール
http://forest.watch.impress.co.jp/library/software/gimp/




起動したらこの窓に画像を放り込んで
「レイヤー」→「透明部分」→「アルファチャンネルの追加」を選択
これで、透明なセル画が1枚重なったことになる。






↑「チャンネル」に「アルファ(セル画)」が追加されているのを確認したら、
左のツールから□アイコンを選び、画像の端っこの1ピクセルを選択、
deleteを押す。すると消えたところが白くなるはず。



↑そのまま deleteをもう一度押してさらに消去。すると透明を意味する格子模様が出てきます。※格子模様が出ていないと透明になっていません。僕はここでハマりましたので注意。



↑ファイルから「名前をつけてエクスポート」→ [-]ファイル形式の選択 を押すと
拡張子がずらっとでてくるので、下の方の「PNG画像」を選び、ファイル名を打ち込んで
一番下の 「エクスポート」を押すと、透過PNGが保存されるので、それをツイートします

↑ちゃんとPNGのままツイートされました。

お絵かきソフト「SAI」での透過PNGの作り方はこのへんを見てくだSAI
http://www.pixiv.net/member_illust.php?illust_id=8145712&mode=medium

では、透過PNGはどのくらいの容量までアップできるのだろうか。
明らかに容量の多そうな画像を用意して、検証してみる


3.56MBの透過PNG→JPGに強制変換されてしまった

3.04MBの透過PNG→JPGに強制変換されてしまった

↑2.84MBの透過PNG→PNGのままいけた!!
ということで、2016年現在の透過PNGの壁は、3MB未満あたりらしいですね。
それより大きな画像は、なるべく高解像度なJPGをそのままブチ込むしかないと思います。


-------------------------------
次は、Twitterヘッダーの容量制限について。
まず、ヘッダーもJPGやノーマルなPNGは強制的にJPGに変換され劣化する。

これを踏まえて。



↑先の方法で作った透過PNGなら、綺麗にヘッダー設定できた。容量は566kb



↑なら、容量がデカそうなPNGはどうだ。元データ=1.75MB




↑見事に劣化した。




↑仕方ないので画像を少し削って透明部分を増やしてみる。1.35MB まだ劣化してる



↑1.14MBでようやく綺麗になった。

結論から言うと、ヘッダーに関しては透過PNGであっても1MBを超えると劣化する
ということになるのかな。1.75MBの透過PNGも、ツイート画像としてなら劣化なくツイートできた

うーむ。それでもなんとか情報量の多い画像をヘッダーにするにはどうしたらいいのか。
そこで思いついたのが PNG-8(透過あり) という形式



これは色数を256色以下に減色することで容量を抑える、GIF画像みたいなものらしい



↑遠くから見た感じはまぁまぁキレイ。



さすがに寄ってみると、昔のパソコンみたいな画面だけども
とりあえずこれをヘッダーにしてみる




↑おおww いいんじゃないっすかwwww

ちなみに、PNG-8であろうと、やはり透過PNGにしないと結局JPGに変換されるので注意。

まとめ
劣化せずに画像をアップしたいなら透過PNG
ただし、通常ツイートは3MBまで、ヘッダーは1MBまで
それを越えると強制的にJPG変換

この情報は 2016.6のものです。新しく仕様が変わったりしていたら
こちらまでご連絡いただけるとうれしす
https://twitter.com/dom_kyon
広告
×
有益すぎてありがたい!
19ヶ月前
×
ヘッダー変えたら画質下がった感じしたけどこんなトリックだったとは・・・。
18ヶ月前
×
今mobile版twitter(Twitter for Android v6.0.0)でjpgを上げると4:3の場合は.jpg:origにしても2064x1548に強制リサイズが入ってしまうことを確認しました

また過去にtwitter for Androidで投下した画像も2064x1548になるのを確認しました

ただしPCブラウザ版Twitterで投下した大きめの画像(3200x1080)は:origをつけると3200x1080で見れることを確認しました
17ヶ月前
コメントを書く
コメントをするには、
ログインして下さい。