~alcinnz/fontconfig-pure

ref: df959ade6e6c1c5e75746307bee080ff19e9eaaf fontconfig-pure/Main.hs -rw-r--r-- 768 bytes
df959ade — Adrian Cochrane Document FcPattern language bindings. 2 years ago
                                                                                
a327c852 Adrian Cochrane
e21707cb Adrian Cochrane
a327c852 Adrian Cochrane
c10cdcf2 Adrian Cochrane
a327c852 Adrian Cochrane
e21707cb Adrian Cochrane
a327c852 Adrian Cochrane
c10cdcf2 Adrian Cochrane
cc3a295f Adrian Cochrane
a327c852 Adrian Cochrane
c10cdcf2 Adrian Cochrane
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{-# LANGUAGE PackageImports #-}
module Main where

import "fontconfig-pure" Graphics.Text.Font.Choose as Font

import System.Environment (getArgs)
import Control.Monad (forM)

main :: IO ()
main = do
    args <- getArgs
    let (all, name, objects) = case args of {
        [] -> (False, "serif", []);
        "!":name:objects -> (True, name, objects);
        name:objects -> (False, name, objects)}
    let query = nameParse name
    print query
    let query' = defaultSubstitute $ configSubstitute' query MatchPattern
    print query'

    case fontSort' query' all of
        Just (res, charset) -> do
            print charset
            forM res $ \res' -> print $ fontRenderPrepare' query' res'
            return ()
        Nothing -> putStrLn "No results!"