【已解决】PyLaTeX 编译中文出现乱码
【已解决】PyLaTeX 编译中文出现乱码
最近在使用PyLaTeX编辑文档时,由于是第一次在Python中编写中文的LaTeX文档,所以遇到了以下的问题:
- PyLaTeX无法编译中文;
- 产生的.pdf文件中,中文显示为乱码。
解决步骤:
在使用PyLaTeX创建文档时,引用ctex
中文宏包。代码为:
# Use ctex package
doc.packages.add(Package('ctex'))
这个时候,虽然可以创建带有中文的.tex文件了,但是在创建的.pdf文件中,中文是以乱码的形式出现的。因此,解决方法为在generate_pdf()
中使用XeLaTeX
编译器。代码为:
doc.generate_pdf('testPylatex5',compiler='xelatex', clean_tex=False)
其中,testPylatex5
为文件名。
注意:
对于xelatex
解决方案要注意的重要一点是,这需要安装latexmk
,因此强烈建议安装latexmk
,因为它可以根据需要编译latex
,biblatex
和其他文件。
在安装latexmk之前,需要先安装perl.exe
,建议安装strawberry perl
。然后在MikTex Console
的package
里下载安装latexmk
。在安装完成后,重启计算机。
部分创建文档的代码:
if __name__ == '__main__':# Document with `\maketitle` command activateddoc = Document()doc.packages.add(Package('ctex'))doc.preamble.append(Command('title', '已解决PyLaTeX中文编译问题!!'))doc.preamble.append(Command('author', 'XXX'))doc.preamble.append(Command('date', NoEscape(r'\today')))doc.append(NoEscape(r'\maketitle'))# Add stuff to the documentwith doc.create(Section('First section')):doc.append('Some text.')with doc.create(Figure(position='h!')) as kitten_pic: kitten_pic.add_image('kitten.jpg', width='8cm') kitten_pic.add_caption('小猫') doc.generate_pdf('testPylatex5',compiler='xelatex', clean_tex=False)tex = doc.dumps() # The document as string in LaTeX syntax
创建成功的.pdf文件:
如果在交叉引用时,发生错误,可参考我的另一个文章:https://blog.csdn.net/qq_39560620/article/details/105356869
参考链接:
Github上的参考issue: https://github.com/JelteF/PyLaTeX/issues/128
generate_pdf()的官方介绍
使用miktex中使用latexmk
Strawberry perl 官方下载地址
【已解决】PyLaTeX 编译中文出现乱码相关推荐
- linux vlc乱码,一劳永逸解决VLC播放中文字幕乱码问题
VLC对于Mac/Ubuntu用户来说算得上是必备软件.其相当于PC机上的"暴风影音",但Mac/Ubuntu的新手使用VLC播放avi时都会碰 到字幕乱码的问题.avi字幕的格式 ...
- QT学习笔记(四):Qt5+MSVC编译 中文字符显示乱码问题解决
QT学习笔记(四):Qt5+MSVC编译 中文字符显示乱码问题解决 问题: 1.解决方法一: 2.解决方法二: 3.解决方法三: 4.解决方法四: 结果显示: Qt5+MSVC编译 中文字符显示乱码. ...
- 如何解决python 图表中文显示乱码问题(matlplotlib 包)
如何解决python 图表中文显示乱码问题(matlplotlib 包) 参考文章: (1)如何解决python 图表中文显示乱码问题(matlplotlib 包) (2)https://www.cn ...
- python打开中文文件名_解决python打开中文文件名乱码的问题
解决python打开中文文件名乱码的问题 发布时间:2020-07-27 11:20:22 来源:亿速云 阅读:162 作者:清晨 小编给大家分享一下解决python打开中文文件名乱码的问题,相信大部 ...
- 解决cv保存图片中文名称乱码 cv2.imwrite cv2.imencode
解决opencv保存图片中文名称乱码 寮犱笁 代码 import cv2cv2.imwrite('张三.jpg') 解决办法 import cv2output_path = '张三.jpg' cv2. ...
- 网页突然乱码_如何解决HTML网页中文显示乱码的方法
"无忧主机解决php网页中文显示乱码问号( ? ? ? )的一些意见"这是我在上篇中介绍的关于如何解决网页显示乱码的问题,这是在动态网站下发生的.在纯html网页下,会不会也存在的 ...
- 解决 Centos7 下中文显示乱码
解决 Centos7 下中文显示乱码 博主博客 https://blog.uso6.com https://blog.csdn.net/dxk539687357 首先查看当前系统默认采用的字符集 命令 ...
- 如何解决HTML网页中文显示乱码
定义网页显示编码 刚才在vim终端上随便写了段html的代码,在Google Chrome上打开中文无法被识别,造成显示出来的网页是乱码. 后来发现乱码是因为未定义网页编码,导致在浏览网页的时候,系统 ...
- 解决docker容器中文字符乱码问题
在命令行中,输入中文出现乱码或者键入错误的情况: 这里我想输入:"中文",但是出现乱码. 并且,我在之前已经创建好镜像,通过镜像生成了容器. 1.使用locale查看当前容器的系统 ...
最新文章
- 网络波动服务器维护中,官方回应《王者荣耀》游戏无法登录:网络波动导致,已修复...
- UNILEVER STUDENT PROJECTS EVENT
- js特效 在服务器显示变形,使一行文字变形产生弯曲弧度特效的jQuery插件 - Arctext.js...
- wxWidgets:弹出 wxWidgets 示例
- .NET Windows服务应用程序
- sql server 高可用故障转移(6)
- [设计模式] javascript 之 策略模式
- 计算机网络安全重要性
- 怎么使用PDF编辑器在PDF中插入图片?PDF插入图片的教程
- delphi调用https
- global mapper将cad格式数据框选范围导出高质量图片
- BP神经网络公式推导
- 回调函数Callback
- 模式识别、机器学习的区别和联系
- win10更新失败导致电脑不能开机怎么办
- FrameExit:Conditional Early Exiting for Efficient Video Recognition
- 英雄联盟出现game_error_directx的解决办法
- 抖音微信消息推送情侣告白浪漫(简易版)
- JVM 之 JDK安装与配置
- numpy中的ndarray方法和属性
热门文章
- CAD关闭图层快捷键,隐藏显示的CAD图层
- 发光二极管限流电阻(学习笔记)
- 【嵌入式--伺服电机】(11)MIT无刷电机FOC硬件电路分析
- 三八节买什么数码好物?三八女神节实用不吃灰的数码好物推荐
- 夜神模拟器之burp抓包
- 【转贴】关于开发数学软件的想法
- 点击修改用户图像php类,php修改图像
- Loj #3124. 「CTS2019 | CTSC2019」氪金手游
- 在线字典学习(Online dictionary learning for sparse coding)-机器学习
- 爱奇艺财报解读:连续两个季度盈利 会员同比增收7%