The openexr-write package

[Tags:gpl, library, test]

OpenEXR allows to store pixels as floating point numbers and thus can capture high dynamic range.

[Skip to Readme]


Change log
Dependencies base (>=4.8 && <5), binary, bytestring, data-binary-ieee754, deepseq, split, vector, vector-split, zlib [details]
License GPL-3
Copyright 2017 Pavol Klacansky
Author Pavol Klacansky
Category Graphics
Home page
Source repository head: git clone
Uploaded Tue Jul 4 04:41:56 UTC 2017 by pavolzetor
Distributions NixOS:, Stackage:
Downloads 70 total (70 in the last 30 days)
0 []
Status Docs available [build log]
Last success reported on 2017-07-04 [all 1 reports]
Hackage Matrix CI




Maintainer's Corner

For package maintainers and hackage trustees

Readme for openexr-write

Readme for openexr-write-

Haskell OpenEXR Library

This library can write colored images which use floating point values into OpenEXR (v2) high-dynamic-range file format.

Supported features:

  • scanline format
  • compression (ZIPS, ZIP)
  • pixel format (RGB float32)


Modify project's stack.yaml by adding path to openexr-write package.

- '.'
- path/openexr-write

An image can be written by calling writeFile function. For example, following code stores a compressed image consisting of one red pixel.

module Main where

import qualified Data.Vector      as V
import qualified Graphics.OpenEXR as EXR

main :: IO ()
main = do
        let image = EXR.ImageRGBF 1 1 (V.fromList [EXR.PixelRGBF 1.0 0.0 0.0])
        EXR.writeFile "image.exr" image EXR.ZipCompression