チェック柄画像作成プログラム(5)
夏はあついし、引きこもるに限る。
そして推しの踊ってみたイベントも関東ではあまりなかったので、時間もあるなぁ。
と、3連休前の平日に考えていて、
あ、そうだ
チェック柄というか背景画像作成ツール、思いついた背景があったからそれを作ろう。
というわけで、その背景を作る。
でんっ!まるさんかくしかくばつ、を2色でランダム配置するやーつ。やっぱりダメじゃないか。あと、Github Pagesの設定がなんか表示されないし。
なんでや。
…
…
調べる。あ、最初にGithub登録したときにプライベート設定してたから?!
確かにまだ公開しないからプライベートだよな、って設定したわ。
…
そこを変える設定どこや!!!!!!!
いやどこ??????????
わからん。
~~数日後~~
あ、そうだ、設定探すんだった。
えーどこだ…
これだああああああああ
なんでSettingを押したページの左にメニューが羅列していて、そのなかにPagesがあるのにSetting押したときのHomeの下の下の下に設定があるんだよ…
そしてデプロイ!
デプロイエラー
なんでや。って思ったけど、デプロイの設定ファイルをAIにまかせて作ったからだよーん
エラー内容を確認。
うん、Blazor、Web Appだからだ。
検索したときにBlazorはGithub Pagesでデプロイ出来ると見たが、どうやら
Blazor Server + Blazor WebAssemblyはGithub Pagesでは動作しないらしい。
動作するのはデプロイで静的サイトになるBlazor WebAssembly Standalone。
学習がてらで作ったからServer利用のプログラムになってたな…。
モード指定しなければ大丈夫か?と思って検索したら
プロジェクト作り直ししろ。と出てしまった。
まぁ作った部分はほぼ移植すれば動くはずだし、プロジェクトから作り直し。
移植してーの
エラーを解消しーの
ローカル実行しーの
問題なし確認しーの
コミットしーの
そして自動でデプロイ!
デプロイエラーなんでや。エラー内容を見る。
うん、Blazor WebAssemblyのインストールに失敗している。
どうやら、.NET のバージョン違いのようだ。コマンドに-net9が足りなかったらしい。
AIが作ったデプロイコマンドだからな。やれやれだぜ。
そしてデプロイ!
通ったわ。意外とすんなりだったな…、いやローカルじゃ普通に実行できとるしな。
これで、VisualStudioからgitにpushすれば自動で更新してくれるな。
サーバで動作見てみよう。
おぉ!表示された!(それはそう)
で、適当にチェック柄作成、っと。
…
ツール「 」
ん?あぁ、時間かかってるのか
…
ツール「 」ん?結構待ったぞ?表示されない??
調べる
…
Web「Github Pagesで画像表示されないのはSystem.Drawingが動作しない可能性があるからやで」
ぼく「へー」
は??使えんの?Bitmap処理出来んの??
うーん、どうするか。
代替パッケージでも探すか…、たすけてAIくーん!
AIくん「SixLaborsおすすめやで、こんな風に使うで」
ぼく「へー」
変更してみる。
そもそもローカルでもエラーになるな…
ぼく「変更してみたけどエラーになったで」
AIくん「こうなおします」
ぼく「またエラー」
AIくん「こうなおします」
ぼく「またエラー」
AIくん「こうなおします」
あ、エラーやっとなくなった、実行や!
エラー
なんでや。えーっと、ライセンス登録されていない?
あん??ライセンス見てなかったわ。独自ライセンスか。
非商用、または商用でも収益が少なければApache Lisence 2.0か、で、それはどこで設定するんや。
…見つからん!!面倒だ!!!!
ぼく「ライセンス面倒だから、他のパッケージのおすすめくれ」
AIくん「Canvas API、SkiaSharp、Magick.NETあたりだけど、Magick.NETはおすすめしにくいです。SkiaSharpが一番近いです。」
おすすめしないならだすなよ。SkiaSharpにするか。
直して
直して
…
直して
…
…
多いな!!!!
そりゃ画像処理部分全部書き直しだからな。
よく考えたら出力のパターン、蓄積でかなり増やしてたわ。何個だ?
39パターン!?共通部分も直さないとだし。しかし地道に直すしかない。
一番面倒なのが色を指定するところがARGB指定→RGBA指定になってるところなんだよね。
…この関数はどの関数になるんだ?こうしたのはAIに直してもらうか…。
2日かけてなおしきった。
あ、ちなみにつきっきりじゃなくて配信とか見たり、ゲームしたりしながらだよ。
よし、これでOK
さすがに全部のパターン動作確認は面倒だ、適当なチェック柄で確認。
よし表示された。
ふぅ。
公開する設定になっちゃっているから、READMEとかLICENSE書かないとな…
書く。
面倒だとか言ってたけど、AIの変換信じてないんだよな…。見てみるか…。
これはOK、
これもOK、
これはダメ、
これはOK、
これおかしいか?
ダメOKOKおかしいOK
って結構ダメじゃねーか!!!
一番ダメなのは音楽記号のやつだよ。□になっちゃってるじゃねーか。
そうだよフォントだよ。静的サイトになっているから、Windowsのフォントフォルダなんて参照しない。たすけてAIくーん
AI「音楽記号ならSegoe UI Symbolでいいんじゃないかな。」
ぼく「へー、どこに配置するの?」
AI「wwwrootのなかだね。ただ、Windows標準フォントは再配布禁止だから気をつけてね」
ぼく「それはダメじゃないか」
AI「それだったらNoto Sans Symbols でいいかもね」
ぼく「へー」
やってみる
ぼく「ダメだったよ」(修正箇所勘違い)
AI「それだったら音楽記号が一般的なのだけならNoto Sansでいけるかも」
ぼく「ダメだったよ」(修正箇所勘違い)
AI「それだったら音楽記号入っているか確かめたほうがいいよ、コードに仕込んで。」
はいってないじゃないか。なんでや。
あ、Noto Musicのフォントもあるやん。
はいってない…?Unicode指定してるんだぞ…?
あ、修正箇所間違ってた。Notoだったらどれでもいけてたわ。まぁせっかく調べたし、音楽記号元々4つだったけど、Musicのフォント入れればもっと音楽記号入れれるからそれも入れよう。
ダメなところ修正して~
修正して~
あ、バグ挙動で残してたやつバグ挙動してなくて微妙だな…、はずしておこう。
処理中の表示ないからわかりにくいなー、ぐるぐる表示するようにしてー
というわけで
公開してます。
バグだったり、動作しなかったり、要望があったりしたら、コメント欄とかXだったりとかリアルに話振ってね。気分で直したり直さなかったりします。
サイズ大きくすると結構メモリ食うのと遅いので気をつけてね。
.png)
.png)
.png)
.png)
.png)
.png)
コメント
コメントを投稿