楼主: winner245

[我分享] 你知道如何在帖子里输出高质量的LaTeX公式吗?

  [复制链接]

新手

10 麦片

财富积分


050


0

主题

35

帖子

0

最佳答案
QQ
发表于 2014-1-6 11:19:28 | 显示全部楼层
看不懂这个了。

Simulink 基础讨论
版块优秀回答者

入门

194 麦片

财富积分


50500


12

主题

338

帖子

40

最佳答案
QQ
  • 关注者: 25
发表于 2014-1-6 13:47:06 | 显示全部楼层
感谢版主分享这么好的原创资料

论坛优秀回答者

退役版主

2206 麦片

财富积分



46

主题

2115

帖子

303

最佳答案
  • 关注者: 160
发表于 2014-1-7 15:24:38 | 显示全部楼层
不知斑竹有没有发现,当公式和文字混排的时候,公式对齐方式(底线对齐,中线对齐,顶端对齐)与文字不同,显得非常不协调,而且公式字体大小也会发生改变(尤其是有复合结构的时候——比如分式子,或者上下标,分式嵌套等),比如楼主给的例4。

有没有办法调整这些公式字体以及公式的对齐方式呢?

论坛优秀回答者

24

主题

1万

帖子

1638

最佳答案
  • 关注者: 956
 楼主| 发表于 2014-1-7 15:51:54 | 显示全部楼层
kastin 发表于 2014-1-7 15:24
不知斑竹有没有发现,当公式和文字混排的时候,公式对齐方式(底线对齐,中线对齐,顶端对齐)与文字不同, ...

你说的是当公式出现在文字行内,而不是单独为一行公式显示的时候吗?公式底端水平线高度略高于文字底端水平线,看起来不太协调。比如:

Let be a set of parameters

We obtain an integral as

论坛优秀回答者

24

主题

1万

帖子

1638

最佳答案
  • 关注者: 956
 楼主| 发表于 2014-1-7 15:59:12 | 显示全部楼层
本帖最后由 winner245 于 2014-2-8 22:20 编辑

这个是论坛 LaTeX 解析器的问题,对于文字、公式在一行内混排的效果并不好,暂时也没有什么解决方法。如果你的文字是英文的话,可以用比较麻烦一点的办法实现:

[latex]\text{Let } w_i\geq 0$ and $\sum_{i=1}^Nw_i=1 \text{ be a set of parameters}[/latex]



[latex]\text{We obtain an integral as }\frac{\sqrt{2}\, \int_{0}^{\infty} \frac{\mathrm{e}^{-\frac{{\left(\mathrm{mu} - x\right)}^2}{2\, {\mathrm{sigma}}^2}}\, \left(a_{1}\, x^2 + b_{1}\, x + c_{1}\right)}{a_{2}\, x^2 + b_{2}\, x + c_{2}} \,\mathrm{d} x}{2\, \sqrt{\pi}\, \mathrm{sigma}}[/latex]






论坛优秀回答者

退役版主

2206 麦片

财富积分



46

主题

2115

帖子

303

最佳答案
  • 关注者: 160
发表于 2014-1-7 17:32:23 | 显示全部楼层
本帖最后由 kastin 于 2014-1-7 18:17 编辑
winner245 发表于 2014-1-7 15:59
这个是论坛 LaTeX 解析器的问题,对于文字、公式在一行内混排的效果并不好,暂时也没有什么解决方法。如果 ...

嗯是的,你的改进方法的原理是什么呢?另外,\text{}是latex命令中嵌入文本的功能,那么$ $是什么分隔符呢?在另一个论坛,我知道两个$之间输入latex代码就能显示公式了。本论坛则是使用 [latex][/latex] 标签来输入latex代码

论坛优秀回答者

24

主题

1万

帖子

1638

最佳答案
  • 关注者: 956
 楼主| 发表于 2014-1-7 22:13:24 | 显示全部楼层
kastin 发表于 2014-1-7 17:32
嗯是的,你的改进方法的原理是什么呢?另外,\text{}是latex命令中嵌入文本的功能,那么$ $是什么分隔符呢 ...

因为论坛的LaTeX解析器不是很完美,离真正的LaTeX还有差距,所以文本和公式位于一行混排的效果很差。我的做法是将文本强制性地写在了公式里,即我这种写法实际上不是文本和公式的混排,而是纯粹的公式,即用text实现文本化的公式。之所以要用text是因为公式里默认是斜体,text函数将其转换为了文本的非斜体。

另外,我发现,如果两个公式之间夹一个文本字符的话,可以把第一个公式的 latex 结束符[/latex] 和第二个公式的latex起始符 [latex] 都换成 $ ,这样,两个 $ 中间的文本字符能出现期待的混排效果。

但如果同一行有奇数个 $,就会有问题。这些小问题,都是因为论坛的LaTeX支持不完美造成的

论坛优秀回答者

退役版主

2206 麦片

财富积分



46

主题

2115

帖子

303

最佳答案
  • 关注者: 160
发表于 2014-1-7 22:37:31 | 显示全部楼层
本帖最后由 kastin 于 2014-1-7 22:53 编辑
winner245 发表于 2014-1-7 22:13
因为论坛的LaTeX解析器不是很完美,离真正的LaTeX还有差距,所以文本和公式位于一行混排的效果很差。我的 ...

原来如此,那其实就相当于纯latex排版了,原生态的当然对齐工整。我试试$$
  1. [latex]xxayy[/latex]
复制代码
上面代码的效果是

  1. [latex]xx$a$yy[/latex]
复制代码
的效果是

正如你所说,两个字符$之间的部分被解释为文本\text{},因此这里的a不是斜体(变量)。
那是否可以用$替代\text{}命令呢?我试试下面的方式
  1. [latex]$quick fox and a_i^2$[/latex]
复制代码
效果是


论坛优秀回答者

退役版主

2206 麦片

财富积分



46

主题

2115

帖子

303

最佳答案
  • 关注者: 160
发表于 2014-1-7 23:01:40 | 显示全部楼层
本帖最后由 kastin 于 2014-1-7 23:03 编辑
winner245 发表于 2014-1-2 19:18
代码应该是这样的,效果如下

为什么你上面的手动输入latex代码没有被解释呢?难道是因为latex标签被上了颜色标记[color=],所以解释器终止了解释?如果是这样的话,那么加粗、斜体等标记也能强制解释器停止工作,就能起到显示我们输入的原始代码的效果了。

论坛优秀回答者

24

主题

1万

帖子

1638

最佳答案
  • 关注者: 956
 楼主| 发表于 2014-1-7 23:17:40 | 显示全部楼层
本帖最后由 winner245 于 2014-1-7 23:25 编辑
kastin 发表于 2014-1-7 23:01
为什么你上面的手动输入latex代码没有被解释呢?难道是因为latex标签被上了颜色标记,所以解释器终止了解 ...

我换了字体,因为它必须是英文字符才能Latex解析器被识别为 latex命令,所以,我换了仿宋体字符就不会被解释了。更换颜色和斜体等,似乎也可以,只要能让 latex解释器识别不出来就行。你可以试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 返回顶部 返回列表