Safe Haskell | None |
---|---|
Language | Haskell2010 |
To use this package you need to construct a Presentation tree using the types and constructors
from the Common
module (re-exported from this one). Then call one of the functions
bellow.
The generated HTML will not look like a presentation when you open it up in a browser, but
it has CSS guides in place that will split it up into pages properly when you print it.
Good default settings are A3-Landscape. You can just print to PDF to get the actual presentation.
Here's an example
{--} sample ::Presentation
sample =emptyPresentation
{slides
= [Slide
[Header
2 "Title",Sequence
Immediate
[ -- this delay does nothing because the parentImmediate
overrides itUnfoldConcatList
Delay
[Header
3 "Example",UnfoldList
Immediate
[ "These lines will unfold one by one.", "You can use some markdown in these strings like _this_ or *this* \ \or __this__ or **this**." ],Diagram
200 someDiagram ],List
[ "This list will be shown in place of the previous title-list-diagram.", "This item will be shown immediately with the last one." ] ] -- note that the above title "Title" will remain there during the sequence. ],Slide
[Header
2 "Another slide",List
[ "Some text describing stuff.", "More text." ],Sequence
Delay
[Diagram
200 a,Diagram
200 sequence,Diagram
200 of,Diagram
300 diagrams ] ] ] } main :: IO () main =writeToFile
"index.html" sample
The result is a HTML file which can be printed to PDF and would look like this
- renderPresentation :: Presentation -> String
- writeToFile :: FilePath -> Presentation -> IO ()
- module Slides.Common
Documentation
renderPresentation :: Presentation -> String Source
Render the Presentation to an HTML string.
writeToFile :: FilePath -> Presentation -> IO () Source
Render a Presentation to an HTML file with UTF8 encoding.
module Slides.Common