LaTeX实时预览中文

liuofficial 2020-02-22

参考资料:http://blog.sina.com.cn/s/blog_6ea58f530101aizw.html

功夫不负有心人,终于在经过艰苦卓绝的寻找之后,让我的Texpad实现了实时预览。此时的心情那叫一个澎湃:-)

先说一下我的解决方案(Texpad + CJK packages) Texpad是macos和ios上的一款LaTeX排版软件,这个软件的开发者基于TeX重写了一个TeX引擎,名为TexpadTeX,它的过人之处是做到了pdf实时预览,注意不是实时编译,速度相当之快~。CJK则是一款支持中日韩三国语言的包,我昨天一度认为CJK是一种过时的用法,现在的主流是xelatex+xeCJK,或者说CTeX。但是没想到这个包和Texpad擦出了别样的火花。

不多说了,看效果:

LaTeX实时预览中文

可见对中文的反应速度是相当快的。


   文章到这里貌似应该结束了,只不过是一个好用的软件加上一串代码:

\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{gbsn}
这是一个CJK例子,使用了UTF-8编码和gbsn字体。
\end{CJK}
\end{document}

那为什么会我会花了这么久才找到解决方案呢? TEX 是基于单字节编码的,因为 Knuth 当初开发 TEX 时没考虑那么远,也没有现成的标准可以借鉴。” 这就导致各种TeX编译引擎对中文的支持一言难尽,这也是ctex,xelatex出现的原因。在我使用的Texpad上,假如用常见的中文支持手段会发生什么呢?

手段1:调用ctex包,或者使用ctex内置的文档类

\documentclass[UTF8]{ctexart}
\begin{document}
这是一个CTEX的utf-8编码例子,{\kaishu 这里是楷体显示},{\songti 这里是宋体显示},{\heiti 这里是黑体显示},{\fangsong 这里是仿宋显示}。
\end{document}

将会报错:LaTeX实时预览中文

当前使用的引擎--实时预览引擎Texpadtex不支持ctex,实时预览梦破灭。

手段2:使用xeCJK包。 

\documentclass{article}
\usepackage{xeCJK}
\setCJKmainfont{SimSun}
\begin{document}
中文 \LaTeX 示例。
\end{document}

LaTeX实时预览中文  报错没有找到xeCJK.sty文件,我分析后认为不是少了这个文件这么简单。再加上xeCJK文档里有这么一句话,只支持xeLaTeX,实时预览梦再度破灭。

没有第三个手段了。值得一提的是对于这两个手段,假如在texpad中设置外置编译器为xelatex,仍可以完美运行。只不过实现不了实时预览,仅仅是auto保存,闲时编译预览而已。

你可能觉得只要这个开发商多提供一些对中文的支持就行了,我们就能用自己熟悉的手段调用中文了。遗憾的是我在这个软件提供的补充bundle里没有找到好的中文支持,而且在大陆地区下载很慢。只希望对中文的支持能够后续跟进吧。

相关推荐

hanshandiaozhe / 0评论 2020-06-25
liuqiangaliuv / 0评论 2020-02-15