name: wumpus-core version: 0.33.0 license: BSD3 license-file: LICENSE copyright: Stephen Tetley maintainer: Stephen Tetley homepage: http://code.google.com/p/copperbox/ category: Graphics synopsis: Pure Haskell PostScript and SVG generation. description: . Wumpus is a low-level library for generating static 2D vector pictures, its salient feature is portability due to no FFI dependencies. It can generate PostScript (EPS) files and SVG files. The generated PostScript code is plain [1] and reasonably efficient as the use of stack operations, i.e @gsave@ and @grestore@, is minimized. . Pictures in Wumpus are made from /paths/ and text /labels/. Paths themselves are made from points. The usual affine transformations (rotations, scaling, translations) can be applied to Pictures. Unlike PostScript there is no notion of a current point, Wumpus builds pictures in a coordinate-free style. . GENERAL DRAWBACKS... . For actually drawing pictures, diagrams, etc. Wumpus is very low level. There is a supplemantary package @wumpus-basic@ available that helps create certain types of diagram, but it is experimental - functionality is added and dropped between releases. . Some of the design decisions made for Wumpus-core are not sophisticated (e.g. how attributes like colour are handled, and how the bounding boxes of text labels are calculated), so Wumpus might be limited compared to other systems. However, the design permits a fairly simple implementation, which is a priority. . . \[1\] Because the output is simple, straight-line PostScript code, it is possible to use GraphicsMagick or a similar tool to convert EPS files generated by Wumpus to many other formats (bitmaps). . Changelog: . 0.32.0 to 0.33.0: . * Major change - reworked support for text encoding. Encoding maps are now linked with fonts - it was spotted that the Symbol font does not use the Latin1 names. The @TextEncoder@ data type has been changed and there is a new @FontEncoder@ data type. There are also new modules for the Symbol Font encoder table and for the /Default Encoder/ which accommodates both Latin1 and the Symbol font. This has also mandated changes to the @FontFace@ data type. . * Major change - the printing order has been changed. The first element in a @frame@ of Prims is draw first. This means it appears first in the output file (this makes sense) - it also means it is at the back in the Z-Order. This latter point might not be so intuitive, but changing the printing order at least makes Wumpus-Core match SVG and PostScript. . * Changed the visiblity of the new colours (yellow, cyan, magenta) to be hidden at the top level. They can be exposed by importing @Wumpus.Core.Colour@. . * @Wumpus.Core.FontSize@ - added @spacerWidth@ function. . . . build-type: Simple stability: unstable cabal-version: >= 1.2 extra-source-files: CHANGES, LICENSE, demo/AffineTest01.hs, demo/AffineTest02.hs, demo/AffineTest03.hs, demo/AffineTestBase.hs, demo/DeltaPic.hs, demo/FontMetrics.hs, demo/KernPic.hs, demo/LabelPic.hs, demo/Latin1Pic.hs, demo/MultiPic.hs, demo/Rotated.hs, demo/Scaled.hs, demo/Translated.hs, demo/ZOrderPic.hs, doc/Guide.pdf, doc-src/Guide.lhs, doc-src/Makefile, doc-src/WorldFrame.hs library hs-source-dirs: src build-depends: base < 5, containers >= 0.3 && <= 0.4, time >= 1.1.3 && < 1.2, vector-space >= 0.6 && < 1.0, algebra >= 0.0.0.1 exposed-modules: Wumpus.Core, Wumpus.Core.AffineTrans, Wumpus.Core.BoundingBox, Wumpus.Core.Colour, Wumpus.Core.FontSize, Wumpus.Core.Geometry, Wumpus.Core.GraphicsState, Wumpus.Core.OutputPostScript, Wumpus.Core.OutputSVG, Wumpus.Core.Picture, Wumpus.Core.PtSize, Wumpus.Core.TextDefaultEncoder, Wumpus.Core.TextEncoder, Wumpus.Core.TextLatin1, Wumpus.Core.TextSymbolFont, Wumpus.Core.VersionNumber, Wumpus.Core.WumpusTypes other-modules: Wumpus.Core.FormatCombinators, Wumpus.Core.PageTranslation, Wumpus.Core.PictureInternal, Wumpus.Core.PostScriptDoc, Wumpus.Core.SVGDoc, Wumpus.Core.OneList, Wumpus.Core.TextInternal, Wumpus.Core.Utils extensions: ghc-options: includes: