跳到主要内容
PulsarKit

TXT和Markdown转PDF

把纯文本或Markdown文件排成真正的PDF,带标题、列表、代码块和嵌入字体,各种文字都能正常显示。

把文件拖到这里

.txt, .md, .markdown, .text · 最大20 MB

0个字符
输入格式
更多设置

如何生成PDF

  1. 1

    拖入TXT或MD文件

    添加一个文件,最多五十个。编码会自动识别,所以旧Windows电脑上保存的笔记也能显示成文字,而不是一串问号。

  2. 2

    选择字体、字号和页面

    选择无衬线、衬线或等宽字体,设置字号、行距和页边距,再在A4和Letter之间选一种。页码只需打开一个开关。

  3. 3

    下载PDF

    点击按钮保存文件。多个文档会打包成一个ZIP,每个源文件对应一个PDF。

Markdown变成结构,而不是星号

Markdown会被解析,而不是原样打印出来。六级标题各有自己的字号;无序列表和有序列表保留项目符号和编号,最多缩进三层;引用块左侧加一条竖线;围栏代码块放在灰色底板上的等宽字体块里;表格变成对齐的列,表头下方有一条横线。段落里的粗体、斜体和行内代码都会保留。原始HTML直接丢弃,不会渲染;图片链接会跳过,因为浏览器无法读取你磁盘上的文件。如果改选纯文本模式,每个换行都按输入时的样子保留。

编码和字体:最容易出问题的两件事

文本文件很少注明自己用的是什么编码。这里先检查字节顺序标记(BOM),再按严格的UTF-8解析,最后才尝试旧的单字节编码表:结果确实是西里尔字母时用Windows-1251,否则用Windows-1252,这样法语的重音字母不会变成俄文字母。问题的另一半是字体:PDF格式内置的十四种字体只覆盖西欧文字,别的都显示不了。所以文档里嵌入的是Noto字体,而且只嵌入用到的字形,西里尔文、希腊文、阿拉伯文、希伯来文、中文、日文和韩文在任何设备上看起来都一样。

文本在你自己的设备上排版

文件的读取、解析和排版都在浏览器标签页里完成,生成的PDF直接进入你的下载文件夹。不上传,不保存,任何服务器都看不到你的合同草稿、私人日记或内部操作手册。关闭标签页,所有痕迹也随之消失。

常见问题

支持哪些Markdown语法?

标题、段落、粗体、斜体、行内代码、链接、可嵌套的无序和有序列表、引用块、围栏代码块、表格和分隔线都会排版。脚注、任务列表复选框和原始HTML不会渲染;出于安全考虑,HTML会被删除,而不是画出来。

为什么Markdown里的图片被跳过了?

因为Markdown里的图片只是一个路径,而网页无法读取你没有亲自选择的磁盘文件。文本照常排版,只是不含这些图片,并会告诉你跳过了几张,之后可以把图片作为单独的页面合并进来。

支持西里尔文、阿拉伯文和中文吗?

支持。工具会识别文本里用到的文字,并在PDF中嵌入对应的Noto字体,所以西里尔文、希腊文、阿拉伯文、希伯来文和中日韩文字都能正确显示。阿拉伯文和希伯来文按从右到左排版,不过不做字母的上下文连写。

为什么含中文的PDF更大?

因为中日韩字体包含几万个字形。这里只嵌入用到的字符,一般文档远小于一兆字节,而嵌入整个字体文件会多出六兆字节。拉丁字母和西里尔字母的文档仍然很小。

文件应该用什么编码?

最好用UTF-8,什么都不用操心。保存为Windows-1251或Windows-1252的文件也能识别并正确读取,有没有字节顺序标记都可以。带BOM的UTF-16也能用。如果哪种编码都不匹配,会在生成损坏的PDF之前告诉你。

TXT文件里的换行会保留吗?

会。纯文本模式下,每个换行都留在原处,空行用来分隔段落。超过页宽的行在单词之间折行,不会从单词中间截断;比栏宽还宽的单个单词则按字符拆开。

Markdown表格能保留吗?

能。每个表格排成等距的等宽字体列,表头加粗,下方有一条横线;每一行保持完整,不会被分页拆开。特别宽的单元格在本列内折行,不会超出页面。

最大能转换多大的文件?

单个文件最大20 MB,一批最多100 MB,相当于几千页的文字。超过这个大小,会建议你改用“文本拆分”工具,因为在一个浏览器标签页里排版这么多文字,体验会很差。

相关工具