【问题标题】:Use pandoc to right align part of a line of markdown使用 pandoc 右对齐 markdown 行的一部分
【发布时间】:2018-02-19 20:23:35
【问题描述】:

我想正确证明下面简历中的日期。显示我失败的尝试。

我在下面显示的内容可以转换,但日期不正确。

我使用了how do we right align part of a line in r markdown?,它适用于 pdf,但 MS Word 似乎无法正确对齐文本。

长期目标:我正在使用 markdown 和 pandoc。我想使用降价创建简历。我希望能够将其导出为 docx 和 pdf。我的编辑器是 emacs,我使用 Markdown 模式并安装了 pandoc。我使用 C-c/O 设置文件为 docx,使用 C-c/r 运行 Pandoc。我愿意拥有一个样式文件。

---
Font:Tahoma
---

# Summary
Ten years experience solving problems

# Experience

## First Job, Newark, NJ        <span align="right"> (5/2014-Present) </span>
### Programmer
* Solved analysis problems using data automation.

## Second Job, Newark, NJ      \hfill (01/01/04/2014) 
### Data Analyst
* Debugged Programs.

【问题讨论】:

  • 对于 Word 版本,您是否尝试过 Markdown -> HTML -> Word doc 使用 Pandoc 而不是 Markdown -> Word doc?
  • 我刚试过。我花了一段时间才弄清楚不间断的空间,但 html 工作但 docx 没有。 pandoc -s -o resume_question.html resume_question.md pandoc -s -o resume_question.docx resume_question.html
  • 可能不是您想听到的,但您最好的选择可能是在 Word 中创建您的简历,然后从那里另存为 PDF 以获取保留所有样式的两种格式。
  • 不是一个很好的解决方案,但在 pandoc markdown.. 你可以使用   一路走来。它实际上是在 pandoc pdf 编译中接受的 html 4 个空格

标签: markdown pandoc text-alignment


【解决方案1】:

这很可能是不可能的。

一、原Markdownrules状态:

HTML 是一种发布 格式; Markdown 是一种写作 格式。因此,Markdown 的格式化语法只解决了可以用纯文本表达的问题。

既然如此,像左对齐文本之类的东西不在 Markdown 的范围内。当然,这样做的适当方法是使用原始 HTML,正如您所尝试的那样。但那是你遇到了 Pandoc 的问题。

Pandoc 的 documentation 状态(已添加重点):

因为 pandoc 对文档的中间表示比它在其之间转换的许多格式表达力差,不应期望每种格式之间都能完美转换。 Pandoc 试图保留文档的结构元素文档,但不包括格式详细信息,例如边距大小。并且某些文档元素,例如复杂的表格,可能不适合 pandoc 的简单文档模型。虽然从 pandoc 的 Markdown 到所有格式的转换都渴望完美,但从比 pandoc 的 Markdown 更具表现力的格式转换可能会出现损耗。

由于左对齐文本不是您可以在普通 Markdown 中执行的操作,因此在转换为其他格式时可能会丢失这种操作。它在转换为 HTML 时起作用的原因是原始 HTML 只是简单地通过而不改变。标准 Markdown 行为甚至不解析 HTML。由于输出是 HTML,因此可以正常工作。但是,当使用 Pandoc 从 Markdown 转换为非 HTML 格式时,原始 HTML 中的“格式细节”会丢失。

有时,您可以成功地将 HTML 文档转换为另一种格式,但会更成功一些,但 Markdown 之外支持的功能受到严重限制。有时我看到人们甚至尝试创建他们想要的 Word 文档,然后使用 Pandoc 将其转换为 HTML 以查看 Pandoc 生成的内容。即使这样,在大多数情况下,格式都会丢失,因为它不是可以在普通 Markdown 中传达的内容。

【讨论】:

  • 我知道 Markdown 应该主要是无格式的。我希望有一种方法可以根据输出格式注入格式。右边的标签有点模糊。但我学到了很多。我的印象是,您可以通过某种可以应用格式的模板来推送所有内容。
  • @HarlanNelson 查看--reference-doc 选项和pandoc.org/MANUAL.html#custom-styles-in-docx-output
  • @mb21 谢谢,这看起来像我需要的。我需要创建一个reference.docx 并找出Word 中右侧选项卡的自定义样式。如果我有这个,它会回答我的问题。
【解决方案2】:

使用 "emsp;" 的 pandoc 解决方案可能不是最好的主意(因为 markdown 不支持对齐)代表 html 强调空间;在 &nbsp 之上。您可以将其视为 \t 选项卡。

降价是:

## First Job, Newark, NJ &emsp;&emsp;&emsp;&emsp;&emsp;&emsp; (5/2014-Present)
### Programmer
## Second Job, Newark, NJ &emsp;&emsp;&emsp;&emsp;&emsp;&emsp; (01/01/04/2014) 
### Data Analyst
* Debugged Programs.

结果:

## First Job, Newark, NJ                        (5/2014-Present)
### Programmer
## Second Job, Newark, NJ                        (01/01/04/2014) 
### Data Analyst
* Debugged Programs.

如果您希望精确刷新,请确保使用正确的字体(固定宽度类型)。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多