草庐IT

Canvas-EventSystem-Panel

全部标签

javascript - 如何在不模糊的情况下在 Canvas 上重绘调整大小?

当调整Canvas元素大小时(通过更改样式),我也想缩放Canvas绘制的图像。我不能只更改高度/宽度,因为这会导致Canvas自行清除,所以我这样做:创建一个临时Canvas元素将当前Canvas的图像绘制到临时Canvas上调整当前Canvas的大小将临时Canvas的图像绘制回当前Canvas,但缩放到新大小这会导致一些模糊-在多次调整大小后非常明显(例如:拖动以调整大小时)。我如何在不模糊的情况下做到这一点?编辑:关闭图像平滑(context.webkitImageSmoothingEnabled=false;)不会解决问题,它只是让它重新绘制越来越多的锯齿,直到图像在多次调整

javascript - 如何在 WebRtc 中流式传输 Canvas 元素?

我在搜索WebRtc时在GitHub上找到了这个很棒的项目:https://github.com/mexx91/basicVideoRTC两个摄像头之间的通信使用node.js效果很好。是否可以在流式传输getuserMedia之前在canvas元素中对其进行修改,从而流式传输该对象?谢谢 最佳答案 目前看来这在跨浏览器兼容的方式下是不可能的。但它可能在未来,您可以瞥见最近的Firefox浏览器实现的HTMLCanvasElement.captureStream接口(interface),参见https://developer.mo

html - 如何在 html5 canvas 中对齐文本?

HowcanIaligntextwithinahtml5canvastojustify"?在下面的代码中,文本可以左/右/居中对齐。我需要设置align="justify"。请提出建议如何做到这一点?HTML:JS:functioncallMe(){varcanvas=document.getElementById("MyCanvas");varctx=canvas.getContext("2d");vartxt="Welcometothenewhelloworldexample";cxt.font="10ptArial";cxt.textAlign="left";/*codetote

javascript - HTML Canvas,模糊绘制的多边形

我做了这个(运行下面的片段)varCanvas=document.getElementById('c');varctx=Canvas.getContext('2d');varresize=function(){Canvas.width=Canvas.clientWidth;Canvas.height=Canvas.clientHeight;};window.addEventListener('resize',resize);resize();varelements=[];varpresets={};presets.shard=function(x,y,s,random,color){r

CSS:在保持宽高比的同时使 Canvas 尽可能大

我有一个位于容器div中的Canvas元素。当用户从他的机器上选择一张图片时,这张图片应该显示在Canvas上。我希望Canvas尽可能大,但同时保持图像的纵横比。我既不知道图像的比例,也不知道容器div的大小,因为这与用户的屏幕/窗口大小有关。如果我将max-width和max-height设置为100%,如果所选图像小于容器,Canvas将不会填充容器。如果我设置宽度和高度而不是最大宽度和最大高度,则Canvas不会保持纵横比。有没有人知道如何解决这个问题? 最佳答案 如果您愿意使用JQuery(或常规JavaScript),那

javascript - 我写了一个 JavaScript 在 Canvas : "ฅ(*ΦωΦ*) ฅ" But the cat jumps weirdly 上移动一只猫

我创建了一个脚本,它使用HTML输入按钮在Canvas上移动一只猫。每次单击都会将猫沿单击的方向移动10个像素(moveUp();moveDown();moveLeft();moveRight();)。此脚本在前10-20次点击时工作正常,但随后猫最终跳来跳去或卡在一个地方。我不知道为什么它会这样。谁能帮忙?程序在jsfiddle上,你可以测试一下https://jsfiddle.net/rockmanxdi/h2sk2sjz/2/JavaScript代码如下:letsurface=document.getElementById("drawingArea");letctx=surfac

javascript - 如何在不更改像素值的情况下调整 Phaser 的 Canvas 大小?

我正在寻找一种方法来根据屏幕尺寸放大/缩小我的Phaser应用程序,同时保持比例(而不是按像素改变Canvas尺寸,如草图所示),我尝试了很多片段,但每个人都在寻找其他东西,这就是我正在寻找的东西(另外,下面屏幕“全屏”的代码适用于桌面但不适用于移动设备):vargame=newPhaser.Game(1100,600,Phaser.Canvas,"gameDiv");varmainState={init:function(){ game.renderer.renderSession.roundPixels=true; game.physics.startSystem(Phaser

javascript - 如何从复杂的 svg 正确生成 Canvas

我正在尝试从我的网站导出一个复杂的SVGblock(用c3生成)作为图像(无论是png、svg、pdf,此时我对任何解决它的方法持开放态度,尽管矢量格式会是理想的)。我已经尝试过html2canvas、canvg、jsPDF以及该帮派的所有酷child。问题是:我的一个情节都搞砸了。线变成区域,区域被反转,颜色被破坏,......你的名字。我离成为js专家很远。我刚到这里,正在寻找出路,请多多包涵。我不知道这是CSS问题还是什么。是的,我们确实在html后面有CSS。我的临时解决方案是使用jQuery.print.js调用我的div的打印。由于多种原因,这远非理想:没有bbox。它生成

javascript - 在 HTML Canvas 上绘制自相交多边形

我正在寻找一种方法来绘制带孔的自相交多边形,我正在使用HTMLCanvas元素。所以给定5个点,我想画下面的红色点。Thisquestionisessentiallythesamething.注意:我不想使用线交点和添加更多点来执行此操作,我将使用的实际路径将是弯曲的。 最佳答案 您不能在Canvas2D中使用单一路径绘制第一个五Angular星-那里使用的填充规则是奇偶数,并且Canvas使用非零填充形状strong>缠绕规则。我认为您需要计算内部五边形Angular的交点并单独填充它。为了实现您用作示例的绘图,您可以填充五Ang

html - "googlemaps"用html5 Canvas 拖动

我有一个大的html5Canvas(比屏幕大得多),我想实现“google-maps”拖动。我希望Canvas可以通过鼠标拖动,并且我希望每次拖动它时它只渲染我们在屏幕上可以看到的部分。有人有好主意吗? 最佳答案 我通过在Canvas元素上使用jQueryUI可拖动组件解决了这个问题。我将它封装在一个div中-将溢出设置为隐藏,并将Canvas设置为我需要的大小。很有魅力http://jqueryui.com/demos/draggable/ 关于html-"googlemaps"用ht