自定义字体——给编辑器和预览分别选不同的字体
两种独立的字体设置
Markor 的字体设置分两种场景:
| 场景 | 对应元素 | 适合用什么字体 |
|---|---|---|
| 编辑器模式(Edit Mode) | 你写 Markdown / todo.txt / 代码时看到的源码 | 等宽字体(Monospace),方便对齐列表和表格 |
| 预览模式(View Mode) | Markdown 渲染后的 HTML | 衬线/无衬线/手写体,看起来像最终文档 |
Markor 允许这两种字体 分别独立设置——编辑器用等宽字体保证对齐,预览用漂亮的排版字体保证可读性。
怎么改字体
编辑器字体
- Settings → Appearance → Font(或 Settings → Editor → Font)
- 选一个你喜欢的字体
- 保存 → 编辑器立即刷新
预览字体
- Settings → Format → Markdown → Preview Font(部分版本在 Appearance 里)
- 选一个字体
- 切到预览模式 → 立即刷新
两种字体同时生效
改完后,Markor 打开任意 Markdown 文件:
- 编辑器里显示的是 你选的编辑器字体
- 切到预览模式后显示的是 你选的预览字体
Markor 内置了哪些字体
Markor 内置了一组推荐字体(可以在列表里直接选),包括:
- Monospace(系统默认等宽字体,编辑器默认)
- Noto Sans Mono(Google Noto 系列等宽字体,中文友好)
- Noto Sans CJK(Google Noto 中文字体,中文显示最漂亮)
- Roboto(Material Design 标准字体,Android 默认 UI 字体)
- Open Sans(Google 的开源无衬线字体)
- Serif / Sans-Serif / Cursive / Monospace(Android 系统通用字体族)
此外,如果你把 自己的字体文件(.ttf 或 .otf)放进 Markor 的字体目录(Markor 内部存储的 fonts/ 子目录),Markor 也会自动加载它们——在字体选择列表里能找到。
给代码编辑器选字体的推荐
Markor 作为 Android 上的代码编辑器(代码高亮页有详细讨论),编辑器字体很重要:
| 字体 | 特点 | 适合 |
|---|---|---|
| Noto Sans Mono | 中文和英文都是等宽,对齐完美 | 中英文混合写 Markdown |
| JetBrains Mono | 现代等宽字体,字符宽度精确,阅读舒适 | 纯代码编辑 |
| Fira Code | 等宽 + 连字符(=> != 显示成图标) | 喜欢连字效果的程序员 |
| Roboto Mono | 系统默认,无额外依赖 | 不想折腾,稳定就行 |
如果你在桌面端用 JetBrains Mono 或 Fira Code,把对应的 .ttf 文件放到 Markor 字体目录里,手机上也能保持一致的阅读体验。
预览字体的个性选择
预览字体可以更自由:
| 字体 | 适合 |
|---|---|
| Noto Serif CJK | 衬线字体,学术论文 / 技术文档场景 |
| Noto Sans CJK | 无衬线字体,正式文档 |
| Cursive 手写体 | 读书笔记、非正式场景 |
| Android 系统默认 | 不折腾,最稳妥 |
字体大小也可调
Markor 还提供:
- Editor font size(编辑器字号):8-36,默认 14 或跟随系统
- Preview font size(预览字号):8-36,默认 16
字号设置独立于字体选择——你可以保留字体不变、只调大小。
字体的性能影响
换自定义字体对 Markor 性能的影响 几乎为零:
- 字体文件(
.ttf/.otf)在应用启动时加载一次 - 渲染时 Android 系统的 Skia 图形库直接用字体,没有额外开销
- 即使是 10 MB 以上的 CJK 字体文件(Noto Sans CJK 完整包 ~ 15 MB),手机也能轻松处理
字体不生效怎么办
| 现象 | 原因 | 解决 |
|---|---|---|
| 选了字体但看起来没变化 | 该字体可能和系统默认长得太像 | 切到一个风格差异大的字体(如 Noto Serif CJK)验证 |
| 选了外部 .ttf 但列表里没出现 | 字体文件没放到正确目录 | 确认路径是 Markor 应用内部存储的 fonts/ 子目录 |
| 预览模式字体改了但还是旧的 | WebView 缓存了旧字体 | 强制刷新页面或重启 Markor |
| 中文字体里显示的是方框 | 选的字体不包含中文字形 | 换 Noto Sans CJK 或其他 CJK 字体 |