From c1ca610455de49d56b8239c4fdc72a1bb021c3d4 Mon Sep 17 00:00:00 2001 From: Jan Bracker Date: Wed, 31 Jul 2013 15:51:06 +0200 Subject: [PATCH] Added a test that renders a font using diagrams/cairo and cairo side by side to compare their sizes. --- chart-tests/Chart-tests.cabal | 28 +++++++ chart-tests/tests/compare-font/Compare.hs | 96 ++++++++++++++++++++++ chart-tests/tests/compare-font/test.png | Bin 0 -> 67948 bytes 3 files changed, 124 insertions(+) create mode 100644 chart-tests/tests/compare-font/Compare.hs create mode 100644 chart-tests/tests/compare-font/test.png diff --git a/chart-tests/Chart-tests.cabal b/chart-tests/Chart-tests.cabal index 204d9ae7..3c5810ed 100644 --- a/chart-tests/Chart-tests.cabal +++ b/chart-tests/Chart-tests.cabal @@ -179,4 +179,32 @@ Executable ChartsTestDrawingDiagramsCairo Main-is: DiagramsCairo.hs Hs-Source-Dirs: tests/drawing Ghc-Options: -threaded + default-language: Haskell2010 + +Executable ChartsTestCompareFonts + if flag(cairo) && flag(diagrams) + Build-Depends: + base >= 3 && < 5, + old-locale, + array, + time, + mtl, + colour >= 2.2.1, + data-accessor == 0.2.*, + data-default-class < 0.1, + random >= 1.0, + containers >= 0.5, + old-time >= 1.0, + cairo >= 0.9.11, + Chart >= 0.17, + Chart-diagrams >= 0.1, + Chart-cairo >= 0.1, + diagrams-cairo >= 0.6.1, + diagrams-lib >= 0.6.1, + diagrams-core >= 0.6.1 + if !flag(cairo) || !flag(diagrams) + Buildable: False + Main-is: Compare.hs + Hs-Source-Dirs: tests/compare-font + Ghc-Options: -threaded default-language: Haskell2010 \ No newline at end of file diff --git a/chart-tests/tests/compare-font/Compare.hs b/chart-tests/tests/compare-font/Compare.hs new file mode 100644 index 00000000..84a74cff --- /dev/null +++ b/chart-tests/tests/compare-font/Compare.hs @@ -0,0 +1,96 @@ + +import Data.Colour +import Data.Colour.Names +import Data.Monoid +import Data.Default.Class + +import Graphics.Rendering.Chart.Backend +import Graphics.Rendering.Chart.Geometry +import Graphics.Rendering.Chart.Drawing +import qualified Graphics.Rendering.Chart.Backend.Diagrams as BD +import qualified Graphics.Rendering.Chart.Backend.Cairo as BC + +import Diagrams.Core.Types ( renderDia ) +import Diagrams.TwoD ( SizeSpec2D(..) ) +import Diagrams.Backend.Cairo hiding ( renderCairo ) +import Diagrams.Backend.Cairo.Internal + +import qualified Graphics.Rendering.Cairo as C +import qualified Graphics.Rendering.Cairo.Matrix as CM + +markLineStyle :: LineStyle +markLineStyle = def + { line_color_ = opaque red + , line_width_ = 1 + } + +-- Render a few lines and mark them appropriatly. +main :: IO () +main = render ("test.png") 1000 500 $ do + withTranslation (Point 10 10) $ do + (flip mapM_) [0 .. 5] $ \i -> do + let d = fromIntegral i + withTranslation (Point 0 (d * 70)) $ testDrawText (i * 10 + 10) + return () + +testDrawText :: Int -> ChartBackend () +testDrawText fontSize = + withFontStyle (def { font_size_ = fromIntegral fontSize, font_name_ = "Source Sans Pro" }) $ do + let text = "ÄÖÜ Testing " ++ show fontSize ++ "px" + -- Text metrics + ts <- textSize text + let a = textSizeAscent ts + d = textSizeDescent ts + -- Baseline and descent line: Red + withLineStyle markLineStyle $ do + p <- alignStrokePath $ moveTo' 0 a + <> lineTo' 500 a + <> moveTo' 0 (a + d) + <> lineTo' 500 (a + d) + strokePath p + -- Bounding lines: Green + withLineStyle (markLineStyle { line_color_ = opaque green }) $ do + p <- alignStrokePath $ moveTo' 0 0 + <> lineTo' 500 0 + <> moveTo' 0 (fromIntegral fontSize) + <> lineTo' 500 (fromIntegral fontSize) + <> moveTo' 0 0 + <> lineTo' 0 (fromIntegral fontSize) + + strokePath p + drawText (Point 0 a) text + +-- Render it side by side using cairo and diagrams cairo with SVGFonts. +render :: FilePath -> Int -> Int -> ChartBackend () -> IO () +render f w h m = do + rc <- renderCairo (w,h) m + rd <- renderDiagramsCairo (w,h) m + s <- C.createImageSurface C.FormatARGB32 w h + C.renderWith s $ do + C.setSourceRGB 1 1 1 + C.paint + C.setSourceRGB 0 0 0 + C.newPath + C.moveTo (fromIntegral w / 2) 0 + C.lineTo (fromIntegral w / 2) (fromIntegral h) + C.stroke + C.renderWith s $ do + C.rectangle 0 0 500 500 + C.clip + rc + C.renderWith s $ do + C.setMatrix (CM.translate (fromIntegral w/2) 0 CM.identity) + C.rectangle 0 0 500 500 + C.clip + rd + C.surfaceWriteToPNG s f + +renderCairo :: (Int, Int) -> ChartBackend () -> IO (C.Render ()) +renderCairo (w,h) m = do + return $ BC.runBackend (BC.defaultEnv bitmapAlignmentFns) m + +renderDiagramsCairo :: (Int, Int) -> ChartBackend () -> IO (C.Render ()) +renderDiagramsCairo (w,h) m = do + env <- BD.defaultEnv bitmapAlignmentFns + let (d, _) = BD.runBackend env m + return $ snd $ renderDia Cairo (CairoOptions "" (Dims (fromIntegral w) (fromIntegral h)) PNG True) d \ No newline at end of file diff --git a/chart-tests/tests/compare-font/test.png b/chart-tests/tests/compare-font/test.png new file mode 100644 index 0000000000000000000000000000000000000000..bd334fea40e6465fb48c6a503d39c6109294ca67 GIT binary patch literal 67948 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 literal 0 HcmV?d00001