wumpus-basic-0.1.1: src/Wumpus/Basic/SafeFonts.hs
{-# OPTIONS -Wall #-}
--------------------------------------------------------------------------------
-- |
-- Module : Wumpus.Basic.SafeFonts
-- Copyright : (c) Stephen Tetley 2009-2010
-- License : BSD3
--
-- Maintainer : Stephen Tetley <stephen.tetley@gmail.com>
-- Stability : highly unstable
-- Portability : GHC with TypeFamilies and more
--
-- Safe to use font / size combinations.
--
-- Using fonts at other sizes than the ones enumerated in this
-- module may case unusual rendering errors, consider drawing
-- at a standard size then uniform-scaling for other sizes in
-- PostScript.
--
--------------------------------------------------------------------------------
module Wumpus.Basic.SafeFonts
(
-- * Times Roman
timesRoman10
, timesRoman12
, timesRoman18
, timesRoman24
, timesRoman36
, timesRoman48
, timesItalic10
, timesItalic12
, timesItalic18
, timesItalic24
, timesItalic36
, timesItalic48
, timesBold10
, timesBold12
, timesBold18
, timesBold24
, timesBold36
, timesBold48
, timesBoldItalic10
, timesBoldItalic12
, timesBoldItalic18
, timesBoldItalic24
, timesBoldItalic36
, timesBoldItalic48
-- * Helvetica
, helvetica10
, helvetica12
, helvetica18
, helvetica24
, helvetica36
, helvetica48
, helveticaOblique10
, helveticaOblique12
, helveticaOblique18
, helveticaOblique24
, helveticaOblique36
, helveticaOblique48
, helveticaBold10
, helveticaBold12
, helveticaBold18
, helveticaBold24
, helveticaBold36
, helveticaBold48
, helveticaBoldOblique10
, helveticaBoldOblique12
, helveticaBoldOblique18
, helveticaBoldOblique24
, helveticaBoldOblique36
, helveticaBoldOblique48
-- * Courier
, courier10
, courier12
, courier18
, courier24
, courier36
, courier48
, courierOblique10
, courierOblique12
, courierOblique18
, courierOblique24
, courierOblique36
, courierOblique48
, courierBold10
, courierBold12
, courierBold18
, courierBold24
, courierBold36
, courierBold48
, courierBoldOblique10
, courierBoldOblique12
, courierBoldOblique18
, courierBoldOblique24
, courierBoldOblique36
, courierBoldOblique48
-- * Symbol
-- $symboldoc
, symbol10
, symbol12
, symbol18
, symbol24
, symbol36
, symbol48
) where
import Wumpus.Core
{-
Times-Roman Times-Italic Times-Bold Times-BoldItalic
Helvetica Helvetica-Oblique Helvetica-Bold Helvetica-Bold-Oblique
Courier Courier-Oblique Courier-Bold Courier-Bold-Oblique
Symbol
-}
--------------------------------------------------------------------------------
-- Times-Roman
mkTimesRoman :: Int -> FontAttr
mkTimesRoman = FontAttr "Times-Roman" "Times New Roman" SVG_REGULAR
timesRoman10 :: FontAttr
timesRoman10 = mkTimesRoman 10
timesRoman12 :: FontAttr
timesRoman12 = mkTimesRoman 12
timesRoman18 :: FontAttr
timesRoman18 = mkTimesRoman 18
timesRoman24 :: FontAttr
timesRoman24 = mkTimesRoman 24
timesRoman36 :: FontAttr
timesRoman36 = mkTimesRoman 36
timesRoman48 :: FontAttr
timesRoman48 = mkTimesRoman 48
-- Times Italic
mkTimesItalic :: Int -> FontAttr
mkTimesItalic = FontAttr "Times-Italic" "Times New Roman" SVG_ITALIC
timesItalic10 :: FontAttr
timesItalic10 = mkTimesItalic 10
timesItalic12 :: FontAttr
timesItalic12 = mkTimesItalic 12
timesItalic18 :: FontAttr
timesItalic18 = mkTimesItalic 18
timesItalic24 :: FontAttr
timesItalic24 = mkTimesItalic 24
timesItalic36 :: FontAttr
timesItalic36 = mkTimesItalic 36
timesItalic48 :: FontAttr
timesItalic48 = mkTimesItalic 48
-- Times Bold
mkTimesBold :: Int -> FontAttr
mkTimesBold = FontAttr "Times-Bold" "Times New Roman" SVG_BOLD
timesBold10 :: FontAttr
timesBold10 = mkTimesBold 10
timesBold12 :: FontAttr
timesBold12 = mkTimesBold 12
timesBold18 :: FontAttr
timesBold18 = mkTimesBold 18
timesBold24 :: FontAttr
timesBold24 = mkTimesBold 24
timesBold36 :: FontAttr
timesBold36 = mkTimesBold 36
timesBold48 :: FontAttr
timesBold48 = mkTimesBold 48
-- Times Bold Italic
mkTimesBoldItalic :: Int -> FontAttr
mkTimesBoldItalic =
FontAttr "Times-BoldItalic" "Times New Roman" SVG_BOLD_ITALIC
timesBoldItalic10 :: FontAttr
timesBoldItalic10 = mkTimesBoldItalic 10
timesBoldItalic12 :: FontAttr
timesBoldItalic12 = mkTimesBoldItalic 12
timesBoldItalic18 :: FontAttr
timesBoldItalic18 = mkTimesBoldItalic 18
timesBoldItalic24 :: FontAttr
timesBoldItalic24 = mkTimesBoldItalic 24
timesBoldItalic36 :: FontAttr
timesBoldItalic36 = mkTimesBoldItalic 36
timesBoldItalic48 :: FontAttr
timesBoldItalic48 = mkTimesBoldItalic 48
--------------------------------------------------------------------------------
-- Helvetica
mkHelvetica :: Int -> FontAttr
mkHelvetica = FontAttr "Helvetica" "Helvetica" SVG_REGULAR
helvetica10 :: FontAttr
helvetica10 = mkHelvetica 10
helvetica12 :: FontAttr
helvetica12 = mkHelvetica 12
helvetica18 :: FontAttr
helvetica18 = mkHelvetica 18
helvetica24 :: FontAttr
helvetica24 = mkHelvetica 24
helvetica36 :: FontAttr
helvetica36 = mkHelvetica 36
helvetica48 :: FontAttr
helvetica48 = mkHelvetica 48
-- Helvetica Oblique
mkHelveticaOblique :: Int -> FontAttr
mkHelveticaOblique = FontAttr "Helvetica-Oblique" "Helvetica" SVG_OBLIQUE
helveticaOblique10 :: FontAttr
helveticaOblique10 = mkHelveticaOblique 10
helveticaOblique12 :: FontAttr
helveticaOblique12 = mkHelveticaOblique 12
helveticaOblique18 :: FontAttr
helveticaOblique18 = mkHelveticaOblique 18
helveticaOblique24 :: FontAttr
helveticaOblique24 = mkHelveticaOblique 24
helveticaOblique36 :: FontAttr
helveticaOblique36 = mkHelveticaOblique 36
helveticaOblique48 :: FontAttr
helveticaOblique48 = mkHelveticaOblique 48
-- Helvetica Bold
mkHelveticaBold :: Int -> FontAttr
mkHelveticaBold = FontAttr "Helvetica-Bold" "Helvetica" SVG_BOLD
helveticaBold10 :: FontAttr
helveticaBold10 = mkHelveticaBold 10
helveticaBold12 :: FontAttr
helveticaBold12 = mkHelveticaBold 12
helveticaBold18 :: FontAttr
helveticaBold18 = mkHelveticaBold 18
helveticaBold24 :: FontAttr
helveticaBold24 = mkHelveticaBold 24
helveticaBold36 :: FontAttr
helveticaBold36 = mkHelveticaBold 36
helveticaBold48 :: FontAttr
helveticaBold48 = mkHelveticaBold 48
-- Helvetica Bold Oblique
mkHelveticaBoldOblique :: Int -> FontAttr
mkHelveticaBoldOblique =
FontAttr "Helvetica-Bold-Oblique" "Helvetica" SVG_BOLD_OBLIQUE
helveticaBoldOblique10 :: FontAttr
helveticaBoldOblique10 = mkHelveticaBoldOblique 10
helveticaBoldOblique12 :: FontAttr
helveticaBoldOblique12 = mkHelveticaBoldOblique 12
helveticaBoldOblique18 :: FontAttr
helveticaBoldOblique18 = mkHelveticaBoldOblique 18
helveticaBoldOblique24 :: FontAttr
helveticaBoldOblique24 = mkHelveticaBoldOblique 24
helveticaBoldOblique36 :: FontAttr
helveticaBoldOblique36 = mkHelveticaBoldOblique 36
helveticaBoldOblique48 :: FontAttr
helveticaBoldOblique48 = mkHelveticaBoldOblique 48
--------------------------------------------------------------------------------
-- Courier
mkCourier :: Int -> FontAttr
mkCourier = FontAttr "Courier" "Courier New" SVG_REGULAR
courier10 :: FontAttr
courier10 = mkCourier 10
courier12 :: FontAttr
courier12 = mkCourier 12
courier18 :: FontAttr
courier18 = mkCourier 18
courier24 :: FontAttr
courier24 = mkCourier 24
courier36 :: FontAttr
courier36 = mkCourier 36
courier48 :: FontAttr
courier48 = mkCourier 48
-- Courier Oblique
mkCourierOblique :: Int -> FontAttr
mkCourierOblique = FontAttr "Courier-Oblique" "Courier New" SVG_OBLIQUE
courierOblique10 :: FontAttr
courierOblique10 = mkCourierOblique 10
courierOblique12 :: FontAttr
courierOblique12 = mkCourierOblique 12
courierOblique18 :: FontAttr
courierOblique18 = mkCourierOblique 18
courierOblique24 :: FontAttr
courierOblique24 = mkCourierOblique 24
courierOblique36 :: FontAttr
courierOblique36 = mkCourierOblique 36
courierOblique48 :: FontAttr
courierOblique48 = mkCourierOblique 48
-- Courier Bold
mkCourierBold :: Int -> FontAttr
mkCourierBold = FontAttr "Courier-Bold" "Courier New" SVG_BOLD
courierBold10 :: FontAttr
courierBold10 = mkCourierBold 10
courierBold12 :: FontAttr
courierBold12 = mkCourierBold 12
courierBold18 :: FontAttr
courierBold18 = mkCourierBold 18
courierBold24 :: FontAttr
courierBold24 = mkCourierBold 24
courierBold36 :: FontAttr
courierBold36 = mkCourierBold 36
courierBold48 :: FontAttr
courierBold48 = mkCourierBold 48
-- Courier Bold Oblique
mkCourierBoldOblique :: Int -> FontAttr
mkCourierBoldOblique =
FontAttr "Courier-Bold-Oblique" "Courier New" SVG_BOLD_OBLIQUE
courierBoldOblique10 :: FontAttr
courierBoldOblique10 = mkCourierBoldOblique 10
courierBoldOblique12 :: FontAttr
courierBoldOblique12 = mkCourierBoldOblique 12
courierBoldOblique18 :: FontAttr
courierBoldOblique18 = mkCourierBoldOblique 18
courierBoldOblique24 :: FontAttr
courierBoldOblique24 = mkCourierBoldOblique 24
courierBoldOblique36 :: FontAttr
courierBoldOblique36 = mkCourierBoldOblique 36
courierBoldOblique48 :: FontAttr
courierBoldOblique48 = mkCourierBoldOblique 48
--------------------------------------------------------------------------------
-- Symbol
-- $symboldoc
-- Symbol does not appear to be well supported by SVG.
-- It renders in Chrome but not in Firefox.
mkSymbol :: Int -> FontAttr
mkSymbol = FontAttr "Symbol" "Symbol" SVG_REGULAR
symbol10 :: FontAttr
symbol10 = mkSymbol 10
symbol12 :: FontAttr
symbol12 = mkSymbol 12
symbol18 :: FontAttr
symbol18 = mkSymbol 18
symbol24 :: FontAttr
symbol24 = mkSymbol 24
symbol36 :: FontAttr
symbol36 = mkSymbol 36
symbol48 :: FontAttr
symbol48 = mkSymbol 48