module Wumpus.Basic.System.FontLoader.Base.GSFontMap
(
GSFontMap(..)
, gsMetricsFile
, gsFontAlias
, gsVersionNumber
, ghostscript_fontmap_8_54
) where
import Data.Map ( Map )
import qualified Data.Map as Map
data GSFontMap = GSFontMap
{ ghostscript_version :: String
, ghostscript_fontmap :: Map String (String, FilePath)
}
gsMetricsFile :: GSFontMap -> String -> Maybe FilePath
gsMetricsFile mp name = fmap snd $ Map.lookup name (ghostscript_fontmap mp)
gsFontAlias :: GSFontMap -> String -> Maybe String
gsFontAlias mp name = fmap fst $ Map.lookup name (ghostscript_fontmap mp)
gsVersionNumber :: GSFontMap -> String
gsVersionNumber = ghostscript_version
ghostscript_fontmap_8_54 :: GSFontMap
ghostscript_fontmap_8_54 = GSFontMap "8.54" body
where
body = Map.fromList $
[ ("Courier", ("NimbusMonL-Regu", "n022003l.afm"))
, ("Courier-Oblique", ("NimbusMonL-ReguObli", "n022023l.afm"))
, ("Courier-Bold", ("NimbusMonL-Bold", "n022004l.afm"))
, ("Courier-BoldOblique", ("NimbusMonL-BoldObli", "n022024l.afm"))
, ("Helvetica", ("NimbusSanL-Regu", "n019003l.afm"))
, ("Helvetica-Oblique", ("NimbusSanL-ReguItal", "n019023l.afm"))
, ("Helvetica-Bold", ("NimbusSanL-Bold", "n019004l.afm"))
, ("Helvetica-BoldOblique", ("NimbusSanL-BoldItal", "n019024l.afm"))
, ("Times-Roman", ("NimbusRomNo9L-Regu", "n021003l.afm"))
, ("Times-Italic", ("NimbusRomNo9L-ReguItal", "n021023l.afm"))
, ("Times-Bold", ("NimbusRomNo9L-Medi", "n021004l.afm"))
, ("Times-BoldItalic", ("NimbusRomNo9L-MediItal", "n021024l.afm"))
, ("Symbol", ("StandardSymL", "s050000l.afm"))
, ("ZapfDingbats", ("Dingbats", "d050000l.afm"))
]