Copyright | (c) 2013 Diagrams team (see LICENSE) |
---|---|
License | BSD-style (see LICENSE) |
Maintainer | diagrams-discuss@googlegroups.com |
Safe Haskell | None |
Language | Haskell2010 |
A Postscript rendering backend for diagrams.
To build diagrams for Postscript rendering use the Postscript
type in the diagram type construction
d :: Diagram Postscript d = ...
and render giving the Postscript
token
renderDia Postscript (PostscriptOptions "file.eps" (Width 400) EPS) d
This IO action will write the specified file.
- data Postscript = Postscript
- type B = Postscript
- data family Options b v n
- psfileName :: Lens' (Options Postscript V2 Double) String
- psSizeSpec :: Lens' (Options Postscript V2 Double) (SizeSpec V2 Double)
- psOutputFormat :: Lens' (Options Postscript V2 Double) OutputFormat
- data OutputFormat = EPS
- renderDias :: (Semigroup m, Monoid m) => Options Postscript V2 Double -> [QDiagram Postscript V2 Double m] -> IO [()]
Backend token
data Postscript Source
This data declaration is simply used as a token to distinguish this rendering engine.
Eq Postscript Source | |
Ord Postscript Source | |
Read Postscript Source | |
Show Postscript Source | |
Backend Postscript V2 Double Source | |
Renderable (Text Double) Postscript Source | |
Renderable (Path V2 Double) Postscript Source | |
Renderable (Trail V2 Double) Postscript Source | |
Show (Options Postscript V2 Double) Source | |
Monoid (Render Postscript V2 Double) Source | |
Hashable (Options Postscript V2 Double) Source | |
Renderable (Segment Closed V2 Double) Postscript Source | |
type V Postscript = V2 Source | |
type N Postscript = Double Source | |
data Options Postscript V2 Double = PostscriptOptions {} Source | |
type Result Postscript V2 Double = IO () Source | |
data Render Postscript V2 Double = C (RenderM ()) Source | |
type MainOpts [(String, QDiagram Postscript V2 Double Any)] = (DiagramOpts, DiagramMultiOpts) | |
type MainOpts [QDiagram Postscript V2 Double Any] = DiagramOpts | |
type MainOpts (Animation Postscript V2 Double) = (DiagramOpts, DiagramAnimOpts) | |
type MainOpts (QDiagram Postscript V2 Double Any) = DiagramOpts |
type B = Postscript Source
Postscript-specific options
Unfortunately, Haddock does not yet support documentation for associated data families, so we must just provide it manually. This module defines
data family Options Postscript V2 Double = PostscriptOptions { _psfileName :: String -- ^ the name of the file you want generated , _psSizeSpec :: SizeSpec V2 Double -- ^ the requested size of the output , _psOutputFormat :: OutputFormat -- ^ the output format and associated options }
data family Options b v n
Backend-specific rendering options.
Show (Options Postscript V2 Double) | |
Hashable (Options Postscript V2 Double) | |
data Options NullBackend | |
data Options Postscript V2 Double = PostscriptOptions {} |
psSizeSpec :: Lens' (Options Postscript V2 Double) (SizeSpec V2 Double) Source
Postscript-supported output formats
data OutputFormat Source
Postscript only supports EPS style output at the moment. Future formats would each have their own associated properties that affect the output.
EPS | Encapsulated Postscript output. |
renderDias :: (Semigroup m, Monoid m) => Options Postscript V2 Double -> [QDiagram Postscript V2 Double m] -> IO [()] Source