右对齐方便字母地址。不幸的是,根据作者John MacFarlane:
pandoc文档模型不允许在表格之外进行对齐,因此简单地忽略对齐信息。
我们可以使用原始的LaTeX。
经过反复试验(和谷歌搜索),我发现这个TeX语法按预期工作:
\rightline{Address 1}
\rightline{Address 2}
\rightline{etc}
LaTeX等效物也可以:
\begin{flushright}
Address 1\\
Address 2\\
etc
\end{flushright}
基于LaTeX命令raggedleft
的侵入性较小的语法很遗憾不起作用:
{\raggedleft
Address 1\\
Address 2\\
etc\\
}
这是因为大括号是逐字传递的(\{
,\}
)而不是原始的LaTeX。
参考中心对齐,我发现user声称markdown支持这种原生(漂亮)语法:
-> This is center align <-
但我没有找到支持它的编辑器/转换器。
确实,我的工作范例都反对John Gruber markdown philosophy:
Markdown格式的文档应该像普通文本一样可以发布,而不会看起来像是标记了标签或格式说明。
你能找到更好的方法吗?
特别是可以简单地编写Pandoc模板来重新定义标题的对齐方式,例如:###### Right aligned
?
答案 0 :(得分:8)
对于那些正在寻找类似问题的人来说,如何在同一行上保持对齐/右对齐:
**Some bolded text** **\hfill some right aligned on same line bolded text**
您必须想象结果,因为我不确定如何在SO上重新创建它。
答案 1 :(得分:3)
处理此问题的最佳方法是将地址放在YAML元数据块中(由pandoc 1.12+支持),并在自定义模板中进行对齐。然后您的源文档将是干净的,没有原始LaTeX,您可以修改模板以获得任何输出格式的所需外观。
源文档可能如下所示:
---
address:
| 23 Main St.
| Somewhere, MT 23434
...
Dear so and so,
然后在你的LaTeX模板中你会有类似的东西:
\begin{flushright}
$address$
\end{flushright}
但是,如果您正在写一封信,那么使用LaTeX字母类编写模板可能会更好。