module Wumpus.Basic.FontLoader.GSLoader
(
module Wumpus.Basic.FontLoader.Base
, module Wumpus.Basic.FontLoader.AfmV2Parser
, loadGSMetrics
, gsFontLoader
) where
import Wumpus.Basic.FontLoader.AfmV2Parser
import Wumpus.Basic.FontLoader.Base
import Wumpus.Basic.FontLoader.GSFontMap
import Wumpus.Basic.Graphic
import Wumpus.Core
import Data.Maybe
loadGSMetrics :: FilePath -> [FontName] -> IO BaseGlyphMetrics
loadGSMetrics font_dir_path ns =
loadBaseGlyphMetrics (gsFontLoader font_dir_path) ns
gsFontLoader :: FilePath -> FontLoader AfmUnit
gsFontLoader font_dir_path = FontLoader
{ unit_scale_fun = afmUnitScale
, path_to_font_dir = font_dir_path
, file_name_locator = buildName
, font_parser = parseAfmV2File
, post_process = buildGlyphMetricsTable bbox (V2 600 0) 1000
}
where
buildName :: FontName -> FilePath
buildName font = fromMaybe font $ gsMetricsFile core14_alias_table font
bbox = BBox (P2 (23) (250)) (P2 715 805)