Copyright | © 2016–2017 Mark Karpov |
---|---|
License | BSD 3 clause |
Maintainer | Mark Karpov <markkarpov@openmailbox.org> |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Utilities for image transformation with JuicyPixels.
- scaleBilinear :: Int -> Int -> Image PixelRGB8 -> Image PixelRGB8
- crop :: Pixel a => Int -> Int -> Int -> Int -> Image a -> Image a
- flipHorizontally :: Pixel a => Image a -> Image a
- flipVertically :: Pixel a => Image a -> Image a
- rotateLeft90 :: Pixel a => Image a -> Image a
- rotateRight90 :: Pixel a => Image a -> Image a
- rotate180 :: Pixel a => Image a -> Image a
- beside :: Pixel a => [Image a] -> Image a
- below :: Pixel a => [Image a] -> Image a
Scaling
:: Int | Desired width |
-> Int | Desired height |
-> Image PixelRGB8 | Original image |
-> Image PixelRGB8 | Scaled image |
Scale image using bi-linear interpolation. This is specialized to
PixelRGB8
only for speed (polymorphic version is easily written, but
it's more than twice as slow).
Cropping
:: Pixel a | |
=> Int | Index (X axis) of first pixel to include |
-> Int | Index (Y axis) of first pixel to include |
-> Int | Width of resulting image |
-> Int | Height of resulting image |
-> Image a | Original image |
-> Image a | Cropped image |
Crop given image. If supplied coordinates are greater than size of original image, image boundaries are used instead.
Rotation
rotate180 :: Pixel a => Image a -> Image a Source #
Rotate image by 180°, i.e flip both vertically and horizontally.
Since: 0.2.0