どんなときに使うべきか
プラットフォームが長い画像を普通の画像として表示する場合、縦横比が極端なほど不利です。1080×6000 の画像はフィードの中で非常に細い帯に縮められ、サムネイルでは文字がほとんど読めません。6 枚に切って 1 枚ずつを正方形に近づければ、ユーザーには正常な比率の画像 6 枚として見えます。
内容そのものが 1 件分のスクリーンショットである場合——チャット履歴、注文詳細、講義ノート——もこの処理に向いています。そのまま送ると相手は拡大と左右のスクロールを繰り返すことになるので、3–5 枚に切り、1 枚をおよそ 1 画面分の高さにすれば、めくる順番がそのまま読む順番になります。
パラメータの選び方
- 各片の高さはまずプラットフォーム次第です。複数画像を投稿するプラットフォームは正方形に近い比率がよく使われるため、幅 1080px なら 1080–1440px(1:1 から 3:4)が最も安定します。チャット履歴、コード、表のような文字主体の長い画像はもっと高くするのが向いており、1 枚 1500–2000px にすると文字があまり小さくなりません。大きく指定すると枚数が減り 1 枚の情報量は増えますが文字は小さくなり、小さく指定すると枚数が増えてめくる回数が増えます。
- 節のある画像は枚数指定を使い、3–9 枚に切って各片を 1 節ずつに対応させます。節のない純粋な長い画像は高さ指定を使います。数値が覚えやすく、元画像の位置にも対応させやすいです。
- 片の間の余白は 0–60px で調整でき、実際には 8–24px で十分です。役割は 2 つあります。隣り合う片を並べたときに区切りが分かるようにすること、そしてプラットフォームのプレビューでの切り取りや角丸に少し余裕を持たせることです。40px 以上にすると、フィード内の各画像の末尾がひと続き欠けます。
- 最後の片の埋め合わせは、プラットフォームやレイアウトですべての片のサイズを完全に揃える必要があるときだけ有効にします。埋められた数行は純粋な背景色で、実際の内容はありません。
- 出力形式:スクリーンショットや文字は PNG。SNS に投稿するだけなら JPG を選び、画質 0.92 がファイルサイズと見た目のバランス点です。0.85 以下では文字のエッジに色付きノイズが出て、しかもプラットフォームが受信後にもう一度圧縮するため、2 回分の損失が重なります。
他の方法との比較
分割自体は新しいピクセルを生みません。元画像の一部を 1:1 で同じ大きさのキャンバスに移すだけで、元サイズと出力サイズが完全に同じなので、拡大縮小がなければ補間によるぼやけもありません。片の高さを切り捨てではなく四捨五入にするのは、各片の合計を元画像の高さに厳密に一致させるためです。切り捨てでは割り切れない余りの行が失われますが、四捨五入ならその数行をいずれかの片に配分するだけです。ただしこれは幾何の話にすぎません。JPG 出力を選ぶと各片で改めて非可逆圧縮が行われるため、バイト列は元画像と異なり、分割保存を繰り返すと損失が蓄積します。厳密に保つなら PNG を使ってください。
余白を付けたり端を埋めたりすると、もはやピクセル単位では一致しません。書き出した画像には純粋な背景色の行が数行増え、ピクセルグリッドが全体に下へずれ、つなぎ戻した画像は元より高くなります。その数行は元画像には存在しなかったものです。これは不具合ではなく、この 2 つの機能の定義どおりの動作です。各片の下部に増えた余白を元の片の高さで切り落とせば元に戻せます。
Photoshop のスライスや長い画像のスクリーンショットアプリと比べると、それらはガイドで各片の範囲を自由に指定でき、大きさの異なる画像を一度に数十枚作るのに向いています。こちらは縦方向の等分しかできず、各片の開始位置と終了位置を指定できず、横方向にも切れません。オンラインの分割サイトと比べると、多くのサービスは画像をサーバーに送ってから返すため、画像が他人のディスクに丸ごと複製されます。チャット履歴、注文、証明書には向きません。こちらはブラウザ内で完結し、画像はどのネットワークリクエストにも入りません。代償は端末のメモリとキャンバスの上限に縛られることで、マシンが弱いほど、枚数が多いほど遅くなります。
補足 Q&A
何枚に切るのが適切?枚数が多すぎると何が困る?
3–9 枚がよく使われる範囲です。9 枚を超えるとユーザーは何度もスワイプする必要があり、多くのプラットフォームでは 1 件の投稿の画像上限が 9 枚なので、あふれた分は 2 件に分けて投稿するしかなく、読む順番が途切れます。枚数が増えるほど 1 枚あたりが低くなり、詳細ページで拡大される倍率が高くなるため、文字はかえってぼやけます。
6 枚に切ったのに、合計ファイルサイズが元画像より大きくなるのはなぜ?
各片は独立したファイルで、それぞれ画像ヘッダーを持ちます。PNG は片ごとに自分の圧縮ブロックを保存し、JPG は片ごとに独立して量子化を行います。増えるのは枚数に比例して線形に増加するコンテナのオーバーヘッドです。小さくしたいなら枚数を減らすか、JPG に切り替えてください。
余白を付けても、プラットフォームはまだ内容を切り取るのか?
余白は確率を下げるだけで、保険にはなりません。プラットフォームのプレビューでの切り取り、角丸、拡大縮小はツールでは制御できません。余白があれば端に接した文字に少し余裕ができますが、プラットフォームが 3:4 の画像を正方形で強制的に切り取るなら、切られるのはやはり元画像の内容です。
枚数が多いと途中で非常に遅くなり、固まったように見えるときは?
それは端末が 1 枚ずつ符号化しているためです。1080×20000 の画像を 20 枚に切ると 20 回の完全な符号化が走り、非力な端末では明らかに固まります。まず各片の高さを大きくして枚数を減らすか、JPG に切り替えてください。途中でパラメータを変えた場合は、もう一度「分割を開始」を押す必要があり、生成済みの結果は破棄されます。