 jiantw83andClaude Opus 5
|
15e4eea8ac
|
feat: 圖示改為人物形象圖(有臉),並讓 Wiki 保存 SVG + PNG
1. 圖示三種樣式,優先看得到臉
photo 有參考圖且工具齊全 → 從官方視覺自動偵測並**裁出臉**,圓角+瞳色外框
portrait 有參考圖但缺工具 → **有五官的向量人物**(髮型/瞳色/服裝色都取自那張圖)
badge 完全沒有參考圖 → 舊的雙色漸層 + 編號字母
portrait 與 badge 共用同一份「圖形清單」,SVG 與自寫柵格器從同一份資料畫,
兩邊不可能長得不一樣;photo 的 SVG 以 base64 內嵌裁好的 PNG,一樣不外連。
2. 缺工具會「提示安裝」,不靜默降級
新增 scripts/portrait.py(選用):Pillow 解碼裁切、OpenCV + lbpcascade_animeface
偵測動漫臉。toolReport() 會列出缺什麼、為什麼要、怎麼裝(venv 免 sudo),
CLI 在退回向量形象時把這些印出來。
注意:**OpenCV 5 拿掉了 CascadeClassifier,必須裝 4.x**。
plugin 本體仍然零依賴——沒有這些工具照樣產得出有臉的形象圖。
新增 `icon faces`:列出參考圖裡偵測到的所有臉。多角色的主視覺一定要先看再挑
(--pick <索引>|largest|leftmost|rightmost 或 --face x,y,w,h),挑錯就是別人的臉。
3. Wiki 保存形象圖
icon.svg 與 icon.png 都在 Wiki 區,另外自動產生一頁 Icon:同時展示兩種格式,
並列出樣式、調色盤、來源網址、造型說明與裁切框。PNG 同時設為存取庫頭像。
已套用到兩個真實人格(皆為真實裁臉):
ASUNA-01 《Unanswered//butterfly》(2026) 官方主視覺,臉 #1(anime-cascade)
YUI-01 AniList 官方角色圖(frontal-cascade)
selftest 148 項全綠(新增第 ⑯ 節:形象圖真的畫了五官、SVG/PNG 出自同一份清單、
工具偵測與安裝提示、Wiki 形象圖專頁與來源)。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-07-30 02:39:58 +00:00 |
|
 jiantw83andClaude Opus 5
|
1884a9c3d7
|
feat: 圖示配色取自人格「最新一次登場」的官方視覺
新增 skill persona-icon:上網查出該人格最新的官方視覺 → 下載 →
**用 Read 親眼看過** → 取髮色/瞳色/服裝色 → 用那組配色繪製圖示,
來源網址與造型描述一併寫進 state/config.json 備查。
CLI:
icon generate --palette "hair=#..,eye=#..,accent=#..,secondary=#..,light=#.."
--source-url <網址> [--source-note <說明> --source-date <日期>]
* --palette 必須配 --source-url(配色要有出處,CLI 強制)。
* 配色與來源存進 config.icon,之後不帶 --palette 重畫會沿用,不會變回雜湊色。
* icon show 會列出調色盤與來源網址。
繪製:漸層=髮色→服裝主色、外框=瞳色、點陣紋=亮色、中央仍是編號前兩字。
一深一淺的極端配色(藍黑髮+淡粉洋裝)會把較亮端往較暗端壓到對比 ≥ 3.2,
確保字讀得到——顏色仍是照片來的,只是收斂色階。
為什麼不是把照片本身當圖示:
1) 環境裡沒有任何影像解碼器(rsvg/imagemagick/Pillow/ffmpeg 都沒有),
JPEG/WebP 讀不進來,無法轉成 PNG;
2) 把他人的美術作品原樣放進存取庫是散布,不是引用。
取配色是有依據又不搬運原圖的做法,這個取捨寫進了 README 與 skill。
已套用到兩個真實人格:
ASUNA-01 取自《Unanswered//butterfly》(2026) 官方主視覺(金栗髮/紅褐瞳/紅衣粉裙)
YUI-01 取自 AniList 官方角色圖(藍黑髮/暖棕瞳)+ Unital Ring 導航妖精造型
selftest 136 項全綠(新增第 ⑮ 節:調色盤解析、缺來源會被擋、格式錯誤會被擋、
來源寫入 config、重畫沿用配色、極端配色的對比保證)。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
2026-07-30 02:17:35 +00:00 |
|