Graphics.EasyRender.Internal

Types

Coordinates

type X

type Y

Colors

data Color

Fonts

data Basefont

type Fontmetric

metric

metric_timesroman

metric_helvetica

char_metric

string_metric

data Font

nominalsize

text_width

Alignment

type Alignment

align_left

align_center

align_right

The Document monad

data Document a

A vacuous run function

document_skip

User-level document structuring commands

newpage

newpage_defer

endpage

The Draw monad

Internal definition of the Draw monad

data DrawCommand

data Draw a

Low-level operations for the Draw monad

draw_write

draw_subroutine

draw_block

A vacuous run function

draw_skip

User-level drawing commands

Path construction commands

newpath

moveto

lineto

curveto

closepath

Painting commands

stroke

fill

fillstroke

Text

textbox

Graphics parameters

setlinewidth

setcolor

Coordinate system

translate

scale

rotate

Comments

comment

Block structure

block

Derived commands

arc

arc_append

oval

arc_internal

rectangle

Customization

Custom drawing commands

data Language

data CustomDef

custom_ps

custom_pdf

custom_ascii

custom_lookup

Customization interface

data Custom

custom

Generic string output

The WriterMonad class

class WriterMonad m

wPutStrLn

wprint

The Writer monad

data Writer a

Isomorphism with (String, a)

writer_to_pair

pair_to_writer

Run functions

run_writer

writer_to_file

writer_to_string

Boxed monads

data Boxed m a

unbox

Currying in a boxed monad

class Boxed_Curry fun args m res

Formatted printing

wprintf

with_printf

Filters

with_filter

flate_filter

Backends

Auxiliary functions

ensure_nl

ASCII output

draw_to_ascii

command_to_ascii

document_to_ascii

render_ascii

PostScript output

Auxiliary functions

ps_escape

remove_nl

The PSWriter monad

type Page

data PS_State

ps_state_empty

type PSWriter

pswriter_run

Access functions for the PSWriter monad

ps_get_bbox

ps_add_bbox

ps_get_pagecount

ps_next_page

Internal rendering to the PSWriter monad

draw_to_ps

color_to_ps

font_to_ps

command_to_ps

document_to_ps

global_ps_defs

pages_to_ps

Rendering to the Writer monad

render_ps_custom

EPS output

document_to_eps

render_eps_custom

PDF output

Auxiliary functions

pdf_escape

The PDF state

type Filepos

type Object

data PDF_State

pdf_state_empty

The PDFWriter monad

type RawPDFWriter

type PDFWriter

pdfwriter_run

Access functions for the PDFWriter monad

pdf_get_filepos

pdf_inc_filepos

pdf_get_objcount

pdf_next_object

pdf_add_xref

pdf_get_xref

pdf_get_pagecount

pdf_next_page

pdf_add_pagetable

pdf_get_pagetable

pdf_find_font

pdf_get_fonttable

pdf_clear_fonttable

Filters

with_filter_pdf

Higher access functions

pdf_deferred_object

pdf_define_object

pdf_deferred_stream

pdf_define_stream

pdf_deferred_flate_stream

objref

wprintf_xref_entry

wprintf_xref

Internal rendering to the PDFWriter monad

fillcolor_to_pdf

strokecolor_to_pdf

font_to_pdf

command_to_pdf

draw_to_pdf

pages_to_pdf

document_to_pdf

Rendering to the Writer monad

render_pdf_custom

Generic output functions

data RenderFormat

is_binary_format

Rendering with custom format

render_custom

render_custom_file

render_custom_stdout

render_custom_string

Rendering without custom format

render

render_file

render_stdout

render_string