Voyager 聊天字号调节Chat Font Size指南80%–150% 灵活缩放 Gemini 聊天区字体【免费下载链接】voyagerEnhancement suite for Gemini, AI Studio, Claude ChatGPT — plus a prompt manager for any websites, DeepSeek Harness included. / 面向 Gemini、AI Studio、Claude 与 ChatGPT 的增强套件其中的提示词管理器可用于任意网站如 DeepSeek Harness。项目地址: https://gitcode.com/gh_mirrors/ge/voyager本文以 Voyager 扩展的**聊天字号调节Chat Font Size**功能为焦点介绍如何在 Gemini 聊天区按 80%–150% 的比例自由缩放字体以获得更舒适的阅读体验。读完本文你将掌握该功能的完整配置参数、滑块操作方式、底层 CSS 注入机制与存储键语义并能依据仓库源码和测试用例自行验证其行为。该功能于 Voyager 1.3.8 版本引入默认关闭off by default需在弹窗popup中手动开启。功能简介不同用户对聊天字号有截然不同的偏好有人喜欢紧凑的正文以提升信息密度也有人倾向更大的字号来缓解视觉疲劳。Voyager 的聊天字号调节功能允许你把 Gemini 聊天区的字号在80% 到 150%之间自由调整。灵活的范围支持 80%–150% 的字号调节覆盖绝大多数阅读需求完整覆盖同时作用于用户消息与模型回复涵盖正文文本、列表、表格与代码块代码块优化代码块字号会按比例自动缩小正文字号 × 0.875在代码与普通文本之间保持视觉层级即时生效改动无需刷新页面即可实时预览。开启方式与操作步骤点击浏览器工具栏中的 Voyager 图标打开设置面板popup在布局设置中找到Tamaño de fuente del chat聊天字号条目开启开关默认关闭拖动滑块调整字号百分比——页面会实时预览变更效果。弹窗中该滑块的最小值为80、最大值为150、步长为5即允许选择的百分比为 80%、85%、90%、…、150%两端分别标注 Pequeño小 与 Grande大 文案。相关 UI 实现见 PopupLayoutSettings.tsx滑块文案在 西班牙语语言包 中定义chatFontSize/chatFontSizeSmall/chatFontSizeLarge。核心参数一览参数取值 / 默认值说明字号范围min/max80% – 150%支持调节的字号百分比区间滑块步长step5每次拖动的最小增量见 layoutSettings.ts默认字号100%未设置或设置非法时的回退值代码块系数× 0.875代码块字号 正文字号 × 0.875见 chatFontSize/index.ts行高正文1.6注入样式中正文行高行高代码块1.5注入样式中代码块行高功能开关默认值关闭off需要用户在 popup 中手动开启配置常量集中在 layoutSettings.ts 中CHAT_FONT_SIZE { min: 80, max: 150, defaultValue: 100 }。存储键则定义在内容脚本 chatFontSize/index.ts 中gvChatFontSizeEnabled功能开关布尔值gvChatFontSize当前字号百分比数值如120表示 120%。底层实现原理动态注入style样式内容脚本入口startChatFontSizeAdjuster位于 chatFontSize/index.ts并已在 内容页面入口 中被调用。它的核心机制是读取存储中的开关与百分比后向document.head注入或更新一个id为gemini-voyager-chat-font-size的style元素将所有相关选择器的font-size设置为${percent}%并附带!important优先级从而覆盖 Gemini 页面自身内联设置的字号。CSS 选择器按消息类型分层覆盖用户消息内部文本元素.query-text、.query-text-line、user-query-content .gds-body-l、[data-message-author-roleuser] .gds-body-l等Gemini 会直接在这类元素上设置font-size模型回复内部文本元素message-content、.response-content、model-response .markdown、[data-message-author-roleassistant] .markdown等Markdown 块级元素p、li、td、th防止 Gemini 主题对这些元素单独设置字号导致不统一代码块code、pre、.code-container、.formatted-code-block-internal-container code等字号统一为calc(${percent}% * 0.875)比正文略小以保持层级。正文行高固定为1.6代码块行高为1.5避免放大字号后行距过挤。越界钳制Clamp与数据归一化为避免存储中被写入非法值实现中提供了两层防护clampPercent先把值四舍五入再夹取到[80, 150]区间chatFontSize/index.tsnormalizePercent对非有限数值如NaN/Infinity回退到默认值100chatFontSize/index.ts。在初始化读取存储时若发现存储值与归一化结果不一致例如旧版本写入的200还会回写归一化后的值到chrome.storage.sync实现自我修复chatFontSize/index.ts。实时同步存储监听与即时生效即时生效、无需刷新依赖于chrome.storage.onChanged监听器当弹窗侧写入gvChatFontSizeEnabled或gvChatFontSize时内容脚本立即更新或移除注入的样式chatFontSize/index.ts。关闭开关时调用removeStyles()移除style节点字号恢复原样页面卸载beforeunload时也会清理监听器与样式避免内存泄漏。弹窗侧的防抖写入弹窗侧通过useWidthAdjusteruseWidthAdjuster.ts管理滑块状态拖动过程中只更新本地width状态用户松手onValueCommit时才把最终值写入存储组件卸载时若有未提交的拖动值也会补写一次。这样既保证了实时预览又避免拖动过程中频繁触发存储写入。测试验证仓库在 chatFontSize.test.ts 中为该项功能提供了完整的单元测试可作为行为契约开启时注入样式存储中enabled: true、值为120时注入样式中应包含font-size: 120% !important关闭时不注入enabled: false时不应注入任何样式存储变更实时更新将值从 120 改为 140 后样式文本更新为font-size: 140% !important关闭开关移除样式enabled从 true 变为 false 后style节点被移除越界钳制写入 200 时被钳制为最大 150选择器覆盖断言样式文本同时包含用户消息选择器.query-text、.gds-body-l与模型回复选择器message-content、.markdown-main-panel以及块级元素model-response p、message-content li。与其他布局调节项的关系聊天字号调节属于弹窗布局设置Layout Settings系列的一部分与聊天宽度Chat Width30%–100%、行距Chat Spacing120%–220%并附带段落间距 0–24px等共用同一套滑块组件与存储机制layoutSettings.ts。它们共享useWidthAdjuster的防抖写入逻辑且在 popupSettingsSearchIndex.ts 中注册了搜索索引chatFontSize/chatFontSizeSmall/chatFontSizeLarge方便用户在弹窗搜索框中直接定位该设置。注意事项该功能默认关闭请先在 popup 中打开开关字号百分比仅作用于 Gemini 聊天消息区域的文本不影响扩展自身 UI存储值异常时会被自动归一化到 80%–150% 区间超出范围的值如 200会被钳制为 150该功能面向 Gemini 聊天界面若 Gemini 前端 DOM 结构发生大版本重构导致选择器失效需要同步更新 chatFontSize/index.ts 中的选择器列表。【免费下载链接】voyagerEnhancement suite for Gemini, AI Studio, Claude ChatGPT — plus a prompt manager for any websites, DeepSeek Harness included. / 面向 Gemini、AI Studio、Claude 与 ChatGPT 的增强套件其中的提示词管理器可用于任意网站如 DeepSeek Harness。项目地址: https://gitcode.com/gh_mirrors/ge/voyager创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
