{"id":425,"date":"2011-06-21T14:39:22","date_gmt":"2011-06-21T12:39:22","guid":{"rendered":"http:\/\/www.capri-soft.de\/blog\/?p=425"},"modified":"2011-06-21T14:39:54","modified_gmt":"2011-06-21T12:39:54","slug":"html5-mit-canvas-malen","status":"publish","type":"post","link":"https:\/\/www.capri-soft.de\/blog\/?p=425","title":{"rendered":"HTML5: Mit Canvas malen"},"content":{"rendered":"<h1>Aufgabenstellung<\/h1>\n<p>In einem HTML 5 Canvas soll \u00fcber JavaScript-Events die Mausposition ausgelesen, und an dieser gemalt werden.<\/p>\n<h1>Ansatz<\/h1>\n<p>Verwendung der Events onmousedown, onmouseup, onmousemove des Canvas-Elements. Nutzung der clientX- und clientY-Eigenschaft<\/p>\n<h1>Pr\u00e4missen \/ Vorraussetzungen<\/h1>\n<p>Es wird ein aktueller Browser verwendet, der das HTML 5 Canvas-Element unterst\u00fctzt. <\/p>\n<h1>L\u00f6sung<\/h1>\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">&lt;html&gt;\r\n&lt;head&gt;\r\n&lt;script&gt;\r\n\tfunction draw() {\r\n\t\tvar canvas = document.getElementById(&quot;canvas&quot;);\r\n\t\tvar ctx = canvas.getContext(&quot;2d&quot;);\r\n\t\tctx.fillStyle = &quot;black&quot;;\r\n\t\tctx.beginPath();\r\n\t\tvar x;\r\n\t\tvar y;\r\n\t\tcanvas.onmousedown = function(e) {\r\n\t\t\tx = e.clientX;\r\n\t\t\ty = e.clientY;\r\n\t\t\tctx.moveTo(x, y);\r\n\t\t}\r\n\t\tcanvas.onmouseup = function(e) {\r\n\t\t\tx = null;\r\n\t\t\ty = null;\r\n\t\t}\r\n\t\tcanvas.onmousemove = function(e) {\r\n\t\t\tif (x == null || y == null) {\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tx = e.clientX;\r\n\t\t\ty = e.clientY;\r\n\t\t\tx -= canvas.offsetLeft;\r\n\t\t\ty -= canvas.offsetTop;\r\n\t\t\tctx.lineTo(x, y);\r\n\t\t\tctx.stroke();\r\n\t\t\tctx.moveTo(x, y);\r\n\t\t}\r\n\t};\r\n&lt;\/script&gt;\r\n&lt;\/head&gt;\r\n&lt;body onload=&quot;draw();&quot;&gt;\r\n\t&lt;canvas id=&quot;canvas&quot; width=&quot;300&quot; height=&quot;300&quot;\r\n\t\tstyle=&quot;border: 1px solid black;&quot;&gt;&lt;\/canvas&gt;\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<iframe src=\"http:\/\/www.facebook.com\/plugins\/like.php?href=https%3A%2F%2Fwww.capri-soft.de%2Fblog%2F%3Fp%3D425&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light\" scrolling=\"no\" frameborder=\"0\" allowTransparency=\"true\" style=\"border:none; overflow:hidden; width:450px;margin-top:5px;\"><\/iframe>","protected":false},"excerpt":{"rendered":"<p>Aufgabenstellung In einem HTML 5 Canvas soll \u00fcber JavaScript-Events die Mausposition ausgelesen, und an dieser gemalt werden. Ansatz Verwendung der Events onmousedown, onmouseup, onmousemove des Canvas-Elements. Nutzung der clientX- und clientY-Eigenschaft Pr\u00e4missen \/ Vorraussetzungen Es wird ein aktueller Browser verwendet, der das HTML 5 Canvas-Element unterst\u00fctzt. L\u00f6sung &lt;html&gt; &lt;head&gt; &lt;script&gt; function draw() { var canvas &hellip; <a href=\"https:\/\/www.capri-soft.de\/blog\/?p=425\" class=\"more-link\"><span class=\"screen-reader-text\">HTML5: Mit Canvas malen<\/span> weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[14],"tags":[],"class_list":["post-425","post","type-post","status-publish","format-standard","hentry","category-htmlcss"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4yGeN-6R","jetpack_likes_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts\/425","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=425"}],"version-history":[{"count":3,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts\/425\/revisions"}],"predecessor-version":[{"id":428,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=\/wp\/v2\/posts\/425\/revisions\/428"}],"wp:attachment":[{"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=425"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=425"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.capri-soft.de\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=425"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}