JuicyPixels-extra-0.5.2: Efficiently scale, crop, flip images with JuicyPixels
Copyright© 2016–present Mark Karpov
LicenseBSD 3 clause
MaintainerMark Karpov <markkarpov92@gmail.com>
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010

Codec.Picture.Extra

Description

A collection of functions to scale, crop, flip images with JuicyPixels.

Synopsis

Scaling

scaleBilinear Source #

Arguments

:: (Pixel a, Bounded (PixelBaseComponent a), Integral (PixelBaseComponent a)) 
=> Int

Desired width

-> Int

Desired height

-> Image a

Original image

-> Image a

Scaled image

Scale an image using bi-linear interpolation.

Cropping

crop Source #

Arguments

:: 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 an image. If the supplied coordinates are greater than the size of the image, the image boundaries are used instead.

Rotation

flipHorizontally :: Pixel a => Image a -> Image a Source #

Flip an image horizontally.

flipVertically :: Pixel a => Image a -> Image a Source #

Flip an image vertically.

rotateLeft90 :: Pixel a => Image a -> Image a Source #

Rotate an image to the left by 90°.

rotateRight90 :: Pixel a => Image a -> Image a Source #

Rotate an image to the right by 90°.

rotate180 :: Pixel a => Image a -> Image a Source #

Rotate an image by 180°, i.e flip both vertically and horizontally.

Since: 0.2.0

Other

beside :: Pixel a => [Image a] -> Image a Source #

Create an image by placing several images side by side. If the images are of differnet heights the smallest height is used.

Since: 0.2.0

below :: Pixel a => [Image a] -> Image a Source #

Create an image by placing several images in a vertical stack. If the images are of differnet widths the smallest width is used.

Since: 0.2.0