2016-09-20 4 views
5

Ich benutze Haskell-Chart nach dem Beispiel eample-1. Haskell-Chart generiert Inhalt zu DateiByteString in Haskell-Chart generieren

Ist es möglich, Inhalt von Diagramm zu ByteString stattdessen Datei zu generieren? Ich kann in der Dokumentation keine Lösung finden.

Antwort

6

Leider ist dies nicht möglich ist eine direkte Art und Weise. toFile ruft Funktionen in der cairo-Bibliothek wie withPDFSurface, withSVGSurface auf, die selbst in die Cairo-C-Bibliothek aufrufen und nur Dateinamen übernehmen.

Sie können jederzeit in eine temporäre Datei schreiben und den Inhalt wieder in wie folgt lesen:

import System.IO.Temp -- from the temporary package 
import qualified Data.ByteString.Char8 as BS 

... 
bs <- withSystemTempFile "chart-XXXXXXX" $ \path _ -> do 
     toFile def path $ do ... 
     BS.readFile path 
Verwandte Themen