latex-svg-pandoc-0.1: Render LaTeX formulae in pandoc documents to images with an actual LaTeX

Safe HaskellNone
LanguageHaskell2010

Image.LaTeX.Render.Pandoc

Contents

Synopsis

SVG

convertFormulaSVG Source #

Arguments

:: EnvironmentOptions

System environment settings

-> PandocFormulaOptions

Formula display settings

-> Inline 
-> IO Inline 

Convert a formula in a pandoc document to an image, embedding the image into the HTML using Data URIs.

convertAllFormulaeSVG Source #

Arguments

:: EnvironmentOptions

System environment settings

-> PandocFormulaOptions

Formula display settings

-> Pandoc 
-> IO Pandoc 

Convert all formulae in a pandoc document to images, embedding the images into the HTML using Data URIs.

Separate Files

convertFormulaFiles Source #

Arguments

:: EnvironmentOptions

System environment settings

-> NameSupply

Unique file name supply. Reuse this for every invocation that shares the same image directory.

-> FilePath

Name of image directory where images will be stored

-> PandocFormulaOptions

Formula display settings

-> Inline 
-> IO Inline 

Convert a formula in a pandoc document to an image, storing the images in a separate directory.

convertAllFormulaeFiles Source #

Arguments

:: EnvironmentOptions

System environment settings

-> NameSupply

Unique file name supply. Reuse this for every invocation that shares the same image directory.

-> FilePath

Name of image directory where images will be stored

-> PandocFormulaOptions

Formula display settings

-> Pandoc 
-> IO Pandoc 

Convert every formula in a pandoc document to an image, storing the images in a separate directory.

Name Supplies

type NameSupply = IORef Int Source #

If we use files for the images, we need some way of naming the image files we produce A NameSupply provides us with a source of unique names via an ever-increasing integer. It's important that any invocation of convertFormulaFiles or convertAllFormulaeFiles that shares the same image storage directory will also use the same name supply, or they will overwrite each others images.

TODO: remove

newNameSupply :: IO NameSupply Source #

Create a new name supply.

Options

data PandocFormulaOptions Source #

All options pertaining to the actual display of formulae.

Constructors

PandocFormulaOptions 

Fields

  • errorDisplay :: RenderError -> Inline

    How to display various errors (such as LaTeX errors). Usually this can just be displayError but you may wish hideError to avoid putting potentially secure information into the output page.

  • formulaOptions :: MathType -> FormulaOptions

    LaTeX environment settings, including the preamble, for each equation type (display and inline)

type ShrinkSize = Int Source #

Denominator for various dimensions. For high DPI displays, it can be useful to use values of 2 or 4, so that the dimensions of the image are a fraction of the actual image size, and the image appears more crisp. Otherwise, a value of 1 will always produce sensible, if somewhat pixelated results.

defaultPandocFormulaOptions :: PandocFormulaOptions Source #

A set of sensible defaults for formula options.

Error display functions

hideError :: RenderError -> Inline Source #

Render all errors simply as Error

displayError :: RenderError -> Inline Source #

Render errors nicely, in order to show any problems clearly, with all information intact.

Generalised versions

SVG

convertFormulaSVGWith Source #

Arguments

:: (FormulaOptions -> Formula -> IO (Either RenderError SVG))

Function that renders a formula, such as imageForFormula defaultEnv

-> PandocFormulaOptions

Formula display settings

-> Inline 
-> IO Inline 

A generalisation of convertFormulaSVG which allows the actual image rendering function to be customised, so that (e.g) caching can be added or other image processing.

convertAllFormulaeSVGWith Source #

Arguments

:: (FormulaOptions -> Formula -> IO (Either RenderError SVG))

Function that renders a formula, such as imageForFormula defaultEnv

-> PandocFormulaOptions

Formula display settings

-> Pandoc 
-> IO Pandoc 

A generalisation of convertAllFormulaeSVG which allows the actual image rendering function to be customised, so that (e.g) caching can be added or other image processing.

Files

convertFormulaFilesWith Source #

Arguments

:: (FormulaOptions -> Formula -> IO (Either RenderError SVG))

Function that renders a formula, such as imageForFormula defaultEnv

-> NameSupply

Unique file name supply. Reuse this for every invocation that shares the same image directory.

-> FilePath

Name of image directory where images will be stored

-> PandocFormulaOptions

Formula display settings

-> Inline 
-> IO Inline 

A generalisation of convertFormulaFiles which allows the actual image rendering function to be customised, so that (e.g) caching can be added or other image processing.

convertAllFormulaeFilesWith Source #

Arguments

:: (FormulaOptions -> Formula -> IO (Either RenderError SVG))

Function that renders a formula, such as imageForFormula defaultEnv

-> NameSupply

Unique file name supply. Reuse this for every invocation that shares the same image directory.

-> FilePath

Name of image directory where images will be stored

-> PandocFormulaOptions

Formula display settings

-> Pandoc 
-> IO Pandoc 

A generalisation of convertAllFormulaeFiles which allows the actual image rendering function to be customised, so that (e.g) caching can be added or other image processing.