@@ -10,6 +10,8 @@ foreign import data Context2D :: *
10
10
11
11
foreign import data ImageData :: *
12
12
13
+ foreign import data CanvasPixelArray :: *
14
+
13
15
foreign import getCanvasElementById
14
16
" function getCanvasElementById(id) {\
15
17
\ return function() {\
@@ -521,3 +523,44 @@ foreign import putImageData
521
523
\ };\
522
524
\}" :: forall eff . Context2D -> ImageData -> Number -> Number -> Eff (canvas :: Canvas | eff ) Context2D
523
525
526
+ foreign import createImageData
527
+ " function createImageData(ctx) {\
528
+ \ return function(sw) {\
529
+ \ return function(sh) {\
530
+ \ return function() {\
531
+ \ return ctx.createImageData(sw, sh);\
532
+ \ };\
533
+ \ };\
534
+ \ };\
535
+ \}" :: forall eff . Context2D -> Number -> Number -> Eff (canvas :: Canvas | eff ) ImageData
536
+
537
+ foreign import createImageDataCopy
538
+ " function createImageDataCopy(ctx) {\
539
+ \ return function(image_data) {\
540
+ \ return function() {\
541
+ \ return ctx.createImageData(image_data);\
542
+ \ };\
543
+ \ };\
544
+ \}" :: forall eff . Context2D -> ImageData -> Eff (canvas :: Canvas | eff ) ImageData
545
+
546
+ foreign import getImageDataWidth
547
+ " function getImageDataWidth(image_data) {\
548
+ \ return function() {\
549
+ \ return image_data.width;\
550
+ \ };\
551
+ \}" :: forall eff . ImageData -> Eff (canvas :: Canvas | eff ) Number
552
+
553
+ foreign import getImageDataHeight
554
+ " function getImageDataHeight(image_data) {\
555
+ \ return function() {\
556
+ \ return image_data.height;\
557
+ \ };\
558
+ \}" :: forall eff . ImageData -> Eff (canvas :: Canvas | eff ) Number
559
+
560
+ foreign import getImageDataPixelArray
561
+ " function getImageDataPixelArray(image_data) {\
562
+ \ return function() {\
563
+ \ return image_data.data;\
564
+ \ };\
565
+ \}" :: forall eff . ImageData -> Eff (canvas :: Canvas | eff ) CanvasPixelArray
566
+
0 commit comments