88x31ピクセルのボタンは、初期のウェブデザインにおける古典的な遺物であり、小さな広告やナビゲーションリンクによく使用されていました。現代のボタンの多くは注意を引くために単純なアニメーションを使用していますが、ある新しいプロジェクトはこのコンセプトを技術的な限界まで押し広げ、ハーマン・メルヴィルの『白鯨』の全編テキストを単一のスクロールするGIFにエンコードしました。このプロジェクトは、88x31という解像度が非常に制限的であり、Arialのような標準的なフォントでは一度に約11単語しか表示できない一方で、適切なツールとタイポグラフィを採用すれば、長編文学をレンダリングすることは完全に可能であることを示しています。

これを実現するために、著者は極小サイズ(3x3ピクセルまで)での視認性を考慮して設計されたTomThumbという特殊なフォントを使用しています。画像生成の主要ツールであるImageMagickは複雑なテキストレイアウトに最適化されていないため、このプロジェクトではPOSIXユーティリティのパイプラインを使用してテキストを準備しています。プロセスには、`cat`を使用してテキストを`tr`に送り、改行をスペースに正規化し、次に`fold`を使用してテキストを正確に22文字の行に折り返す工程が含まれます。これにより、単語の途中で分割されることを避けつつ、テキストを88x31の寸法内に収めることができます。さらに、フォーマットを妨害する可能性のある非ASCII文字を削除するために、`sed`と`grep`を使用した追加のクリーンアップが行われます。

最終的なGIFへの変換は、ImageMagickの`convert`コマンドによって処理され、フォーマットされたテキストからフレームごとのアニメーションを生成します。出力を洗練させるために、著者は不要な余白を削除するためのクロップを適用し、読みやすさを確保するためにフレーム間に600ミリ秒の遅延を設定しています。また、ボタンの境界内でテキストを中央に配置するために、先頭のスペースを計算して挿入するPythonスクリプトも採用されています。完成したファイルは4.2 MBのGIFであり、全編を再生するのに約19時間を要します。これは「Small Web」の美学の限界に対する、非常に手間のかかった概念実証となっています。

このプロセスで指摘された重要な技術的制約の一つは、マルチバイト文字に対する`fold`コマンドの挙動であり、適切にサニタイズされないと文字化けの原因となることがあります。さらに、GIF形式は膨大な数のフレームと高解像度をサポートしていますが、88x31の制約により、機能的な可読性のために視覚的な華やかさを犠牲にするトレードオフを余儀なくされます。このプロジェクトは、単純なコマンドラインツールの組み合わせと特定のタイポグラフィの選択によって、巨大な文学作品を、非常に低速ではあるものの機能的なウェブアートへと変貌させることができることを浮き彫りにしています。