Latex Plugin For Powerpoint Mac
Compile LaTeX, knitr, literate Agda, literate Haskell, or Pweavedocuments from within Atom.
Learn how to build powerful applications for PowerPoint. Tutorial: Create a PowerPoint task pane add-in. In this tutorial, you'll use Visual Studio to create a PowerPoint task pane add-in that adds a photo and text to a slide, gets slide metadata, and navigates between slides. Using the latest version of Office (I’m not aware how it works in old versions tbh), is pretty easy. The procedure that I’m posting below is for Mac; it may slightly change for Windows users.
Installing
Use the Atom package manager and search for 'latex', or run apm install latex
from the command line.
Prerequisites
TeX distribution
A reasonably up-to-date and working TeX distribution is required. The onlyofficially supported distributions are TeX Live, and MiKTeX. Although,the latter is not as well tested and supported as TeX Live, hence using TeX Liveis highly recommended.
You need to ensure that the package can find your TeX distribution's binaries;by default the package uses your PATH
environment variable, as well as thefollowing search paths on Linux and macOS
/usr/texbin
/Library/TeX/texbin
and on Windows it uses
%SystemDrive%texlive2017binwin32
%SystemDrive%texlive2016binwin32
%SystemDrive%texlive2015binwin32
%ProgramFiles%MiKTeX 2.9miktexbinx64
%ProgramFiles(x86)%MiKTeX 2.9miktexbin
If your TeX distribution's binaries are not installed in one of those locationsor discoverable via the PATH
environment variable, you will need to help thepackage find the binaries. This can be done by setting the TeX Pathconfiguration option to point to the folder containing the binaries, either inthe settings view, or directly in your config.cson
file. See Configurationfor further details regarding the settings of this package.
Syntax Highlighting
In order for this package to behave as expected, your Atom environment mustcontain a package that provides a LaTeX grammar. We suggest language-latex,but other valid options might exist. Additional syntax packages may be requiredto build document types other than LaTeX. For more details seeBuilder Capabilities below.
Builder Selection
The latex
package provides access to two automatic builders for LaTeX andknitr documents. By default the package will use latexmk
for LaTeX documentsand an included builder to prepare knitr documents for latexmk
. In this casean up to date installation of latexmk
is required. If you're using TeX Livethen you need only insure that latexmk
is installed and up to date using theappropriate package manager. If you're using MikTeX then see how to uselatexmk
with MiKTeX.
The JavaScript based DiCy builder may also be used for all documents byselecting the Use DiCy
option in the settings page. DiCy will be installedautomatically and so no further action is required for either TeX Live orMiKTeX.
Builder Capabilities
Document types other than LaTeX documents may be processed by this package. Theavailability and behavior of this feature depends upon the specific builderselected. The following table details the different types of documents that maybe processed by each builder and any additional syntax package requirements.
Document Type | latexmk based Builder | DiCy Builder | Required Language Packages |
---|---|---|---|
LaTeX | Yes | Yes | language-latex |
knitr | Yes | Yes | language-r and language-knitr |
literate Agda | No preprocessing | Yes | language-agda |
literate Haskell | No preprocessing | Yes | language-haskell |
Pweave | No | Yes | language-weave |
Usage
The latex:build
command can be invoked from the LaTex menu or by pressing thedefault keybind ctrl-alt-b while in a LaTex orknitr file. Log messages and any other messages from the build may be seen inthe LaTeX log panel accessible from the status bar.
The latex
package supports other commands as detailed in the table below.
Command | Keybinding | Use |
---|---|---|
latex:build | ctrl-alt-b | Build LaTeX/knitr file and open result. |
latex:rebuild | None | Force a rebuild of LaTeX/knitr file. |
latex:clean | ctrl-alt-c | Cleanup files after a build. |
latex:kill | None | Terminate currently running build. Also available from status indicator. |
latex:sync | ctrl-alt-s | Use SyncTeX forward if possible from the current cursor position. |
latex:sync-log | None | Display and highlight log messages from the current cursor position. |
latex:check-runtime | None | Check for the existence of latexmk , Rscript and PDF/PS/DVI viewers. |
Overriding Build Settings
Many of the build settings in the settings page of the latex
package can beoverridden on a per file basis. One way to override specific build settings isto use 'magic' TeX comments in the form of % !TEX <name> = <value>
. Anotherway is to use a YAML formatted file with the same name as your root LaTeXfile, but with an extension of .yaml
. The settings and values that canoverridden via either method are listed in the table below. If multiple settingnames are listed then the first is preferred and following names are availablefor compatibility. More details can found at Overridding Build Settings.
Name | Value | Use |
---|---|---|
cleanPatterns | comma separated patterns, e.g. **/*.blg, foo | Specify patterns to use for latex:clean |
enableSynctex | yes , no , true or false | Override SyncTeX setting |
enableExtendedBuildMode | yes , no , true or false | Override extended build mode setting |
enableShellEscape | yes , no , true or false | Override shell escape setting |
engine or program | pdflatex , lualatex , etc. | Override the LaTeX engine to use for build. |
moveResultToSourceDirectory | yes , no , true or false | Override move result to source directory setting |
outputFormat or format | dvi , ps or pdf | Override the output format |
jobNames , jobnames or jobname | comma separated names, e.g. foo, bar | Control the number and names of build jobs. Only a single name can be used for jobname . |
outputDirectory or output_directory | directory path, e.g. build | Specify the output directory that should be used. |
producer | dvipdf , dvipdfmx , xdvipdfmx or ps2pdf | Override the PDF producer |
root | file path, e.g. ../file.tex | Specify the root file that should be built. Only available via 'magic' TeX comments. |
There are additional settings that may be configured for the DiCy builder thatmay not be accessible from this package's setting page, but can be set via aYAML options file or TeX magic comments. For more details please seeOptions and Configuration in the DiCydocumentation.
PDF/DVI/PS Viewers
The latex
package currently supports Atril, Evince, Okular,pdf-view, Preview, Skim, Sumatra PDF, Windows shell open,xdg-open, Xreader and Zathura as PDF/DVI/PS viewers. This includessupport for cursor synchronization via SyncTeX if possible. Specific features ofeach of the viewers is detailed at Supported Viewers.
Development status
Please note that this package is in a beta state. It is stable, but lackssome important features.
Any and all help is greatly appreciated!
NOTE:latexmk
does not support file paths containing special characters such as ~
. To partially circumvent this, add useRelativePaths: true
to your config file like so
When set, this package will use a relative path in place of an absolute one. This will allow latexmk
to compile projects stored in directories that contain special characters. Note that the project itself must not contain special characters in its directory or file names.
This feature has not been fully tested yet, and there are no guarantees it will work in all cases. Please raise an issue if you find a case where it fails.
Written: 17 Jun 2019 by Jeremy HowardFor creating presentations there’s a lot of features in PowerPoint that are hard to beat. So it’s not surprising that it’s a very popular tool—I see a lot of folks presenting PowerPoint presentations at machine learning talks that I attend. However, for equation-heavy academic publishing, many scientists prefer LaTeX. There are many reasons for this, but one key one is that LaTeX provides great support for creating equations. Whilst PowerPoint has an equation editor of its own, it is not a great match for LaTeX-using scientists, because:
- It’s a pain to have to re-enter all your equations again into a new tool
- The GUI approach takes a lot longer to enter equations compared to LaTeX (once you’ve learned LaTeX’s syntax). Although Microsoft Office equations have great keyboard support too, if you know where to look.
To avoid this problem, most scientists I’ve seen tend to copy screenshots from the LaTeX output of their papers, and paste them into PowerPoint. However this has it’s own problems, for instance:
- The fonts are unlikely to match up correctly
- It’s hard to resize the text to match the equation picture, and visa versa
- The bitmap screenshot is low resolution, so doesn’t print well
- The equations don’t reflow with the text, so have to be manually placed
- Alignment commands don’t work, so alignment has to be done manually
- …and so forth
If you’re one of those people looking to include LaTeX equations in PowerPoint, I’ve got some good news for you—have a look at this:
That’s right, this picture shows a real, editable, resizable, full-resolution equation in PowerPoint, created using LaTeX syntax! What’s the secret? Well… the secret is that Microsoft has actually included this functionality in PowerPoint for us, but they just totally butchered the front-end implementation, and failed to document it properly! So for my father’s day 2019 project, I created a little add-in to try to address that. Here’s how to use it.
How to use LaTeX in PowerPoint
To use LaTeX in PowerPoint you have to complete a few setup steps first. (I’ve only tested this on the latest Office 365 on Windows 10.)
- Download the latex PowerPoint add-in from here
- Put the add-in file somewhere convenient, and then add it to PowerPoint by clicking File then Options, clicking Add-ins in the options list on the left, then choose PowerPoint Add-ins from the Manage drop-down, and click Go. Choose Add New in the dialog box that pops up, and select the latex.ppam file you downloaded
- Click Enable Macros in the security notice that pops up.
You’ll now find that there’s a new LaTeX tab in your ribbon. Each time you open a new PowerPoint session you’ll need to switch it to “LaTeX mode”. To do so, click inside a text box (so the cursor is flashing) and choose Enable LaTeX in the LaTeX tab. This file will now be in LaTeX mode until you close and reopen PowerPoint. This is necessary to use the Input LaTeX button (see next paragraph), which is the only way I suggest to try to enter or edit LaTeX in PowerPoint.
Now you are ready to insert your equation. Click inside a text box, and ensure the cursor is at the end of the text box (currently the macro only works if you’re at the end of the selected text box). Now click Input LaTeX in the LaTeX tab, and paste your equation into the input box that pops up (you can also type into it, of course, although I’d suggest you type your LaTeX into a regular text editor and paste it to PowerPoint from there, so you have a convenient source for all your equations’ LaTeX source). That’s it! The equation is now a regular PowerPoint equation, so when you click inside it, everything is editable, and you can also select the equation and change its font size, color, etc.
You can even select the equation and add Wordart effects to it, if you want to really ham things up!…
Additional customization and tips
You can edit the equation using the normal Microsoft Office equation ribbon commands. If you want to see and edit the LaTeX source again, click Linear on the Equation ribbon. However, don’t edit this LaTeX directly in PowerPoint—it will mangle it as you type! Instead, copy it into an external editor and change it there, then create a new equation with the Input LaTeX command as above. (This is why it’s easier to simply keep all your original LaTeX source in a plain text file, if you’re not editing the equations using the equation ribbon.)
Apparently Microsoft hates productivity, or at least that’s the only reason I can think of that they decided to remove one of the most important features for productivity: the ability to customize and add keyboard shortcuts. So if you want to add a keyboard shortcut for Input LaTeX, you instead have to right-click on the Input LaTeX button in the ribbon, and choose Add to Quick Access Toolbar. You’ll now see an extra button in the very top left of your window (that’s the Quick Access Toolbar). Press and release Alt, and you’ll be able to see what numeric shortcut has been assigned to that button. Press and release Alt again to remove the shortcut overlays. Now you’re ready to use the keyboard shortcut. Click inside a textbox as before (at the end of it) and, while holding down Alt, press the number you noted down before. You should see the input box appear.
If you want to contribute improvements to the add-in, or just see how it works, head over to the latex-ppt repo. latex.pptm contains the macro, so you can edit it and try out your changes there. If you just want to see the (tiny amount) of code, I’ve popped it in the macros.bas file. My macros are very basic right now, so PRs with improvements and fixes are most welcome!
How this works
Microsoft have actually added all the necessary stuff to make LaTeX work in PowerPoint already. They’ve just not provided any UI for it, or documentation. And the editor doesn’t work. So I created a little add-in to automate the use of the features described below.
Microsoft Office supports a rather nifty plain text equation format called UnicodeMath, which used to be called Linear format. That’s what the PowerPoint ribbon still calls it, in fact. In the Equation ribbon you can click the Linear format button to type UnicodeMath directly. You can switch the linear format mode to LaTeX by typing Unicode character “Ⓣ” into an equation. Apparently that’s been in Microsoft Office for a while, but it’s only recently that the developer actually got around to writing it down. This post includes some additional useful information:
Latex In Powerpoint Mac
The LaTeX option supports all TeX control words appearing in Appendix B of the UnicodeMath spec. That includes many math operators, Greek letters, and various other symbols. The verbose LaTeX notations like begin{equation} and begin{matrix} aren’t supported, but the more concise TeX notations are supported, such as matrix{…} and pmatrix{…}. Fractions can be entered in the LaTeX form frac{…}{…} or in the TeX form {…over…}. displaymath is implied if the math zone fills the hard/soft paragraph and currently it can’t be turned on in inline math zones. Unicode math alphanumerics can be entered using control words like mathbf{}.
I hope you find this add-in and documentation useful! Many thanks to Murray Sargent of Microsoft who built the functionality in Office that this add-in uses.
Latex Plugin For Powerpoint Macro
This post is tagged: [technical
] (click a tag for more posts in that category).