|
@@ -81,6 +81,10 @@ import { SessionService } from '../../../core/session.service';
|
|
|
字体大小(2026-10-30 改版):分段控件 → **滑块 + 小/默认/大三段刻度**,
|
|
字体大小(2026-10-30 改版):分段控件 → **滑块 + 小/默认/大三段刻度**,
|
|
|
与参考设置面板一致;作用范围也从"会话正文"升级为**全局字号**。
|
|
与参考设置面板一致;作用范围也从"会话正文"升级为**全局字号**。
|
|
|
-->
|
|
-->
|
|
|
|
|
+ <!--
|
|
|
|
|
+ 字体大小(2026-11-01 视觉重做):滑块自带「小 / 默认 / 大」刻度标签,
|
|
|
|
|
+ 不再在外部另起一行 legend —— 两套标签会让刻度与文字对不齐。
|
|
|
|
|
+ -->
|
|
|
<div class="setting-block">
|
|
<div class="setting-block">
|
|
|
<div class="setting-copy">
|
|
<div class="setting-copy">
|
|
|
<h4>字体大小</h4>
|
|
<h4>字体大小</h4>
|
|
@@ -88,6 +92,7 @@ import { SessionService } from '../../../core/session.service';
|
|
|
</div>
|
|
</div>
|
|
|
<div class="font-scale">
|
|
<div class="font-scale">
|
|
|
<ui-slider
|
|
<ui-slider
|
|
|
|
|
+ label="字体大小"
|
|
|
[min]="fontMin"
|
|
[min]="fontMin"
|
|
|
[max]="fontMax"
|
|
[max]="fontMax"
|
|
|
[step]="1"
|
|
[step]="1"
|
|
@@ -95,9 +100,6 @@ import { SessionService } from '../../../core/session.service';
|
|
|
[value]="chatFont.size()"
|
|
[value]="chatFont.size()"
|
|
|
(valueChange)="setChatFont($event)"
|
|
(valueChange)="setChatFont($event)"
|
|
|
/>
|
|
/>
|
|
|
- <div class="font-legend" aria-hidden="true">
|
|
|
|
|
- <span>小</span><span>默认</span><span>大</span>
|
|
|
|
|
- </div>
|
|
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
@@ -228,16 +230,9 @@ import { SessionService } from '../../../core/session.service';
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/* 字体大小滑块区:滑块在上、小/默认/大 说明在下 */
|
|
/* 字体大小滑块区:滑块在上、小/默认/大 说明在下 */
|
|
|
|
|
+ /* 滑块的刻度与标签由 ui-slider 自己渲染(2026-11-01) */
|
|
|
.font-scale {
|
|
.font-scale {
|
|
|
- display: grid;
|
|
|
|
|
- gap: var(--sp-1);
|
|
|
|
|
- margin-top: var(--sp-2);
|
|
|
|
|
- }
|
|
|
|
|
- .font-legend {
|
|
|
|
|
- display: flex;
|
|
|
|
|
- justify-content: space-between;
|
|
|
|
|
- font-size: var(--fs-11);
|
|
|
|
|
- color: var(--muted);
|
|
|
|
|
|
|
+ margin-top: var(--sp-3);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.settings-layout {
|
|
.settings-layout {
|
|
@@ -532,12 +527,23 @@ export class DkMinePage {
|
|
|
readonly chatFont = inject(ChatFontService);
|
|
readonly chatFont = inject(ChatFontService);
|
|
|
readonly fontMin = CHAT_FONT_SIZES[0];
|
|
readonly fontMin = CHAT_FONT_SIZES[0];
|
|
|
readonly fontMax = CHAT_FONT_SIZES[CHAT_FONT_SIZES.length - 1];
|
|
readonly fontMax = CHAT_FONT_SIZES[CHAT_FONT_SIZES.length - 1];
|
|
|
- /** 滑块刻度:只标三处(小 / 默认 / 大),标满会显得杂乱 */
|
|
|
|
|
- readonly fontMarks = [
|
|
|
|
|
- { value: CHAT_FONT_SIZES[0], label: '' },
|
|
|
|
|
- { value: DEFAULT_CHAT_FONT, label: '' },
|
|
|
|
|
- { value: CHAT_FONT_SIZES[CHAT_FONT_SIZES.length - 1], label: '' },
|
|
|
|
|
- ];
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 滑块刻度(2026-11-01 按参考稿定稿)。
|
|
|
|
|
+ *
|
|
|
|
|
+ * 6 个刻度、**每个都画短线**,只有第 1 / 2 / 6 个带文字(小 / 默认 / 大)。
|
|
|
|
|
+ * 档位从 CHAT_FONT_SIZES 里按等距取样,保证刻度间距一致 ——
|
|
|
|
|
+ * 直接写死数值会在改动字号档位时与滑块对不上。
|
|
|
|
|
+ *
|
|
|
|
|
+ * 13 ─ 16 ─ 17 ─ 18 ─ 19 ─ 20
|
|
|
|
|
+ * 小 默认 大
|
|
|
|
|
+ */
|
|
|
|
|
+ readonly fontMarks: { value: number; label: string }[] = (() => {
|
|
|
|
|
+ const picks = [0, 3, 4, 5, 6, 7];
|
|
|
|
|
+ return picks.map((i, idx) => ({
|
|
|
|
|
+ value: CHAT_FONT_SIZES[Math.min(i, CHAT_FONT_SIZES.length - 1)],
|
|
|
|
|
+ label: idx === 0 ? '小' : idx === 1 ? '默认' : idx === picks.length - 1 ? '大' : '',
|
|
|
|
|
+ }));
|
|
|
|
|
+ })();
|
|
|
|
|
|
|
|
setChatFont(px: unknown): void {
|
|
setChatFont(px: unknown): void {
|
|
|
if (typeof px === 'number') this.chatFont.set(px);
|
|
if (typeof px === 'number') this.chatFont.set(px);
|