TexPoint
A LaTex Add-In for MS PowerPoint
  
About  
Download  
Installation  
Help/Usage  
FAQ  
Debug/History  


Note: The content of this help to TexPoint is in most part still up to date. However, there might be some small differences in the Mac version or versions later than 2.0.3 (especially regarding the new configuration, but I hope it is mostly self expaining).


Overview

1. TexPoint inline mode

In inline mode you can write Latex macro invocations and definitions along with your regular text. Then at a press of a key or a menu button the macros are expanded. For example, you can write
\alpha_0 \otimes \beta_{\approx1} \rightarrow^\alpha \Gamma

Then you press a button and the above text is changed in place to the corresponding Latex formula (the version showed below is a bitmap. The one you will get in PowerPoint will be constructed using individual characters.)

Features in the inline mode
  • Your presentations are standard PowerPoint presentations. To view or edit the presentation on another machine you can either tell TexPoint to embed all the fonts is uses in the presentation or you can install TexPoint on the other machine. 
  • Your formulas flow with the text and are fully editable.
  • You can use almost all symbol macros defined by standard Latex and by AMSTEX.
  • You can define per-presentation macros with arguments with the \newcommand macro
  • There are predefined macros for controlling the font, the face (bold, italic, underline), and superscript or subscript of portions of text 
  • With one click, you can expand all the text located in the current selection, including that contained inside tables or inside groups of shapes
  • You can restrict the expansion to the currently selected text range
  • Needs just 1 simple installation step taking only a few minutes. In particular you do not need to have Latex or Ghostscript installed on your machine since TexPoint includes a simple Latex interpreter.

Limitations of the inline mode
  • The inline mode can position characters only one following another. (An exception is that the baseline can be lowered or raised to get subscript and superscript position.) This is a PowerPoint limitation and it is not yet possible to overlap characters or to stack them. 
  • Otherwise said, all the inline mode does for you is to provide all of the AMSTEX symbols and to save you a lot of slow trips to the "Insert/Symbol" or "Format/Font" menus. I have found that this is quite a substantial help because it allows almost the entire editing to be done from the keyboard.
  • After expansion, the Latex source is lost. However, I didn't find this to be a problem because the result of expansion can be edited as usual or further macros can be written in the middle of the resulting formulas to correct the mistaken part. If you notice the problem immediately after expansion you can undo it (CTRL-Z, Command-Z) the expansion, edit the source and re-interpret it.
  • To get access to all of the Latex symbols you must install four new fonts on your computer. This takes only a mouse click. However, if you use those fonts you must be careful to save your presentation with fonts embedded if you intend to send it to somebody else who does not want to install TexPoint. (This can be automated, see below.)
2. TexPoint display mode

Sometimes you really want the full power of  Latex. That is what the display mode gives you. In display mode you write arbitrary Latex source which is automatically processed and the first page of the resulting document, clipped at the bounding box, is inserted on the slide. Later you can change the source and the display will change accordingly.

Features in display mode
  • Anything that Latex can produce on one page you can include on your slide with just a few clicks. In particular, you can copy-and-paste Latex code from your papers into your presentations.
  • The source for each TexPoint display is kept inside your PowerPoint presentation, so you don't have to worry about dangling file references or cluttered directories.
  • You can copy-and-paste TexPoint displays even between presentations. Each display carries its source with it.
  • You can start editing the source for a display with a simple double-click on the display or a specialized context (right-click) menu
  • Displays can also be processed as regular images (e.g., to change size, contrast, brightness, borders, animation, etc.). In addition the settings for contrast, brightness and magnification are remembered and used when you regenerate the bitmap after editing the Latex source.
  • You have a choice whether to use monochrome or colored displays.
  • You can tell TexPoint to make the bitmap transparent or to color it with the same color scheme that the host slide is using.
  • You can send the presentation to anybody and they will be able to see it and to print it, but if they do not have the TexPoint add-in installed they will not be able to view or edit the embedded Latex source.

Limitations of the display mode
  • TexPoint displays are bitmaps, which means that if you magnify them a lot you will start to see pixelation. To control that you can tell TexPoint to use up to 2400dpi resolution but in my experience even 300dpi bitmaps show just fine on the screen. For printing however you might need a higher resolution bitmap. Starting in version 2.0 you can also have outline displays (Win) which can be scaled to any resolution without showing pixelation.
  • The display mode requires Latex and Ghostscript to be installed on the computer. Fortunately, they are easy to install (described on the installation page).
  • You can paste TexPoint displays on any application that supports ActiveX (including other Office applications). However, you will not be able to view or edit the source anymore if the host application is not PowerPoint. This might be fixed in the future. 


Usage

Configuration

You should start by configuring TexPoint. Starting with Version 2.5 the configuration possibilities are greatly extended: You can configure TexPoint for the current presentation (as it was the only possibility before 2.5) and "globally" on your computer (for all Users). For configuration open the TexPoint/Configure dialog [press ALT-X-C in the english PowerPoint version for Windows] You must have a presentation active or you will get an error message.

The following things can be configured:
  • Whether to use AMS fonts or just the standard System fonts. By default TexPoint uses the AMS and Latex Fonts. If you configure TexPoint to avoid using AMS fonts then next time it does inline expansion it will try to find the symbols in the Windows standard fonts. Note that the Windows/Mac symbol font contains only a small fraction of the AMSTEX symbols. Note also that this feature takes effect only on future expansions.

    Advantages of using AMS fonts
    • You have access to all the symbols that Latex has access to. This includes the fonts cmsy, msam, msbm, and stmary (the last three are AMS fonts)

    Disadvantages of using AMS fonts
    • Your symbols might not show properly on another machine. To avoid this problem you can do one of the following:
      • Install TexPoint on the other machine, or
      • Install just the fonts that come with TexPoint on the other machine, or
      • Be careful to save your presentation with fonts embedded - PowerPoint on Mac platform does not support font embedding. Go to File/Save As/Tools/Embed True Type Fonts, or
      • You can configure TexPoint to turn on font embedding for this presentation (Windows only)
    • If you embed fonts your presentations will be bigger (on average by about 100k)
  • Since the AMS fonts use rather thin strokes I find it useful to use their bold face version. Click the appropriate check box if you want this behavior. I'd be grateful if some font guru would find a way to thicken the strokes in these fonts. I can even provide a good Font editor for this purpose.
  • You can tell TexPoint whether it should turn on embedding of fonts the next time it expands an AMS symbol. You can also do the font embedding by hand (see above).
  • You can configure the default Latex source that should be used when TexPoint creates a display. (Read about displays below). If all of your displays use some common setup then you can enter it here. This is a sequence of shell commands separated by ";". Each of the commands is executed in sequence. The word "$(base)" is replaced with the base name of the display source (as selected in the Edittex dialog box) and the word "$(res)" is replaced by the resolution. It is best if you do not change this setting.
  • You can configure the command used to start an external editor for editing your display sources (use of such an editor is optional; TexPoint provides a primitive editor that I have found to be sufficient). This is a string that will be used as a command line after substituting all occurrences of % in it with the name of the file to be edited. If you use full pathnames, you should use backslashes not slashes! Examples of valid strings are "notepad %" or "C:\Programs\emacs-21.2\bin\emacs %".
  • You can configure the name of the Ghostscript command to use for producing the display bitmaps. By default this is "gswin32c", which assumes that you have installed the AFPL version of Ghostscript as described in the installation section. It also assumes that this command can be found in the PATH. You can provide here a complete path to the command or even a different name. For example, if you want to use the cygwin version of Ghostscript (assuming it is installed and in the PATH) you can set this name to "gs".
  • You can define new macros for the Inline mode. The scope of these macros is the current presentation only. However, you can copy-and-paste the macros to other presentations. To define a macro you can use the \newcommand macro with a syntax similar to that of Latex (no optional arguments):
    • \newcommand{macroname}{nrargs}{body} : this defines the given macro whose scope will be the entire presentation. The body can contain occurrences of #1 ... #9 to refer to the arguments. You can redefine built-in macros and redefinitions shadow previous definitions. One of the basic uses of \newcommand is to define synonyms for the built-in commands.
  • You can select the font size and the default width and height of the edit boxes with Latex source to be used in display mode and the default bitmap format, resolution and transparency settings. These settings are used every time you make a new display.

Inline-mode usage

The inline version of TexPoint is an interpreter for the following language:

T ::= macro   ARG*   T | ^   ARG   T | _   ARG   T | other   T
ARG ::= { T } | other | macro
macro ::= \[a-zA-Z]+
other ::= anything other than ^ or _ or \ or CR

Just like in TeX, macros consume their arguments and their occurrence is changed in place to their expansion. The expansion is then itself subject to macro expansion. Also like in TeX, macro names cannot contain digits, thus a digit can follow immediately a macro name. However, unlike TeX, macros do not consume a space that follows their name. If you want to avoid the space in the expansion write \foo\-. (\- is a predefined macro that expands to nothing and is handy for terminating macro names.). Another difference from TeX is that you should not use $ to delimit the math text to be expanded. Macro arguments cannot span multiple paragraphs.  Some useful macros:
  • \-   : expands to nothing. Useful for terminating macro invocations
  • \font{fontname} ARG  : fully expands ARG and then changes the expansion to the given font. All font names that appear in the font selection combo box can be used
  • \fontsize{size} ARG: fully expands ARG and then changes the expansion to the given font size.
  • \bf ARG   : like \font but changes face to bold
  • \em ARG : like \font but changes face to italic
  • \underline ARG : like \font but changes face to underline
  • ^ ARG  : like \font but changes to superscript (nested superscripts have no effect)
  • _ ARG  : like \font but changes to subscript (nested subscripts have no effect)
  • \fontchr{fontname}{asciicode} : expands to the given character in the given font.
  • virtually all of the macro names that define symbols in standard Latex and AMSTEX are predefined using the \fontchr macro. Take a look at TexPointdemo.ppt to see all the symbol macros that are defined. This can be done at any point by going to the menu TexPoint/Show Symbol Macros
  • \cmr{xxx} typesets xxx using Latex Computer Modern font
  • \cmm{xxx} typesets xxx using Latex Computer Modern Math font
Invocation
  • Place the edit cursor inside a text box and then go to "TexPoint/Texify". Or press ALT-X-X.
  • If you select only a text range, then only that range is processed
  • If you select a number of shapes, then all the text contained in one of the selected shapes is processed. This includes recursively all the text in table cells and inside grouped shapes.
  • Don't forget that you can define new macros. For example, you find yourself using \leftarrow a lot and would like to abbreviate it \la, you can do TexPoint/Configure (ALT-X-C) and add to the initialization code section
    • \newcommand{la}{0}{\leftarrow}
  • As another example, you can define a denotational-semantic function \ds{e} as follows
    • \newcommand{ds}{1}{\llbracket{#1}\rrbracket}  (the actual argument is surrounded by braces to prevent it from interfering with the parsing of either one of the bracket commands)
  • I find it very useful to do most of my editing without using the mouse. Here are a few useful commands. (Most of them are available even without TexPoint)
    • CTRL-M  - new slide
    • CTRL-ENTER - move to the next placeholder (i.e. from the title to the body of the slide)
    • TAB - add a level of indentation (if bullets or numbering is on)
    • SHIFT-TAB - remove a level of indentation
    • ALT-X-B - toggle bullets on-off for the selected paragraphs
    • ALT-X-N - toggle numbering on-off for the selected paragraphs
    • ALT-X-F - revert the selected text to the default font for the presentation.
    • ALT-X-M – change the font for the selection to Latex Computer Modern math font (cmmi10)
    • ALT-X-L  - change the font for the selection to Latex Computer Modern regular font (cmr10)

Display-mode usage

  • To create a new Tex display, go to "TexPoint/New Tex Display" (or ALT-X-D) and a dialog box will appear. The main entry is for the source of the Latex file that will generate the display. This entry is initialized to the text that you selected during TexPoint configuration. Keep in mind that only the first page of the resulting document is used. This source is kept with the display so you can safely copy and paste the display in other presentations. It is advisable to use the \documentclass{slides} so you get the font sizes appropriate for presentations and \pagestyle{empty} so you avoid adding page numbers to your displays.

    If you press Finish Later then all your changes are saved but the display is not regenerated. If you press Cancel all changes are discarded. If you press Make bitmap then a Latex file containing the source is created and processed in the same directory with the presentation. You should see an MS-DOS window running your command. If you selected Pause in the Debugging tab then the window will wait for you to press a key before it closes. In versions of TexPoint prior to 1.5.3 you should not press CTRL-C or kill the MSDOS window running the script. Press x instead to tell Latex to finish!. Better yet, upgrade to TexPoint version 1.5.3 or above.

    The name of the file is constructed from the base name which you can select in the Debugging textbox along with the extension .tex. This base name does not have to be unique. (If you want to keep the file make sure you check the "Keep Files" checkbox.) Then the script TexPoint/tex2bmp is started to process the source into a bitmap.

    Edit window format. You can resize the source text box by dragging with the mouse the lower-right corner of the window. You can select the font you want to use for displaying the Latex source and whether to use word wrap or not (both of these controls are in the Display

    tab). Note that this has nothing to do with the font that Latex itself will use when processing your source.

    Next we describe the functions of each control. The controls are organized in three tabs. Note that all of the settings that you select are remembered for each display individually.  For new displays these settings are initialized as specified in the TexPoint configuration dialog box (those are per-presentation settings).

    The Bitmap tab:
    • Colors and graphics formats. For each display you can select the bitmap format to use. If your slides are black-and-white it is recommended to use a monochrome format (e.g. Monochrome PNG) since this has the minimal overhead. Alternatively you can select one of the colored formats in which case the bitmap will preserve the colors that Latex creates. Use the color.sty package to get colored documents. A simple example is shown below:
       \usepackage{color}
       \begin{document}
       \pagecolor{red}
       \color[rgb]{0.5,0.7,0.8}
       Hello world! 
       \end{document}
      

      Starting with version 1.5.4 the PNG (Portable Network Graphics) format is also supported in addition to the regular bitmap format. It is recommended that you use the PNG format

      because it has MUCH better compression and leads to smaller file (e.g. instead of a 2Mb BMP file you can have a 10kb PNG file). Version 1.5.4 also supports the EPS format that would have the huge advantage that it is a vector format, thus the displays remain smooth even after scaling. Unfortunately, it seems that PowerPoint does a very bad job at importing the EPS! The only other hope I still have for abolishing the bitmaps is to be able to produce EMF (Enhanced Windows Metafile) format from a TEX file. I have tried pstoedit but without success.

      Starting with version 2.0 you can also create EMF (Extended Metafile) displays. Their major feature is that they are not bitmaps but outline formats meaning that they are very compact and have nice appearance independent of the scaling factor (unlike bitmaps). See below for how to use EMF displays.
    • Transparency. The way this works is that TexPoint tells PowerPoint that the white color is to be made transparent (this means that you should not use colors in Latex to change the background of the figure). This works for color or black-and-white backgrounds on your slides, and even with gradient backgrounds. There are two main problems with the implementation of transparency in PowerPoint: (1) In some versions of PowerPoint there is a bug that makes PowerPoint change the background of the imported picture with the result that TexPoint is confused. If this happens for you then click on the adjacent Workaround PPT Bug checkbox (or toggle it if it was checked already). Please let me know if this does not solve your problem. Please also let me know if you need to check this box for versions of Office XP other than SP2 and for bitmaps other than the color BMP formats (this will allow me to know when it is time to simplify TexPoint and drop this workaround). Thanks!

      The other problem with transparency is that it interacts badly with antialiasing with the effect that you will see somewhat rugged edges for your displays. In that bothers you, there are two options. Either save the bitmap and use Photoshop to set the alpha channels properly in the bitmap, or try color blending (described below).
    • Color blending. An additional feature that can be used with colored formats is to let TexPoint choose the colors for the display so that it matches the host slide color scheme. Select the "Blend" checkbox to enable this feature. However, if you use "Blend" you should not use any color in your Latex source (even the presence of \usepackage{color} can cause confusion). Depending on the bitmap format the color match might not be perfect. In this case you can either adjust finely the brightness and contrast of the display (right-click, Format Picture/Colors. Future variations of the display will remember your settings.) An alternative method to get a better color match is to select a graphic format that supports more colors. Color blending works fine if you have a uniform background but will not look right for a gradient background, or one with features. In that case you might want to enable transparency.
    • Resolution. You can select resolutions from 300 to 2400 dpi. Use the default 300dpi except when you want to magnify the display a lot in which case should use higher resolutions. Keep in mind that each time you double the resolution, the file size containing the bitmap increases by a factor of 4. However, it seems that internally PowerPoint compressed these bitmaps so the presentation will grow by a smaller amount. In fact, if you use the PNG format the compression is so good that you need not worry about file sizes.

    The Source tab:
    • You can select the Font size to be used in the source edit box
    • You can select whether to use WordWrap in the source edit box
    • You can resize the source edit box by dragging its lower-right corner

    The Debugging tab:
    • You can select Pause to prevent the MSDOS window to close so that you can see what commands were executed
    • You can specify the base name of the Latex source file and the bitmap that should be used.
    • You can specify Keep Files to prevent the deletion of the bitmap and the Latex source files. They are left in the same directory with the presentation and the base name for the bitmap is that selected in the adjacent text box.
    • The Interactive and Timeout features are deprecated starting with version 1.5.3.

    Errors. If one of the steps in processing the .tex file and generating the bitmap results in an error you will get a dialog box that allows you to cancel the process or to retry it. In the latter case the source will reflect your last failed modifications. If you press Cancel now, the source for the display is reverted to its value before the edit process was initiated. Press Finish Later to store the changes to the source without regenerating the bitmap.

  • To edit an existing display, right-click on it and select "TexPoint Properties", or just double-click (Windows) on it.

  • You can invoke an external editor (using the command that you configure in the TexPoint configuration dialog box) instead of editing in the provided text box.

  • You can resize a display but use only the corner anchors to ensure that the aspect ratio is preserved.

  • You can process a display just like any other picture. Click on a display to select it and then right-click on it to get a specialized menu. You can copy and paste display even between presentations. They will carry with them the source.


Using EMF (Outline) displays (introduced in Version 2.0 - Windows only)


Starting in version 2.0 of TexPoint you can create displays that are not bitmaps but outline graphics format (like PDF or Postscript). The actual graphics format is called EMF (Extended Metafile). To create such a display you must make sure to have installed the "Outline displays" feature of TexPoint (available and installed unless prohibited by you, starting with version 2.0). If you have this feature installed then you will see the EMF option in the "Bitmap format" combo box when you create or edit a display.

TexPoint uses a modified version of the PSTOEDIT program to translate the Postscript files generated by Latex into EMF. The modifications were made by James O’Brien and are required for proper operation in the presence of Latex fonts. The program pstoedit.exe is installed in the TexPoint directory.  (To see the generated EMF file you can check the "Debugging/Keep Files" box and then look into the directory that contains the presentation. You will see that these files are much smaller than the bitmap files for the same display.)

The way EMF files work is that instead of containing a bitmap rendering of the characters that make up your display they contain references to characters in True Type (.ttf) versions of the Latex fonts. The catch is that for the displays to show correctly those fonts must be installed in your system. These fonts have names of the form (cm*.ttf, msam*.ttf, msbm*.ttf) and you will see them both in the TexPoint/fonts/outline directory and in the "Select Font" dialog box in most of your text editing programs. Furthermore, these fonts must be present on any machine on which you want to view the presentation. One option around this issue is to embed the fonts into the presentation: in PowerPoint, click File/Save As/Tools/Save Options, and the click the "Embed True Type fonts".

The pstoedit tool will fail to create the EMF file if it contains fonts that are not installed in the system. In that case you will see a dialog box listing the fonts that are missing. TexPoint gives you the option to let pstoedit to substitute missing fonts. Just click the "Allow font substitution" checkbox.

EMF displays are transparent by default and cannot be made otherwise.

I think that outline displays are MUCH better than bitmap ones. The drawback is however that you must have the Latex fonts installed, which pollutes the font selection dialog box and creates portability problems for presentations.

In version 2.0 I have included only a limited selection of Latex fonts. Please let me know if you need others.

Office 2000 users: PowerPoint 2000 forgets to close EMF files that it loads. This prevents TexPoint from deleting the EMF files and requires it to create new EMF files with new names. The new names are formed using the value you have in the Debugging pane (default is txp_fig) along with a random numeric suffix. It is Ok to delete these files manually after you exit PowerPoint. Their contents is already included in the presentation.



last update 2005-05-15