NISHIO Hirokazu[日本語][English]

pMAGI-2024-02-06

image

nishio 何をやりたいのかわかる人にはわかる(デザインスキルは追いついていない) image nishio image nishio 作ってから並べると細部の食い違いに気づく... nishio こうかな image nishio まあ、最終的にはCanvas実装にするので今のところはこのくらいに... image

nishio 「OGPイメージの生成をしたいんだけど?」って聞いたら手順を答えてくれて「じゃあ手順1のサンプルを作って」って言ったらサンプルコードができて、実行したら問題なく動いた。GPT4すごい

nishio こんな感じっすかね image

nishio ここまでできた image

nishio 妻の情報デザインコンサルティングを受けた image

nishio なるほど image

nishio 僕の独力のデザインと比較してみる、やっぱ今のの方がいいな

  • imageimage

nishio テキスト流し込みができた image nishio SVG to PNGはできたがforeignObjectでレイアウトしたテキストは表示されないのか image nishio 難しい、続きはまた今度

nishio 大変なことになってきたぞ。Adobe XDからエクスポートしたSVGをReactにJSXとして貼り付けてデータの流し込みが可能なようにしたがワードラップが自動で行われないのでforeignObjectでdivを使った。しかしサーバサイドでSharpでそれをレンダリングしてもテキストは表示されない。続く nishio そこでforeignObjectを捨ててtspanに刻もうと、何かいいライブラリあるかGPT4に聞いたら「ない、この関数を使え」とか言ってくるのでとりあえずそれを使おうとしたものの、document.createElementはサーバサイドで動かないよね、となってる。解決法はjsdom。マジか?おかしな方向に走ってない? nishio AIがガンガン加速してくれるから気にせずに進んできたけど、流石にこれ人間が進むべき道ではなくない?ほんとにあってる?ここまでにSVGかCanvasかの分かれ道と、SharpかPupettierかの分かれ道があったんじゃないかと思うけど、自信満々で解決策を出してくるから信じて進んできたけど、本当にこの道? nishio image nishio ダメじゃん!罠だろそれ! image nishio まてよ、そもそも今回のビューにおいてはテキストを等幅フォントにして単語の区切りやハイフネーションを考慮せず改行してしまう外見で十分な気がするな…だったら幅の取得は必要ないのか。 結局どの技術選択がよいは「どのような見栄えを期待しているか」という言語化されてない要求仕様に依存してる nishio 5分前までは「幅が取得できないんだから自前で改行するのは無理がある、Sharpの選択が間違いでPuppeteer一択」と考えてた

from /villagepump/2024/02/07 /villagepump/nishio.icon

  • もしかするとAIアシストに盛大にミスリードされてるかもしれない
    • サーバサイドでSVGをレンダリングするのは茨の道説
    • 画像にされるとコピペできないなー/villagepump/inajob.icon
    • 画像が決め打ちサイズっぽいので、自分なら画像にオーバーレイするようにposition:absoluteとかでdivを重ねるかな/villagepump/inajob.icon
    • いや、今作ってるのはSNS用のOGP Imageなので画像にするのは大前提/villagepump/nishio.icon
      • SVG自体にforeignObjectでdivを埋め込めるんだけど、それをサーバサイドでレンダリングしようとしたら表示されなくて、これじゃダメかーとなってるところ
      • あー、OGPか/villagepump/inajob.icon
        • 自分もOGP生成用に画像にテキストを入れ込むツールを自作したな・・
        • みんなどうしているのだろう
          • 簡単なものはImageMagickで出来るのだが、日本語文字の折返しとか考え始めると自作する羽目になる
          • 何も考えずSVGからPNGとかが生成できると嬉しい
          • それができそうなことをAIがいうので信じたらハマったw/villagepump/nishio.icon
      • ricapitolareはsvg生成のみ/villagepump/takker.icon
      • /villagepump/yuta0801.iconさんがrustでsvg をpngにするコードを書いてた
    • GPT4と話してるとこのテーマに関する多種多様な勘違いが明確化されて面白い
      • 人間の認知の面白さの話としてひと段落してから整理したい

(C)NISHIO Hirokazu / Converted from Markdown (ja)
Source: [GitHub] / [Scrapbox]