latex与word之间的各种转化方法
https://blog.csdn.net/communix/article/details/49965233
https://blog.csdn.net/yaoqi_isee/article/details/71125232
在稿件接收后,经常会遇到出版社要求变更稿件格式,其中最多的是latex变为word格式。如果手工操作,是非常麻烦的,还容易出错。如果钱多得花不了,可以让出版社找人去做这种工作,一般每篇文章几百美元,但是效果不好,最后还得自己重改一遍。以下介绍一些方法。
(一)直接转化
除了安装MS Word以外,还需要转化程序。这类程序高度依赖MS Office系统,因此一般不支持最新版本的MS Office。
1.1 Word2TeX和TeX2Word
Chikrii Softlab出品,Windows下运行的商业程序。分别把word转为tex,和把tex转为word。最近的一次升级后,支持MS Office 2016。
注:如今网上流传的都是十年前的破解版本,建议在MS Office 2003中使用(不被现今的Windows系统支持,需要装虚拟机)。我感觉Word2TeX还可以,一般用途足够了。TeX2Word问题较多,很多宏包和参数都不认,导致转化无法进行。
1.2 Word-to-LaTeX和LaTeX-to-Word
GrindEQ出品,和Word2TeX和TeX2Word类似,也是Windows下运行的商业程序,支持的MS Office版本更高一些,目前一直支持到MS Office 2013。同时还提供其它一些图形、公式转化程序。
注:试用之后,感觉与MS Word结合得很好。
(二)借助于MS Word的(部分)兼容格式
常用的格式有:rtf,html,odt。它们同时也被OpenOffice、MS Word等众多文字处理程序支持。纯文本格式因为丢失了格式信息,用处不大,这里不提。
2.1 rtf2latex2e和latex2rtf
在latex与rtf之间进行转化。免费程序。支持多种操作系统。rtf2latex2e在命令行下运行。latex2rtf有图形界面。
注:latex2rtf与TeX2Word的界面类似,文字转化较好,公式、表格较差,转化后的公式和特殊符号无法再编辑。
主页:
http://rtf2latex2e.sourceforge.net/
http://latex2rtf.sourceforge.net/
(如果不能访问,请用出国代理)
2.2 l2rtf
把latex转为rtf。免费在线使用。用法:点击“选择文件”,把tex文件(可以事先压缩为zip格式)上传,点击convert,然后下载转换后的rtf文件。
注:和latex2rtf的效果差不多,但是表格转化得好一些。转化后的公式和特殊符号同样无法再编辑。
主页:http://www.sciweavers.org/l2rtf
以下程序没有用过,其中有些已经停止开发。共同点是需要在命令行下运行,并且设置一些参数。
2.3 UnRTF
把rtf转化为latex以及其它格式。免费程序。无图形界面。支持多种操作系统(需要从源码编译),在命令行下运行。下载预编译的Windows版:http://gnuwin32.sourceforge.net/packages/unrtf.htm
主页:http://www.gnu.org/software/unrtf/unrtf.html
2.4 Hevea
把tex转化为html。免费程序。无图形界面。需要在Windows命令行下运行。用法参见:http://blog.csdn.net/lqhbupt/article/details/21556161
主页:http://facweb.knowlton.ohio-state.edu/pviton/support/winport.html
2.5 TTH
把tex转化为html。免费程序。无图形界面。支持多种操作系统(需要从源码编译),在命令行下运行。
主页:http://hutchinson.belmont.ma.us/tth/
2.6 LaTeX2HTML
把latex转化为html。免费程序。无图形界面。支持多种操作系统,在命令行下运行。
主页:http://www.fsmpi.uni-bayreuth.de/~latex2ht/
2.7 LaTeXML
把LaTeX转化为XML/HTML/MathML。免费程序。无图形界面。支持多种操作系统,在命令行下运行。
主页:http://dlmf.nist.gov/LaTeXML/
2.8 HTML to LaTeX
把html转化为latex。免费程序。无图形界面。支持多种操作系统,在命令行下运行。2008年以后停止开发。
主页:http://htmltolatex.sourceforge.net/(如果不能访问,请用出国代理)
2.9 Writer2LaTeX
把odt转化为latex。免费程序,无图形界面。支持多种操作系统,在命令行下运行。
主页:http://writer2latex.sourceforge.net/(如果不能访问,请用出国代理)
(三)借助于mathml格式,从tex转化为word
需要借助一个免费程序TeX4ht,从tex转为mathml,再转为word。尤其适合公式较多的文章。中文介绍参见:http://blog.sciencenet.cn/blog-47522-541356.html
(四)借助于PDF格式,从tex转化为word
一般流程是,先把tex文件编译为pdf,然后利用工具把pdf保存为doc,或者rtf、html等格式。最后手工排版,重新分段、分页。常用的工具有Solid Converter PDF,ABBYY FineReader,Adobe Acrobat,等,都是商业程序。这些程序都支持中文。公式、表格、特殊符号仍然容易出问题。
(五)瑞士军刀——Pandoc
之所以把Pandoc单列,是因为它支持的格式简直太多了,尤其是Latex与MS Word(必须是docx格式)之间的转化,另外还有上面提到的rtf,html,odt,mathml,pdf,等。Pandoc支持中文字符,可运行于多种操作系统,更新非常快,而且免费。全部操作在命令行下运行。常用命令有:
Latex转Docx:pandoc -s a.tex -o b.docx
Docx转Latex:pandoc -s a.docx -o b.tex
更多格式和选项请阅读手册。
注:
1. Docx转Latex:对公式和表格的支持都比较好。公式必须用Word自带的公式编辑器产生,MathType编写的公式不认(不过,MathType自身可以输出Latex公式)
2. Latex转Docx:对公式的支持比较好;转化表格的功能有限,仅支持最简单的表格,如果自定义列宽,合并单元格等,就无法识别
latex与word之间的各种转化方法的更多相关文章
- Latex 转 word 技法大全
Latex 转 word 技法大全 在稿件接收后,经常会遇到出版社要求变更稿件格式,其中最多的是latex变为word格式.如果手工操作,是非常麻烦的,还容易出错.如果钱多得花不了,可以让出版社找人去 ...
- latex转word公式 java (latextoword,latex_word,latex2word,latex_omml)
latex_word 主要目的: 给大家分享一个我的原创作品:latex转为word公式(omml)工具 [java] 此工具主要用于将含有latex公式的文本下载成word时,将latex转 ...
- Python dict(或对象)与json之间的互相转化
Python dict(或对象)与json之间的互相转化 原文转载自 1.JSON:JavaScript 对象表示法,是轻量级的文本数据交换格式,独立于语言,平台 2.JSON 语法规则 数据在名称/ ...
- C# Winform窗口之间传值的多种方法浅析(转)
摘要http://www.jb51.net/article/63837.htm 这篇文章主要介绍了C# Winform窗口之间传值的多种方法浅析,本文起讲解了通过构造器传值.通过属性传递.通过事件携带 ...
- Latex 经常见到的问题和解决方法
Latex 经常见到的问题和解决方法 2017-04-10 22:05:48 [资源下载]Texlive 2018 下载地址:http://mirror.lzu.edu.cn/CTAN/system ...
- jquery对象与dom对象之间互相转换的方法
本文主要讲述jquery对象和js里的dom对象之间互相转换的方法,使jquery对象可以直接使用js里的方法,或js里的dom对象使用jquery里的方法. jquery对象和dom对象是不一样的, ...
- java代码--------编写0懂啊PI之间求随机数的方法
总结:其实每次运行,显示出来的结果个数是随机的. package com.mmm; //编写0到PI之间求随机数的方法 public class MEm { public static void ma ...
- JSP页面之间传递参数的方法有哪些?
JSP页面之间传递参数的方法有哪些? 解答: 1)request 2)session 3)application 4)提交表单 5)超链接
- vue.js 同级组件之间的值传递方法(uni-app通用)
vue.js 兄弟组件之间的值传递方法 https://blog.csdn.net/jingtian678/article/details/81634149
随机推荐
- jetty在eclipse和Idea中的使用
eclipse中的配置 下载 http://www.eclipse.org/jetty/download.html 下载保存到特定的位置,解压. 整合到eclipse中 这里通过在eclipse中安装 ...
- oracle中字符串与表数据拼接的用法--“||”
测试过程中,经常需要批量删除或者插入.修改一些表数据或结构,使用手工复制.粘贴其实很麻烦,所以这是我们就可以使用拼接成sql语句的方法来实现操作数据.下面先讲讲oracle中拼接符 || 的用法,如下 ...
- 7-通用GPIO
7-通用GPIO 1.I/O 端口控制寄存器 每个 GPIO 有 4 个 32 位存储器映射的控制寄存器(GPIOx_MODER.GPIOx_OTYPER.GPIOx_OSPEEDR.GPIOx_PU ...
- JavaScript学习(五)
- MySQL中drop,delete与truncate的区别
drop直接删掉表 truncate删除表中数据,再插入时自增长id又从1开始 delete删除表中数据,可以加where字句. (1) DELETE语句执行删除的过程是每次从表中删除一行,并且同时将 ...
- python创建有序字典及字典按照值的大小进行排序
有序字典 在Python中,字典类型里面的元素默认是无序的,但是我们也可以通过collections模块创建有序字典 # -*- coding:utf-8 -*- # python有序字典需导入模块c ...
- 技嘉主板BIOS恢复方法
技嘉的dual bios技术的原理很简单,在main bios能启动的情况下,backup bios不会对bios进行检测.只有当main bios出现故障(这个故障一般是软件故障)才会从backup ...
- 万恶之源 - Python开发规范
开发规范 什么是开发规范?为什么要有开发规范呢? 你现在包括之前写的一些程序,所谓的'项目',都是在一个py文件下完成的,代码量撑死也就几百行,你认为没问题,挺好.但是真正的后端开发的项目,系统等,少 ...
- C 语言循环结构
25.有如下程序 main() { int i,sum; for(i=1;i<=3;sum++) sum+=i; printf("%d\n",sum); } 该程序的执行 ...
- mybatis {arg0} 与 {0}
解决方案: MyBatis的XML的配置文件中声明设置属性的useActualParamName参数值为假 <setting name="useActualParamName" ...