
简介Typora-Academic-Zh 是一套面向中文写作者、科研人员与学生的 Typora 学术风格主题基于官方 Academic 主题改造正文字体采用华文中宋等宽字体选用 CamingoCode主要解决中文论文、笔记排版中字体与代码样式不协调的问题。与官方 Academic 相比该主题重点调整了代码块样式采用带外边框的呈现方式视觉层次更清晰适合撰写学术论文、课程笔记或技术文档。资源包共 14 个文件以 woff 字体文件为主另含 css 样式表、pdf 说明与许可文档、md 与 txt 文本压缩包约 15.46MB字体与样式文件可直接解压至 Typora 主题目录使用。目前已有 451 人学习下载。主题还支持通过 div 与 center 标签实现右对齐与居中对齐方便排版控制README 中附有示例与安装说明便于快速上手并对照调整。1. 中文学术写作在 Typora 里为什么总差点意思用 Typora 写论文、开题报告、文献综述的人多半经历过同一个瞬间内容敲完了导出 PDF 一看中文段落挤成一团行距像被压扁标题层级和正文字号几乎分不出主次英文摘要反而比中文正文好看。这不是 Typora 的锅是默认主题压根没为中文排版做过适配。Typora-Academic-Zh 这个方向要解决的就是让 Typora 在中文场景下呈现接近学术期刊或学位论文的观感——标题层级清晰、正文行距舒展、引用和代码块不突兀、中英文混排不打架。它适合每天用 Markdown 写长文的研究生、科研助理和技术文档作者也适合想把 Typora 当主力写作工具、但被默认样式劝退的人。下面按「先搞懂主题机制再动手改最后避坑」的顺序讲清楚。2. Typora 主题的加载机制与中文学术风格的技术拆解2.1 主题文件放在哪、怎么被加载Typora 的主题本质是一个 CSS 文件放在主题目录里启动时由 Typora 注入到渲染进程中。不同系统路径不同但逻辑一致打开 Typora依次点「文件 → 偏好设置 → 外观 → 打开主题文件夹」就能定位到当前生效的主题目录。所有.css文件都会出现在「主题」菜单里文件名就是菜单项名称。一个主题通常包含这些文件文件作用xxx.css主样式控制正文、标题、列表、引用xxx.user.css用户覆盖层优先级高于主样式升级主题不丢改动fonts/可选放自定义字体文件*.json部分主题带配置Typora 不强制读取关键点在于user.css。很多人直接改主 CSS主题一更新改动全没血泪经验就是所有个性化调整写进user.css主文件只读不改。2.2 中文学术排版到底要调哪些 CSS 属性学术风格不是「好看」是「规范」。中文学术排版有几个硬指标对应到 CSS 就是具体属性正文行距中文需要比英文更松line-height一般设 1.7 到 1.9英文 1.5 就够。默认主题往往只有 1.5中文读起来发闷。段间距中文学术习惯段间不空行或空半行靠margin控制而不是靠空段落。首行缩进中文学术正文常要求首行缩进两字符CSS 里用text-indent: 2em但要注意列表、引用、代码块不能缩进。字体栈正文用宋体或思源宋体标题用黑体或思源黑体代码用等宽字体。字体栈要按「中文优先、英文兜底」排列。标题层级一级标题最大逐级递减且字号差距要明显否则导出后分不清层级。中英文混排间距中英文之间自动加空隙靠text-spacing或手动letter-spacing微调避免「中文English中文」挤在一起。这些属性单独调都不难难的是它们互相影响。比如加了首行缩进引用块也跟着缩进就难看调了行距代码块行距也被拉大就松散。所以中文学术主题的核心工作是分区控制正文区、标题区、引用区、代码区各自独立设样式。2.3 从零写一个最小可用的中文学术主题不用等现成主题自己写一个最小版本更能理解机制。在主题文件夹新建academic-zh.css写入以下内容/* academic-zh.css —— 中文学术风格最小主题 */ :root { --body-font: Source Han Serif SC, Noto Serif CJK SC, SimSun, serif; --heading-font: Source Han Sans SC, Noto Sans CJK SC, SimHei, sans-serif; --mono-font: JetBrains Mono, Cascadia Code, Consolas, monospace; --text-color: #1a1a1a; --bg-color: #fdfdfd; --line-height: 1.8; } /* 正文区 */ #write { font-family: var(--body-font); font-size: 16px; line-height: var(--line-height); color: var(--text-color); background: var(--bg-color); max-width: 800px; margin: 0 auto; padding: 40px 60px; } /* 正文段落首行缩进两字符段间距半行 */ #write p { text-indent: 2em; margin: 0.5em 0; } /* 标题区黑体层级字号递减 */ #write h1, #write h2, #write h3, #write h4 { font-family: var(--heading-font); font-weight: 600; text-indent: 0; margin-top: 1.6em; margin-bottom: 0.6em; } #write h1 { font-size: 1.8em; } #write h2 { font-size: 1.5em; } #write h3 { font-size: 1.25em; } #write h4 { font-size: 1.1em; } /* 引用块不缩进左侧竖线浅灰底 */ #write blockquote { text-indent: 0; border-left: 3px solid #999; background: #f5f5f5; padding: 0.6em 1em; margin: 1em 0; color: #444; } /* 代码块等宽字体行距收紧 */ #write pre, #write code { font-family: var(--mono-font); line-height: 1.5; text-indent: 0; } #write pre { background: #f0f0f0; padding: 1em; border-radius: 4px; overflow-x: auto; } /* 列表不缩进首行保持对齐 */ #write ul, #write ol { text-indent: 0; padding-left: 2em; }这段 CSS 的逻辑说明:root里定义变量方便统一改字体和行距#write是 Typora 正文容器的 ID所有正文样式挂在它下面p设text-indent: 2em实现首行缩进同时margin控制段间距标题单独设text-indent: 0抵消缩进引用块和代码块也重置缩进避免被正文样式污染。参数上line-height: 1.8是中文长文比较舒服的值max-width: 800px控制阅读宽度太宽眼睛累太窄频繁换行。保存后重启 Typora在「主题」菜单选academic-zh即可生效。如果字体没装会回退到系统默认所以下一步要处理字体。2.4 字体选型与安装思源系列为什么是首选中文学术主题的字体选型绕不开思源宋体和思源黑体。原因是它们开源、覆盖全、字形规范且同时有简繁日韩字形中英文混排时标点不会错位。常见做法是正文用思源宋体Source Han Serif SC对应学术论文的宋体正文。标题用思源黑体Source Han Sans SC对应黑体标题。代码用JetBrains Mono或Cascadia Code等宽且连字好看。安装方式按系统走Windows 下载 OTF 双击安装macOS 拖进「字体册」Linux 放到~/.local/share/fonts/后执行fc-cache -fv。装完在 CSS 的字体栈里把对应名称写在最前面系统找不到才回退。注意字体名称必须和系统里显示的名称完全一致比如「Source Han Serif SC」不能写成「思源宋体」否则回退到默认字体样式全变。3. 把主题调成「论文可交」状态参数、导出与验证3.1 行距、字号、页宽的联动调参中文学术排版里行距、字号、页宽是联动的。字号 16px 配行距 1.8、页宽 800px 是通用起点但不同场景要微调场景字号行距页宽说明屏幕阅读16px1.8800px默认适合大多数显示器打印预览14px1.9720px接近 A4 正文密度学位论文15px2.0760px留出批注空间技术文档15px1.7860px代码多行距略紧调参时一次只改一个值改完导出 PDF 看效果。同时改多个值出问题不知道是哪个引起的。我一般会在user.css里覆盖主文件不动/* user.css —— 个人覆盖层 */ #write { font-size: 15px; line-height: 2.0; max-width: 760px; }这样主题更新时主文件被替换user.css保留改动不丢。3.2 导出 PDF 时中文不乱的三个设置Typora 导出 PDF 走的是内置渲染中文乱不乱取决于三处第一导出前切换主题。导出用的是当前主题样式如果当前是默认主题导出就是默认样式。先切到academic-zh再导出。第二页边距设置。在「文件 → 导出 → PDF」里可以设页边距中文学术一般上下 2.5cm、左右 3cm留装订线。设太小正文贴边打印出来难看。第三字体嵌入。如果导出后换台电脑打开 PDF 字体变了说明字体没嵌入。Typora 导出 PDF 默认嵌入系统字体但前提是字体已安装。没装思源字体就导出PDF 里是回退字体换机器就露馅。验证方法导出 PDF 后用 PDF 阅读器看「文档属性 → 字体」确认思源宋体、思源黑体都在列表里。不在就回去装字体。3.3 用 user.css 做可维护的个性化user.css是 Typora 主题的后悔药。它的加载顺序在主 CSS 之后同优先级下后者覆盖前者。所以个性化调整全写这里主文件保持原样。一个可维护的user.css应该按区块组织/* 字体 */ #write { font-family: Source Han Serif SC, Noto Serif CJK SC, serif; } /* 标题 */ #write h1 { font-size: 1.9em; } #write h2 { font-size: 1.55em; } /* 引用 */ #write blockquote { border-left: 4px solid #666; background: #fafafa; } /* 表格 */ #write table { border-collapse: collapse; width: 100%; } #write th, #write td { border: 1px solid #ccc; padding: 0.4em 0.8em; }这样组织的好处是想改哪块找哪块不会在一堆样式里翻。注释用/* 区块名 */分隔比空行清晰。3.4 验证主题是否真的生效改完 CSS 别急着写正文先做三步验证看主题菜单academic-zh出现在列表里选中后界面立刻变化。看开发者工具Typora 按CtrlShiftImacOS 是CmdOptionI打开开发者工具选中正文段落看font-family和line-height是不是你设的值。不是就说明选择器没命中或被覆盖。导出测试写一段中英文混排、带标题、引用、代码块、表格的测试内容导出 PDF检查缩进、行距、字体、层级是否都正常。这三步走完主题才算真正可用。跳过验证直接写论文导出时才发现问题返工成本高。4. 中文学术主题的避坑与排查4.1 首行缩进把列表和引用也缩进了现象正文首行缩进正常但列表项、引用块、代码块也跟着缩进排版错乱。原因text-indent设在#write上会继承给所有子元素列表和引用没有重置。解决在#write p上设缩进而不是#write同时给ul、ol、blockquote、pre显式设text-indent: 0。这样只有正文段落缩进其他区块不受影响。4.2 中英文混排时标点错位、间距怪异现象中文和英文之间没有空隙或者中文标点占了英文标点的位置读起来别扭。原因字体栈里中英文字体顺序不对或者用了不含中文标点的英文字体。解决字体栈按「中文字体在前、英文字体在后」排列让中文标点走中文字体。比如Source Han Serif SC, Times New Roman, serif。如果还有间距问题加letter-spacing: 0.02em微调但别加太多否则中文变松散。4.3 导出 PDF 后字体变了、行距变了现象Typora 里预览正常导出 PDF 后字体变成默认宋体行距也紧了。原因导出用的渲染引擎和预览不完全一致且 PDF 导出不读user.css的某些属性或者字体没嵌入。解决先确认字体已安装且名称正确导出前切到目标主题在导出设置里勾选嵌入字体如果有该选项。如果还不行用「打印 → 另存为 PDF」走系统打印路径样式更可控。4.4 主题更新后改动全丢现象主题作者更新了主 CSS自己之前改的样式全没了。原因直接改了主 CSS 文件更新时被覆盖。解决所有改动写进user.css主 CSS 只读。这是唯一可靠的后悔药。如果已经改了主文件更新前先备份更新后对比合并。4.5 代码块行距被正文行距带跑现象正文行距 1.8 很舒服但代码块也被拉到 1.8代码行之间空太大一屏看不了几行。原因line-height设在#write上代码块继承。解决给#write pre和#write code单独设line-height: 1.5覆盖继承值。代码块行距紧一点更接近编辑器观感。5. 进阶让主题适配学位论文格式的实操技巧走到这一步主题已经能日常用了。但如果要交学位论文还得再往前一步——把 Typora 主题和学校格式要求对齐。我一般这么做先拿到学校的论文格式文件把字号、行距、页边距、标题层级要求列成表然后逐项映射到 CSS。比如学校要求「一级标题黑体三号、二级标题黑体四号、正文宋体小四、行距 1.5 倍」对应 CSS 就是/* 学位论文格式映射 */ #write { font-size: 12pt; line-height: 1.5; } /* 小四约 12pt */ #write h1 { font-family: SimHei; font-size: 16pt; } /* 三号约 16pt */ #write h2 { font-family: SimHei; font-size: 14pt; } /* 四号约 14pt */ #write p { font-family: SimSun; text-indent: 2em; }注意 pt 和 px 的换算1pt 约等于 1.333px但 Typora 里直接用 pt 更贴近 Word 习惯。导出 PDF 时页边距在导出设置里单独调CSS 管不了页边距。还有一个技巧是用注释标记章节。在 Markdown 里用!-- 第一章 --这类注释导出时不会显示但源码里能快速定位。配合 Typora 的大纲面板长论文导航效率高很多。最后说个我自己的习惯每次改完主题先写一篇 500 字的测试文档包含所有会用到的元素——标题、正文、列表、引用、代码、表格、公式、图片——导出 PDF 检查一遍。这个测试文档存着换主题或改样式后跑一遍比凭记忆靠谱。主题这东西调一次管很久但调的时候别偷懒该验证的步骤一步都别省。希望帮到你。本文还有配套的精品资源点击获取