文件格式任意转换助手Transfer Any File

离线 · 无上传 · 浏览器本地完成Offline · no uploads · runs in the browser

Markdown 转纯文本——离线、按阅读顺序、不上传Markdown to plain text offline, in reading order, no upload

很多地方只吃纯文本——工单系统、聊天的代码框以外、另一个编辑器的查找替换。这条路先把 Markdown 渲染成 HTML,再从那份 DOM 里按阅读顺序抽文字。实测一篇含标题、列表、表格、链接与图片的文档,得到的是:`# 标题` 变成一行「标题」,`**粗**` 与 `` `代码` `` 只剩文字,`- 项目` 变成**没有符号的一行**,有序列表按位置重新编号并给嵌套层每层两个空格,链接写成 `文字 [https://…]`,图片写成 `[Image: 替代文字]`。也就是说,这一层保的是「谁在谁前面、谁属于哪一层」,而不是「哪一段是几级标题」。表格是这步最容易意外的地方:实测每个单元格各占一行、后面跟一个制表符,因为渲染器会在单元格之间写换行、而提取器照抄。Plenty of destinations accept nothing but plain text — ticket systems, the parts of a chat outside its code box, another editor’s find-and-replace. This route renders the Markdown to HTML first, then walks that DOM in reading order. Measured on a document holding a heading, lists, a table, a link and an image: `# Title` becomes the single line “Title”, `**bold**` and `` `code` `` keep only their words, `- item` becomes **a line with no bullet**, ordered lists are renumbered by position with two spaces of indent per nesting level, a link becomes `text [https://…]`, and an image becomes `[Image: alt text]`. What this layer preserves is who comes before whom and what nests inside what — not which paragraph was a level-two heading. Tables are where people get surprised: measured, every cell lands on its own line followed by a tab, because the renderer writes newlines between cells and the extractor copies them.

一批转换结果卡片,含文件名、体积与下载入口
一次混合批量,一个 ZIP 下载One mixed batch, one ZIP download

这条链路怎么走How the route runs

MarkdownMarkdown HTMLHTML 纯文本 (TXT)plain text (TXT)

共 2 步,由扩展的路径搜索自动选出,中间产物不落盘。2 steps, chosen by the extension's own path search; intermediate results never touch the disk.

会保留什么What carries over

  • 阅读顺序与层级:标题、段落、列表项依次换行,嵌套列表每层缩进两个空格(最多 6 层,再深也不会把结构抹平)Reading order and nesting: headings, paragraphs and list items each break the line, nested lists indent two spaces per level, capped at six, so structure is never flattened away
  • 有序列表按位置重新编号,并尊重 `start`(`start="3"` 的列表从 3 开始),列表项不会被并进上一段Ordered lists are numbered by position and honour `start` (a list starting at 3 begins at 3), and an item is never merged into the paragraph above it
  • 链接把地址留在文字后面(`文字 [https://…]`),页内锚点与 `mailto:` 则只留文字A link keeps its address after the text as `text [https://…]`; in-page anchors and `mailto:` contribute text only
  • 图片用 `alt` 写成 `[Image: 替代文字]`,没有 alt 时写 `[Image]`,不会整个消失Images become `[Image: alt text]` from their alt attribute, or `[Image]` when there is none, so nothing simply vanishes

如实说明的限制What it does not do

  • 无序列表的项目符号不保留:`- ` 与 `* ` 都会变成一行干净文字,靠换行表示「这是一条列表」Bullets do not survive: both `- ` and `* ` become a clean line, and the line break alone says “this was a list”
  • 表格不成行:实测单元格各占一行、后面跟一个制表符(渲染器在单元格之间写换行、提取器照抄)。要留表格请用 Markdown 转 HTML 或转 WordTables do not stay on one line: measured, each cell lands on its own line followed by a tab, because the renderer writes newlines between cells and the extractor copies them. Use Markdown to HTML or to Word to keep a table
  • 记号一律消失:标题层级、加粗、斜体、行内代码、围栏代码块的 ``` 都不进产物;任务清单的复选框也只剩后面的文字All notation disappears: heading levels, bold, italic, inline code and fenced ``` markers are not in the output, and a task list keeps only the words after its checkbox
  • 不执行 CSS,也不判断可见性:`display:none` 区域的文字照样会被抽出来;脚本与 `<style>` 整段丢弃Nothing about CSS or visibility is judged: text hidden by `display:none` is still extracted, while `script` and `<style>` are dropped whole
  • 产物是 UTF-8 纯文本、不带 BOM;三个以上连续换行压成两个,首尾空白被清掉The artefact is UTF-8 plain text without a BOM; runs of three or more newlines collapse to two and the ends are trimmed

实操提示Working with it

  • 要去掉记号但**保留表格**:走 Markdown 转 HTML(管道表成为真的 `<table>`)或转 WordTo drop the notation but keep the table: take Markdown to HTML (the pipe table becomes a real `<table>`) or to Word
  • 要的是能打印、版式固定的成品:Markdown 转 PDF(整页渲染成图片,没有文字层)For a fixed, printable artefact: Markdown to PDF, which renders whole pages to images and has no text layer
  • 反方向也通:纯文本转 Markdown 会把整篇包进一个代码块,代码块长度不足时自动加长围栏,不会截断内容The way back is deliberately lossy-safe: TXT to Markdown wraps the whole file in a code fence, lengthening it when the content already contains backticks, so nothing is cut off

常见问题Questions people actually ask

项目符号和标题层级都会没有吗?Do the bullets and heading levels really disappear?

是。这一层的产物是纯文本,没有表示「二级标题」或「这一项是列表项」的语法,所以只留下换行、缩进与编号。要是你需要保住层级语义,选 Markdown 转 HTML 或转 Word。Yes. Plain text has no syntax for “this was a level-two heading” or “this line is a list item”, so what remains is line breaks, indentation and numbering. If that semantics matters, take Markdown to HTML or to Word.

表格转出来为什么一格一行?Why does my table come out one cell per line?

因为中间那步渲染器会在单元格之间写换行,而文字提取会把换行照抄进去(实测 `Name Value `)。同一条提取用在紧凑排版的表格上就是一行一条记录——差别只在源 HTML 的写法。要留表格请用转 HTML 或转 Word。The renderer in the middle step writes newlines between cells, and the extractor copies them (measured: `Name Value `). The same extraction on a compactly formatted table gives one record per line — the difference is entirely how the source HTML is written. Keep the table by going to HTML or Word.

README 里有敏感链接,转完会漏出去吗?My README has private links — could converting leak them?

不会。渲染与提取都在扩展自己的标签页里完成,产物里也不请求网络;只申请 storage 权限、没有 host 权限。链接地址反而会被显式保留在文字后面,所以转出后可见范围由你决定。No. Rendering and extraction happen inside the extension’s own tab, the artefact requests nothing, and the manifest carries the storage permission only. Link addresses are kept visibly after their text, so you decide who sees the result.

不需要账号,也不需要联网:装好扩展后点图标,在新标签页里打开工作台,文件从磁盘直接选。No account and no network: install the extension, click its icon, and the workbench opens in a new tab reading straight off your disk.