Canvas 在js_of_ocaml中带有水平滚动条的画布

Canvas 在js_of_ocaml中带有水平滚动条的画布,canvas,ocaml,js-of-ocaml,Canvas,Ocaml,Js Of Ocaml,我在js_of_ocaml中创建了一个画布,如下所示 (* create document *) let document = Dom_html.window##document (* function to create canvas *) let create_canvas () = let canvas = Dom_html.createCanvas document in canvas##width <- 500; canvas##height <- 500; canv

我在js_of_ocaml中创建了一个画布,如下所示

(* create document *) 
let document = Dom_html.window##document

(* function to create canvas *)
let create_canvas () =
let canvas = Dom_html.createCanvas document in
canvas##width  <- 500;
canvas##height <- 500;
canvas

(* create canvas *)
let canvas = create_canvas ()

let start _ =
  let main = get_main () in 
  Dom.appendChild main canvas;
  Js._false in

Dom_html.window##onload <- Dom_html.handler start
(*创建文档*)
让document=Dom_html.window##document
(*创建画布的函数*)
让我们创建画布()=
将canvas=Dom_html.createCanvas文档放入

canvas##width您可以将画布放入宽度小于画布宽度的div中。检查以下代码:

module Html = Dom_html 

let doc = Html.window##document

let create_div () = 
   let div = Html.createDiv doc in 
   div##style##width <- Js.string "500px";
   div##style##overflowX <- Js.string "scroll";
   div 


let create_canvas () =
   let canvas = Dom_html.createCanvas document in
   canvas##width  <- 900;
   canvas##height <- 900;
   canvas

let start _ =
  let main = get_main () in 
  let wrapper = create_div () in 
  let canvas = create_canvas () in 
  Dom.appendChild wrapper canvas; 
  Dom.appendChild main wrapper;
  Js._false in

Dom_html.window##onload <- Dom_html.handler start
module Html=Dom\u Html
让doc=Html.window##文档
让我们创建_div()=
将div=Html.createDiv文件放入
div##style##width