From 2e9bd6bb73ddb9517985df3ba44004cdafda0d56 Mon Sep 17 00:00:00 2001 From: tamakyi Date: Tue, 20 Oct 2026 08:28:39 +0800 Subject: [PATCH] =?UTF-8?q?theme(shiroko):=20=E9=87=8D=E7=94=BB=E5=85=89?= =?UTF-8?q?=E7=8E=AF=E2=80=94=E2=80=94AI=20=E7=BB=99=E7=9A=84=E7=8E=AF?= =?UTF-8?q?=E5=BD=A2=E7=8A=B6=E6=AD=AA=E3=80=81=E7=8E=AF=E5=86=85=E8=BF=98?= =?UTF-8?q?=E7=B3=8A=E7=9D=80=E7=99=BD=E5=AD=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 旧环是非白像素的独立连通域(bbox 291,93-584,232,与头发不连通),整块抹白后重画 - 新环:-7° 倾斜椭圆,100x34,线宽 10px,4 倍超采样 + LANCZOS 求平滑,外加 45% 模糊柔光 - 关键:环是在 alpha 建好之后再画的,环心天然透明,不再需要给封闭白孔补洞 - 压白 16% 与场景保持一致;静态版本 20261020b,图片另带 ?v=20261020b --- docs/theme-shiroko.md | 8 ++++++-- internal/conf/static.go | 2 +- static/css/themes/shiroko.css | 2 +- .../images/themes/shiroko/chibi/window.webp | Bin 13076 -> 13944 bytes 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/docs/theme-shiroko.md b/docs/theme-shiroko.md index fec488c..6afd21d 100644 --- a/docs/theme-shiroko.md +++ b/docs/theme-shiroko.md @@ -114,9 +114,13 @@ available = default,sakura,shiroko grey pleated skirt, black and teal sneakers`(第一版带了教室窗框,背景处理不掉); 2. 再把这张图扔回 image-to-image(`input_fidelity: high`)转成"纯色块、无描边、去掉窗框与场景, 纯白背景",这样既保住姿势,又能拿到和立绘一致的平涂风格; -3. 抠白底后把 RGB 压白 **16%**(`v*(1-k)+255*k`,alpha 不动)——场景本身压白 38%, +3. 光环单独重画:AI 给的光环不但形状歪,环内还是一块**封闭的白孔**——floodfill 只从四边漫水, + 闭合区域进水不进去,抠完就是"环里糊着一团白"。做法是先把这个连通域(非白像素从环上一点漫水, + bbox 291,93–584,232,与头发不连通)整块抹白,抠完 alpha 后再用 PIL 画一个 -7° 倾斜的椭圆环 + (4 倍超采样 + LANCZOS 缩小求平滑 + 一层 45% 的模糊柔光),环心天然是透明的; +4. 抠白底后把 RGB 压白 **16%**(`v*(1-k)+255*k`,alpha 不动)——场景本身压白 38%, 人像不压白就是全页对比度最高的一块,必然"突兀"; -4. 裁 bbox、缩到高 460,WebP q86(约 13KB)。 +5. 裁 bbox、缩到高 460,WebP q86(约 14KB)。 关键经验:**必须是"平涂无描边"**。先试过用手写 SVG 线稿,风格和用户那张立绘(色块、无描边)冲突, 而且没有真人手感会画得很抽象;用参考图 + image-to-image 出来的四张,角色特征和画风都稳。 diff --git a/internal/conf/static.go b/internal/conf/static.go index ce0c17a..66efcdf 100644 --- a/internal/conf/static.go +++ b/internal/conf/static.go @@ -10,7 +10,7 @@ var ( BuildCommit = "dev" // StaticVersion 静态资源缓存版本号:base.css 与主题 css 共用,改样式只改这一处。 - StaticVersion = "20261020a" + StaticVersion = "20261020b" ) // 文本审核通道取值([security] text_censor_source)。定义在 conf 侧, diff --git a/static/css/themes/shiroko.css b/static/css/themes/shiroko.css index 44baedb..ae2c87c 100644 --- a/static/css/themes/shiroko.css +++ b/static/css/themes/shiroko.css @@ -40,7 +40,7 @@ html[data-theme-style="shiroko"] { 其余 4 个槽位是"空气"(全部是渐变,不占体积、不会成为贴纸): 3 左窗光柱 / 4 右侧一朵暖散景 / 5 人物脚下的地面光斑 / 6 底部轻压深。 光斑把人物"钉"在地上,压深让页面下沿不飘。 */ - --tb-deco: url("/static/images/themes/shiroko/chibi/window.webp?v=20261019r"), + --tb-deco: url("/static/images/themes/shiroko/chibi/window.webp?v=20261020b"), radial-gradient(ellipse at center, rgba(63, 96, 138, 0.18) 0%, rgba(63, 96, 138, 0) 72%), linear-gradient(112deg, rgba(255, 250, 236, 0.50) 0%, rgba(255, 250, 236, 0.22) 20%, rgba(255, 250, 236, 0) 44%), radial-gradient(circle 120px at 88% 30%, rgba(255, 252, 240, 0.42), rgba(255, 252, 240, 0) 75%), diff --git a/static/images/themes/shiroko/chibi/window.webp b/static/images/themes/shiroko/chibi/window.webp index b468ff1ae4d2bed96bb232d19dfcaaf501140d1b..3255c1733f2ce0b32c744e4e3b317b315c5db9fd 100644 GIT binary patch literal 13944 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 i*Fi!2G