做 PPT 用 Latex Beamer 毕竟还是太麻烦,Beamer 毕竟还是更适合学术性的,各种定义各种公式的那种,遇到要画各种图,插入各种图片,进行错综复杂的排版就比较棘手了。

最终还是 PowerPoint 更适合这类任务。然而它的公式编辑又太鸡肋,不美观倒在其次,编辑起来费劲才是最麻烦的。据说 Office 2016 已经支持 Latex 了,然而似乎不太好用。

于是试了一下一个叫 iguanaTex 的 PowerPoint 加载项,挺好用。但是用了一段时间后发现  \frac  这一类的分式都不能正确显示,不知道是什么原因。

于是研究了一下它的工作原理。发现它大概是先将 Latex 编译成 pdf,然后对 pdf 进行截取,然后把 pdf 转换成背景为透明的图片( emf 格式),再插入到 PowerPoint 中。

看了一下它的命令行,手动把 pdf 转成了 emf,然后插入到 PPT 里,没有出现  \frac  不能正确显示的问题,完美。

首先将 Latex 编译为 pdf,然后用以下方法将 pdf 转换为 emf,然后在 PPT 中插入。

下载安装 tex2img
安装文件夹下有一个 pdfiumdraw.exe,可以将 pdf 转为 emf,而 emf 即可嵌入 PPT 中,转换命令为:

pdfiumdraw.exe --extent= --emf --transparent --pages= --output="d:\temp.emf" d:\test-crop.pdf

为更美观方便,可先将 pdf 用 pdfcrop 裁剪一下。

这样转换得到的 emf 图片背景为透明,文字颜色即是 pdf 里的文字颜色。如果想改变文字颜色,可以在写 latex 时用 \color 指定好,也可在 PPT 中先对插入的 emf 图片取消组合,再指定颜色,再重新组合。

这么说来,岂不是所有 pdf 都可以插入到 PPT 里的。。。而且所有可以输出为 pdf 的东西都可以插入到 PPT 里。。。。不过对于 PDF 中的图片应该是没办法处理的 。。

所以其实可以用 Typora 写 markdown 导出 PDF,然后导入到 PPT 里?


LibreOffice 有一个 TexMaths 的扩展,类似 MathType,也可以在幻灯片中插入 Latex 公式。

另,看这个网页说作者将会增加对 XeLatex 的支持。

另,LibreOffice 支持直接插入 PDF。

Linux 下 PDF 转 SVG

sudo apt-get install libpoppler-glib-dev
sudo apt-get install libcairo2-dev  

编译安装 pdf2svg

\documentclass{ctexart}
%\usepackage[pass,paperwidth=330mm,paperheight=190mm,left=20mm,top=20mm]{geometry}
%\usepackage{geometry}
%\geometry{letterpaper,centering,scale=0.95} %a4paper letterpaper
\usepackage[paperheight=110mm,paperwidth=140mm,top=5mm,bottom=5mm,right=5mm,
left=5mm,heightrounded]{geometry}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{nicefrac}
\usepackage{color}
\usepackage{xcolor}
%\pagestyle{empty}
\setCJKmainfont{Noto Sans CJK SC}%[AutoFakeSlant]
\setCJKmonofont{Noto Sans CJK SC}
%\setCJKsansfont{ukai}
%\setmainfont{Times New Roman} % 英文衬线字体
\def\hmath#1{\text{\scalebox{1.6}{$#1$}}}
\def\lmath#1{\text{\scalebox{1.4}{$#1$}}}
\def\mmath#1{\text{\scalebox{1.2}{$#1$}}}
\def\smath#1{\text{\scalebox{.8}{$#1$}}} \def\hfrac#1#2{\hmath{\frac{#1}{#2}}}
\def\lfrac#1#2{\lmath{\frac{#1}{#2}}}
\def\mfrac#1#2{\mmath{\frac{#1}{#2}}}
\def\sfrac#1#2{\smath{\frac{#1}{#2}}} \nopagecolor
\begin{document}
\color{white} Content \end{document}

END

                                                                                    2018.4.9

PowerPoint 中插入 Latex 公式的更多相关文章

  1. markdown 插入latex公式练习

    markdown 插入latex公式 $$公式$$表示行间公式,本来Tex中使用\(公式\)表示行内公式,但因为Markdown中\是转义字符,所以在Markdown中输入行内公式使用\\(公式\\) ...

  2. 在word 2013中输入latex公式

    注意:版权所有,转载请注明出处 向word输入LaTeX公式,插件有很多,前面在使用的是一个叫做Aurora的插件,结果不是免费的,用了一段时间就要收费是,所以就不用了,从网上找到别人的介绍,可以使用 ...

  3. ZH奶酪:在博客中添加Latex公式

    1. 点击编辑器中的插入图片: 2.在URL输入下边的地址: http://latex.codecogs.com/gif.latex?你的latex代码 就可以了-

  4. Word中插入带公式的Visio注意事项

    有时候发现,有的公式显示的间距特别大,那么在word中右键打开Visio,改好后,保存了,word里还是那样. 因为你需要吧改好的另存为原来的visio文件(名字.位置要一样,就是说替换原来的文件), ...

  5. Visio中插入公式

    也可以直接插入MathType公式,我原来的word不显示MathType,现在显示了,不过插入后太小,那是因为字体小,拖动托大就行. 在word中插入-对象-公式3.0对象(安装MathType后, ...

  6. Markdown中插入数学公式的方法

    Markdown中插入数学公式的方法 文章来源:http://blog.csdn.net/xiahouzuoxin/article/details/26478179 自从使用Markdown以来,就开 ...

  7. 常用Latex公式

    注意: 1 在博客中书写Latex公式时,需在公式两侧用$包括 2 大括号{ }在Latex有本身的含义,如果要输出为普通字符需要使用\{...\} 符号 公式 说明 $ \in $ \in 包含 $ ...

  8. TexFormula2Word: 将Latex公式转换为MathML的Chrome扩展

    前言 因为学校要求对毕业论文进行格式检查,而格式检查又必须上传Word文件,这就导致只能使用Word写毕业论文.但Word公式输入实在是太难用,加之我在小论文中已经用Latex写过大部分公式,所以就希 ...

  9. 在博客中使用LaTeX插入数学公式

    在博客中使用LaTeX插入数学公式 在学习机器学习中会接触到大量的数学公式,所以在写博客是会非常的麻烦.用公式编辑器一个一个写会非常的麻烦,这时候我们可以使用LaTeX来插入公式. 写这篇博文的目的在 ...

随机推荐

  1. Java 疑问自问自答

    1.为什么把关闭资源放finally中? 答:保证即使前面发生一些异常情况也会最终正常执行finally中的代码,用于保证资源释放. 来源:https://bbs.csdn.net/topics/36 ...

  2. Git + Docker + Jenkins自动化部署web到Linux(Centos)

    1.把代码托管到Github上 2.安装Docker 3.安装Jenkins 4.在项目中编写Dockerfile.publish.sh (1)Dockerfile内容 # 基于dotnet基础环境构 ...

  3. 获取Iframe页面高度并赋值给Iframe以及获取iframe里的元素

    最近接手了别人的项目,别人用到了iframe,自己在实战中总结了一些关于iframe的小问题. 获取Iframe页面高度并赋值给Iframe Html <iframe name="co ...

  4. 看AppCan移动管理平台如何助力企业移动化

    AppCan企业移动管理平台(EMM)是为企业移动化战略提供综合管理的平台产品.AppCan EM移动管理平台为企业提供对用户.应用.设备.内容.邮件的综合管理服务,并在此基础上为企业提供统一应用商店 ...

  5. 实现Kubernetes跨集群服务应用的高可用

    在Kubernetes 1.3版本,我们希望降低跨集群跨地区服务部署相关的管理和运营难度.本文介绍如何实现此目标. 注意:虽然本文示例使用谷歌容器引擎(GKE)来提供Kubernetes集群,您可以在 ...

  6. pytorch识别CIFAR10:训练ResNet-34(数据增强,准确率提升到92.6%)

    版权声明:本文为博主原创文章,欢迎转载,并请注明出处.联系方式:460356155@qq.com 在前一篇中的ResNet-34残差网络,经过减小卷积核训练准确率提升到85%. 这里对训练数据集做数据 ...

  7. WebStorm 2018激活码

    2RRJMBXW33-eyJsaWNlbnNlSWQiOiIyUlJKTUJYVzMzIiwibGljZW5zZWVOYW1lIjoi5b285bK4IHNvZnR3YXJlMiIsImFzc2lnb ...

  8. MyBatis 3源码解析(一)

    一.SqlSessionFactory 对象初始化 //加载全局配置文件 String resource = "mybatis-config.xml"; InputStream i ...

  9. x86汇编寄存器,函数参数入栈说明

    https://en.wikipedia.org/wiki/X86_calling_conventions

  10. servlet(5) HttpSession

    Servlet 提供的 HttpSession 接口,提供了一种跨多个页面请求或访问网站时识别用户以及存储有关用户信息的方式. Servlet 容器使用这个接口来创建一个 HTTP 客户端和 HTTP ...