2023/01/06
1MB 制限と闘う
やったこと
- ブログの OGP 画像をいい感じにする
今日は昼過ぎに起きてしまって、夕方なのに気分は午前 10 時という感じで何かやる気になれなかったため、ブログの OGP 画像を修正しようと思ってコードをいじってた。
デザインをもう少しおしゃれにしたいのと、フォントがデフォルト (?) のもので漢字が半分中国語みたいな表示になっていたのでフォントの設定をしたいと考えていた。
しかし、このフォントの設定でハマり結局一日使ってしまった。
OGP 画像は @vercel/og
で生成していて、これを使う場合 総容量 1MB の制限があり厳しい。
普通に Google Fonts をダウンロードしてロードすると容量が大きすぎるため、サブセット化したものを使う必要がある。
幸いインターネットに Noto Sans CJK JP フォントをサブセット化し、約 500 MB になったものがあったのでこれを使ったが、実際デプロイしてみると総容量が 1.14MB で 0.14MB オーバーでデプロイがコケた (バンドルサイズを測ったら 600MB くらいだったので、それに画像とフォントのファイルを合わせて 1MB 越えたっぽい)。
しかたないから自分でサブセット化してもう少し削るしかないと思い、サブセット化するアプリをダウンロードし、 Wine で実行したが日本語が文字化けしていて使えなかった。
日本語フォントを正しく読むためにレジストリをいじったが結局うまくいかなかったので諦めた。
一日中、フォントと Wine と格闘して何も成果が得られなかったが、 OGP 画像が (フォント以外) おしゃれになったし、 Next.js でのバンドルサイズの測り方が分かったからまぁいいか。
思ったこと
作業ではなく、仕事をせよ でたまにインターンで思うことが言語化されていて良かった。
今日の英会話
Twitter の認証バッヂ (青いやつ) のユーザからの投稿でも 2,30% は嘘の情報が含まれているという調査結果についての話。 この記事ではイーロン・マスクが Twitter Blue をはじめたせいで素人でも課金すれば認証バッヂがもらえるため ↑ の傾向は高まると指摘されていたが、先生は「むしろ認証バッヂのユーザへの信頼度が低くなって、ユーザは情報が正しいか判別するようになるから Twitter Blue は良いアイデアだ」と言っていておもしろいと思った。