The binary-file package

[Tags: bsd3, library]
 runghc -XQuasiQuotes exam.hs some.bmp out.bmp

exam.hs:

 import File.Binary
 import File.Binary.Data.LittleEndian
 import System.Environment
 import Data.ByteString as BS

 main = do
	[inf, outf] <- getArgs

   cnt <- BS.readFile inf
	let bmp = readBitmap $ cnt `BS.append` replicate 20 ' '
	print bmp

	let out = writeBitmap bmp
		authorFirst = "Yoshikuni ",
		authorSecond = "Jujo      "

   BS.writeFile outf out

 instance RetType (Int, Int, Int) where
    type Argument (Int, Int, Int) = ()
    fromType _ (b, g, r) = cc $ [
        fromType 1 b, fromType 1 g, fromType 1 r, zero]
    toType _ str = let
        (b, rest) = toType 1 str
        (g, rest') = toType 1 rest
        (r, rest'') = toType 1 rest' in
        ((b, g, r), dp 1 rest'')

 [binary|

 Bitmap

 2: "BM"
 4: fileSize
 2: 0
 2: 0
 4: offset

 4: 40
 4: bitmapWidth
 4: bitmapHeight
 2: 1
 2: bitsPerPixel
 4: compressionMethod
 4: imageSize
 4: horizontalResolution
 4: verticalResolution
 4: numberOfColors
 4: importantColors
 ((), Just numberOfColors)<[(Int, Int, Int)]>: colors
 imageSize<BS.ByteString>: image

 10<String>: authorFirst
 10<String>: authorSecond

 |]

Properties

Versions0.2, 0.3, 0.4, 0.6, 0.12.6, 0.12.8, 0.13.1, 0.13.2, 0.14.1, 0.14.3, 0.15.0, 0.15.9, 0.15.10, 0.15.11, 0.15.13, 0.15.16, 0.15.18, 0.15.22, 0.15.24
Dependenciesbase (>3 && <5), bytestring, peggy, template-haskell
LicenseBSD3
AuthorYoshikuni Jujo <PAF01143@nifty.ne.jp>
MaintainerYoshikuni Jujo <PAF01143@nifty.ne.jp>
Stabilityexperimental
CategoryFile
Source repositoryhead: git clone git://github.com/YoshikuniJujo/binary-file.git
UploadedTue Mar 26 03:04:00 UTC 2013 by YoshikuniJujo
Downloads1852 total (95 in last 30 days)
StatusDocs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees