module Main where import Graphics.Gloss.Data.Color import Graphics.Gloss.Data.Picture import Graphics.Gloss.Data.Bitmap import Graphics.Gloss import Graphics.Gloss.Export size :: (Int, Int) size = (1500, 1000) shorthand = exportPictureToPNG size white main :: IO () main = do bmp <- loadBMP "loadme.bmp" let pic = Pictures [bmp, Color red $ Polygon [(-80,0), (0,80), (80,0)], Circle 80, Text "text"] exportPictureToPNG (400,400) white "comprehensive.png" pic exportPictureToBitmap (400,400) white "comprehensive.bmp" pic exportPictureToTga (400,400) white "comprehensive.tga" pic exportPictureToTiff (400,400) white "comprehensive.tiff" pic -- display (InWindow "" (100,80) (0, 0)) white pic shorthand "bmp.png" (bmp) shorthand "circle.png" (circle 25) exportPictureToPNG (500,500) white "circles.png" (Pictures (map circle [0,10..250])) -- background seems limited to (1853,1025) beyond that it's transparent exportPictureToPNG (1860,1030) white "top_and_right_margin_transparent_bg_on_my_machine.png" (circle 25) let stack = (Pictures [ Color blue $ poly 49 --100x100 , Color red $ poly 30 -- 60x60 , Color yellow $ poly 20 -- 40x40 , Color green $ poly 10 -- 20x20 , Color white $ poly 5 -- 10x10 ] ) exportPictureToPNG (10,10) white "p10.png" stack exportPictureToPNG (20,20) white "p20.png" stack exportPictureToPNG (40,40) white "p40.png" stack exportPictureToPNG (60,60) white "p60.png" stack exportPictureToPNG (100,100) white "p100.png" stack exportPicturesToPNG (1000,1000) white "growing_polgons%d.png" (Color blue . poly) [200,250..500] exportPicturesToBitmap (1000,1000) white "growing_polgons%d.bmp" (Color blue . poly) [200,250..500] exportPicturesToTga (1000,1000) white "growing_polgons%d.tga" (Color blue . poly) [200,250..500] exportPicturesToTiff (1000,1000) white "growing_polgons%d.tiff" (Color blue . poly) [200,250..500] exportPicturesToGif 10 LoopingNever (1000,1000) red "growing_polgons.gif" (Color blue . poly) [200,250..500] textFloats :: [Float] textFloats = [0,1..10] poly :: Float -> Picture poly l = Polygon [(-l,l),( l,l),(l,-l),(-l,-l)]