做 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. Jquery消息提示插件toastr使用详解

    toastr是一个基于jQuery简单.漂亮的消息提示插件,使用简单.方便,可以根据设置的超时时间自动消失. 1.使用很简单,首选引入toastr的js.css文件 html <script s ...

  2. 28 Python初学(事件驱动模型)

    参考文章地址:http://www.cnblogs.com/yuanchenqi/articles/5722574.html 两个步骤: recvfrom 系统调用 : 拷贝数据 从kernel到数据 ...

  3. poium测试库介绍

    poium测试库前身为selenium-page-objects测试库,我在以前的文章中也有介绍过:这可能是最简单的Page Object库,项目的核心是基于Page Objects实现元素定位的封装 ...

  4. 【原创】小说:我是一条DQL

    SQL执行流程图如下 本文改编自<高性能Mysql>,烟哥用小说的形式来讲这个内容. 序章 自我介绍 我是一条sql,就是一条长长的字符串,不要问我长什么样,因为我比较傲娇. 额~~不是我 ...

  5. node-portfinder

    nstallation   $ [sudo] npm install portfinder   Usage var portfinder = require('portfinder'); portfi ...

  6. Spring Boot与分布式

    ---恢复内容开始--- 分布式.Dubbo/Zookeeper.Spring Boot/Cloud 一.分布式应用 在分布式系统中,国内常用zookeeper+dubbo组合, 而Spring Bo ...

  7. JS中事件绑定函数,事件捕获,事件冒泡

    1 事件绑定:事件与函数绑定以及怎么取消绑定 1.1 元素.onclick这种形式,如下: <div id="div1">aaa</div> <scr ...

  8. JS 时间字符串与时间戳之间的转换

    1.当前时间换时间戳 var timestamp = parseInt(new Date().getTime()/1000); // 当前时间戳 document.write(timestamp); ...

  9. debian apt sources

    deb http://debian.csie.ntu.edu.tw/debian/ sid main contrib non-free deb-src http://debian.csie.ntu.e ...

  10. ftp服务器安装与配置

    ftp服务器安装与配置 1. ftp服务端的安装 1 如果之前配置过ftp服务器的还是之后配置的服务器,无法启动服务,那么基本是配置出现了错误,那么可先完全卸载后再进行安装.如果无法定位多半是镜像源的 ...