packages feed

JuicyPixels-3.0: Codec/Picture/ConvGraph.hs

-- $graph
--
-- The following graph describe the differents way to convert between pixel types,
--
-- * Nodes describe pixel type
--
-- * Arrows describe functions
--
-- <<data:image/png;base64,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>>