我需要画一个非矩形
使用线条塑造形状。然后,使用三种颜色向形状添加垂直线性渐变
停下来
我能画形状,但不能得到梯度。有人能帮我吗
这是我的密码
<!DOCTYPE html>
<html>
<body>
<canvas id="myCanvas" width="200" height="200" style="border:1px solid #d3d3d3;">
Your browser does not support the HTML5 c
我有一个Base64映像,它是我映像的一部分。如果我使用图像的原始宽度和高度裁剪图像的右侧部分,它将按预期工作。但是,如果我缩小该图像,但使用新的缩小高度和宽度,裁剪将无法按预期工作。我也模拟了同样的情况。说:ctx.drawImage(image,sx,sy,sWidth,sHeight,dx,dy,dWidth,dHeight)
其中前一部分表示源图像
要使作物彼此相似,需要保持sx、sy、sWidth和SHIGHT。所以你得到:
ctx.drawImage(img,0,0,179,201,
在这个画布脚本中,我试图解决两个问题,以获得我想要的图像外观。绿色仅用于演示。最终它将是白色的,带有灰色的阴影
1)我想在图像获得绿色边框后为其添加灰色阴影
2)我希望绿色边框的角是方形的,而不是圆形的
var c=document.getElementById(“画布”),
ctx=c.getContext(“2d”),
乳白色α=255,
img=新图像();
img.onload=函数(){
ctx.shadowColor='#0f0';//用于演示的绿色
ctx.shadowBlur
我正在尝试一个需要将图像分割成动态x、y部分并处理每个部分的应用程序
例如:如果图像的尺寸为500 X 800,其中宽度为500,高度为800。
我必须使用[32,32]来破坏图像:
xTiles=Math.ceil(500/32)=16;
yTiles=Math.ceil(800/32)=25
因此,瓷砖的数量为16 X 25=400。换句话说,整个图像被分成400个部分
现在,我需要用一些边框显示每个瓷砖,还需要分离纹理,以便可以分别处理它们
我不知道我在哪里可以保存这些400瓷砖纹理,保存
我想以特定的帧速率从HTML元素录制视频
我将CanvasCaptureMediaStream与canvas.captureStream(fps)一起使用,并且还可以通过const track=stream.getVideoTracks()[0]访问视频曲目,因此我创建了track.requestFrame(),以便通过MediaRecorder将其写入输出视频缓冲区
我希望一次精确地捕获一帧,然后更改画布内容。更改画布内容可能需要一些时间(因为需要加载图像等)。因此,我无法实时捕获画布。
画布
我正在用画布建立一个实验性的html5网站。
我画了3个圆圈,每个圆圈都挨着一个,我想知道的是如何选择它们
在某种程度上,我希望它们成为链接。不是标签,因为所有东西都将使用javascript创建
类似于kinetic JS:,但没有额外的库
我发现了一些使用ghost画布和上下文的脚本,但这些示例是用于拖动和填充的。我只想能够选择我的形状并执行一些代码
谢谢大家! 我想您可能需要研究IsPointInPath()方法。它将帮助您确定鼠标是否单击画布对象
请参见如果您擅长xml,我建议您使用ca
最近在我的项目中,当用户在服务器上上传图像时,图像将在canvas元素上动态预览。现在我想裁剪其中的一部分。我使用过jcrop插件,但不知道如何获得裁剪区域。对于jcrop使用方面的任何小帮助,我也非常感谢
提前感谢如果您使用jcrop,您就不必关心画布内容
只需创建一个这样的图像
<img src="myimage.jpg" id="cropbox" />
官方网站上的选项和教程的完整列表:
编辑:
如果要裁剪画布,则不应使用JCrop,而是:
drawImage(image,
如何在HTML5中的两个或多个画布之间移动和放置对象,这意味着我在一个画布中有一个图像,我想将该图像移动到另一个画布。
当我在HTML5中使用两个或多个DIV时,它不会出现任何问题,但当我使用canvas时,它不会出现。帮助我
$function{
$draggable.draggable;
$droppable,droppable{
drop:函数事件,用户界面{
美元这个
.addClass ui状态突出显示
.找p
.html已删除;
}
};
};
可拖动{宽度:100px;高度:100
我想做的是,每当我要拖动和调整图像的大小,它将保存的位置,或它仍将保留,如果我要刷新页面。如何解决此问题?在刷新页面之前调用此命令时,将您的位置存储在中
localStorage属性允许您访问本地存储对象。
本地存储类似于会话存储。唯一的区别是
虽然localStorage中存储的数据没有过期时间,但是
浏览会话时,存储在sessionStorage中的内容将被清除
结束,即浏览器关闭时结束
然后在加载页面时,通过从localStorage
var data = localStorage.get
我目前正在尝试使用一些脚本从文件柜中获取图像,将url推送到HTML画布,检索宽度/高度(插入自定义字段并重新调整原始图像的大小)
在客户端脚本中,上面的代码是正常的-没有问题
然而,我想知道的是
如何在没有用户交互的情况下,将已调整大小的图像作为文件对象(N/File)抓取并保存到文件柜中
是否有一种从服务器端上下文使用HTML画布的方法
对于#1,这似乎很困难,因为N/文件模块对ClientScript不可用,所以可能需要推送到SuiteLet
到目前为止,我的一些代码
var canvas
我试图在HTML5画布上画两条黑线:
JSFiddle:
Javascript:
var canvas = document.createElement('canvas');
canvas.height = 150;
canvas.width = 150;
var canvasContext = canvas.getContext('2d');
canvasContext.beginPath();
// Draw the red line.
canvasContext.strokeStyle
我正在基于画布创建一个enyo控件。它应该捕获鼠标或手指事件,并将它们绘制到上面。然而,当我在画布上画画时,它只画了一小部分
看看它,因为它包含所有相关的代码
enyo.kind({
name: "SignatureControl",
kind: "enyo.Canvas",
recording: false,
points: [],
handlers: {
ondown: "startRecord",
onmove: "record",
onup
在easeljs中tick函数的用途是什么。什么时候使用?它对舞台到底有什么作用?确切的格式是什么?我在不同的教程中看到了不同的调用方式
滴答声和滴答声之间有什么区别?舞台(和其他显示对象)上的滴答声功能可推进所有子动画。像MovieClip和Sprite这样的东西都有基于帧的动画,只要勾选它们,它们就会在下一帧中前进。您可以在后台关闭updateNotick,以防止出现这种情况
Ticker是一个管理实际心跳的实用程序类。它是一个完全可选的实用程序,但它会创建一个间隔(使用超时或request
有人能帮我看看这个吗,我正试图在画布上画线,它在Edge中工作,但在Firefox和Chrome中,画布变黑,左上角有一张皱眉的脸。代码:
var cellwitdh = StaticData.SelectedTileSheet.getCellWidth();
var col = Math.floor(_gridCVS.width / cellwitdh);
var ctx = this._gridCVS.getContext2d();
for (i in 0...col)
{
ctx.
我正在使用konvajs()创建一个网页,用户可以在其中将家具图像拖放到具有背景图像的画布中。然后,用户可以单击提交按钮,我调用stage.toDataUrl(),将其存储在文本区域中并保存到数据库。除了加载base 64字符串时,所有操作都正常,我的背景图像丢失,但所有其他拖放图像都在那里。下面是我的详细代码。请帮忙
var stage = new Konva.Stage({
container: 'container',
我有三个按钮;一个用于播放当前帧标签中的动画,另外两个按钮用于跳转到前一帧标签或下一帧标签并停止。两个按钮似乎都不起作用。我不太精通画布中的javascript,我正在尝试将我的Actionscript swf文件转换为HTML5画布文件
this.stop();
this.play_controls.play_btn.addEventListener("click", play_btn.bind(this));
this.play_controls.back_btn.ad
我想在画布上显示多个globalCompositeOperation结果。我通过以下方式编写代码
您的浏览器不支持HTML5
为什么我们需要恢复临时上下文?
为什么在不恢复上下文的情况下最后一个结果是正确的?
请在
<canvas id = "tempCanvas" width = "400" height = "100" style = "display: none;">
</canvas>
<script>
var context = docu
我建立了一个简单的科赫桥--
但是没有骰子
代码来自基思·彼得斯的《玩混沌》
代码确实在本地工作。在本地,它是这样组织的:HTML文件显式引用2.js文件。第一个变量chaos.js包含变量chaos的赋值。第二个,koch.js,包含分配给window.onload的函数表达式
这对我来说更像是一个JSFIDLE练习。如何开始调试为什么在JSFIDLE中看到nada
谢谢你
PS:stackoverflow告诉我到jsfiddle.net的链接必须附带代码,下面是代码-
var chaos =
功能牵引艺术{
var data = {
labels: ["January", "February", "March", "April", "May", "June", "July"],
datasets: [
{
label: "My First dataset",
fillColor: "rgba(220,220,220,0.5)",
strokeColor: "rgba(220,220
我可以将绘图js库与NativeScript一起使用吗
图形库示例
注:
有些人使用WEBGL
有些使用html画布
有些人很可能使用SVG,但如果可以的话,我不会使用,因为性能可能会有问题,因为您需要在webview中实现它们,而不是作为本机元素实现它们。很可能的话,我不会使用它们,因为在您需要实现它们时,性能可能会有问题在webview内部,而不是作为本机元素,您可以使用它们。我假设它们都以某种方式与浏览器/DOM绑定,就像@MarekMaszay所说的那样,你最终会把它们放在一个网络
我可以看到有很多方法可以将文件上传到google colab进行处理,但是如果有一种方法可以让用户画一张简单的图像来测试对某些系统的视觉识别,也就是MNIST数字,给用户一个28x28的网格来画一个数字,看看模型预测的数字是什么,那就太好了
有很多例子说明了如何在codepen和一些预先制作的js LIB上实现这类功能,以便能够在画布上创建简单的像素编辑器组件,但是有没有人找到一种方法可以让您在colab文档上获得类似的内容,允许用户输入数据,然后从绘制的图像中提取数据?我给出了这样做的要点
所以我有我的刷子和橡皮擦工具。我遇到的问题是,起初我可以在画布上绘制草图,但在我切换到橡皮擦后,如果我再次选择画笔,它将停留在橡皮擦工具上。我尝试使用if-else,但无法使其工作
tool = new brushTool();
$('#brushTool').click(brushTool);
function brushTool() {
var tool = this;
this.mouseStart = false;
$('#eraserTool').click(eras
我们可以使用fabric.js将图像从用户系统(桌面/任何文件夹)复制(Ctrl+C)并粘贴(Ctrl+V)到画布上吗。我在画布中看到了复制粘贴程序,我在搜索谷歌时发现了这个程序,但没有找到任何桌面到画布的相关示例。下面是用于复制和粘贴的代码段
function onKeyDownHandler(event) {
//event.preventDefault();
var key;
if(window.event){
key = window.event
我有一些值需要绘制成2D HTML5。所有值都在[-1,+1]范围内,因此我决定在绘制之前在画布2D上下文上设置变换(缩放+置换):
var scale = Math.min(canvas.width, canvas.height) / 2;
ctx.setTransform(scale, 0, 0, scale, canvas.width / 2, canvas.height / 2);
每个值都是使用圆弧方法绘制的,但由于我需要一个固定的圆弧半径(无论使用何种比例),因此我将半径除以当前比
我试图上传一个本地图像到konvajs舞台,然后删除图像中不需要的部分。我的上传工作正常,绘制/擦除工作正常,但我无法擦除上传的图像。我只能擦除图像上的绘制线
var stage = new Konva.Stage({
container: 'container',
width: width,
height: height
});
我创建了一个JSFIDLE:
我读了两篇类似于我的stackoverflow的帖子,上面有一个圆形的橡皮擦尖,但我仍然不知道
我似乎无法让碰撞检测与地板阵列一起工作?我似乎在ballMovement功能中遇到了问题。
球直接从阵列形成的矩形中落下
地面阵列(问题)
碰撞检测
重力
var帆布、ctx、集装箱;
canvas=document.createElement('canvas');
ctx=canvas.getContext(“2d”);
var球;
var message=“Helloworld”;
//速度x
var vx=2.0;
//速度y-随机集
变量vy;
var重力=0.5;
var反弹=0.
我在这个网站和西蒙·萨里斯的[examples][1]上读了一些很好的帖子,但我遇到了麻烦。我正在修改其中一个示例以拖放我上传的图像。它适用于第一个图像,但不适用于第二个图像。有人见过使用FileReader将文件上载到画布,然后在画布上拖放的例子吗?有两个不同的问题
使用拖放将文件上载到画布
在画布上拖放图像
谢谢Mikko,我没有将文件拖到画布上,而是尝试使用fileReader上传的源代码:img.src=event.target.result;并替换您提到的拖放教程中的源代码:
有人能告诉我如何将html内容放在画布上吗?如果我们能做到这一点,这些元素的属性和事件是否有效,以及我在画布上绘制的动画。来源:
你不能只是把HTML画进画布。相反,您需要使用
包含要呈现的内容的SVG图像。绘制HTML
内容,则使用包含HTML的元素
将SVG图像绘制到画布中
它建议您遵循以下步骤:
这里唯一真正棘手的事情可能是
夸大是为图像创建SVG。你需要做的就是
为SVG创建一个包含XML的字符串并构造一个Blob
包括以下几个部分
blob的MIME媒体类型应为“image/svg+x
我正在尝试创建水平圆柱体。我发现下面的链接是用来创建垂直圆柱体的
有人能告诉我创建水平圆柱体的更改吗 通常,如果要旋转图形,可以使用变换
变换移动、旋转(和缩放)画布,而无需重新编码所需的图形
演示:
此变换将原始图形旋转90度:
drawRotatedCylinder(100,100,50,30,90);
function drawRotatedCylinder(x,y,w,h,degreeAngle){
// save the context in its unrotated st
当我定义一个圆时,圆的实际大小是多少(以像素为单位)?笔划内外?例如,如果我定义以下圆:
var circle = new Kinetic.Circle({
x: stage.width()/2,
y: stage.height()/2,
radius: 600,
stroke: 'black',
strokeWidth: 1000,
draggable:true
});
我希望半径为1600,内半径为600,但这不是我得到的结果,因
假设我在HTML5画布上有一个圆(一个弧)。我可以这样填充它:
ctx.arc(100, 100, 50, 0, 2 * Math.PI);
ctx.fill();
这是一种享受。然而,如何才能填补相反的领域?现在它是带黑色圆圈的白色,但我希望它与下图的线条一致(白色是背景色,黑色是填充色):
我知道我可以用黑色背景画一个白色的圆圈,但是背景可以是任何东西(所有的东西以前都在那里画过,所以仅仅交换颜色是不可能的)
另一件事是,不应该填充整个画布,而应该填充一个正方形和一个圆圈
我想买一个,但
我试图在emulator Nexus 5中自动化移动web测试,但我无法单击文本框并输入登录名和密码。登录页面位于html画布中。
我尝试使用by.id/xpath,但仍然无法工作。
我正在使用Eclipse和Java
请帮忙
我在Esclipse试过这两个
//新操作(driver).moveToElement(driver.findElement(By.xpath(“//div[@id='gameDiv'])),i,j.click().perform()
新操作(driver).moveTo
我想在图纸中缩放一个轴。正如其他人所指出的那样,天真地这样做也会在笔划路径时缩放线宽。其他解决方案还指出,可以执行以下操作以避免扭曲线宽:
ctx.save();
ctx.scale(1, 2);
ctx.beginPath();
// draw shape
ctx.restore();
ctx.stroke();
不幸的是,我还需要一个复杂的剪辑区域,restore()会破坏剪辑区域。我试着简单地恢复比例:
ctx.save();
ctx.scale(1, 2);
ctx.beginPath
我正在开发一个应用程序,其中用户出现并看到一个空白区域(div或canvas或其他什么,下面我们称之为mycanvas)。现在他从外面(一个div)拖动一些图像,并将它们放到我的画布上。他还可以调整它们的大小。而且,他还可以用铅笔和带有擦除功能的颜色在我的画布上画东西。现在,根据我到目前为止的研究,我发现绘图部分是纯HTML5画布。所以,没问题。但我不确定他是否可以将图像从外部div/canvas拖放到mycanvas。请告诉我如何在单个区域中实现所有三个功能(从外部拖放、用铅笔绘制、调整图像大
我有一个代码,结果是一支铅笔有淡入淡出的效果。我是根据例子做的。我现在正在一个移动网站上使用它和其他重型设备(WebRTC)。问题是,该代码使用计时器(setInterval(loop,1000/60);)来创建淡入淡出效果,这似乎相当沉重
在HTML5/Canvas中有没有另一种(更轻的)方法可以使铅笔具有淡入淡出效果?看起来您已经完成了一个性能步骤,将框架图形移动到一个定时循环,而不是在移动处理程序中绘制
现在,您可以使用requestAnimationFrame(RAF)而不是setInt
我在Kineticjs中有一个层,其中有更多的形状,请参见附图:
我们可以将图层内容分为两部分:
1.对象(矩形)
2.可以缩放对象的选择节点(4个角)和可以旋转对象的旋转标志
我在层拖动上有事件处理程序(因为我需要同时移动所有元素),在缩放节点和旋转符号上也有事件处理程序。问题在于,当触发节点和旋转符号的拖动(结束、开始、移动)时,也会自动触发图层拖动事件
我尝试设置层。设置监听(false)然后返回到真,但没有结果。
在拖动缩放节点和旋转符号时,如何使层的事件不被触发
[编辑]
这里有一个U
使用kineticjs生成地图(通过画布生成svg路径)
使用kineticjs插件,地图生成成功
鼠标悬停时需要突出显示图层背景色吗
但我可以在鼠标悬停时显示警告框
jsfiddle.net/prasadraja07/dqhzjnut/4/
您的节点位于层内。因此,您需要重新绘制“图层”:
pathnorthen.on('mouseout', function () {
//alert("mouse out");
this.fill('#00dddd'
我想知道如何使用kinetic js将画布中的文本转换为大写
以下是我的图形和文本画布代码:
top_text_val = "INSERT TOP TEXT"; //Default top text on meme
bottom_text_val = "INSERT BOTTOM TEXT"; //Default bottom text on meme
var stage = new Kinetic.Stage({
container: 'meme-img',
wid
我正在用HTML5画布编程一个2D游戏。因此,渲染所有对象和帧不会花费很多时间
我想问一下2D和3D游戏
假设我对其中一个对象进行了一次或多次更改。当我只需要重新绘制该对象时,是否应该渲染所有对象?渲染所有对象和帧是唯一的选项吗?如果游戏是3D的,渲染不会花费很多时间吗?特别是慢速互联网连接
因此[性能]仅取决于用户的浏览器和计算机
如果您正在制作一个同时在多台计算机上玩的游戏,那么连接速度很重要。除此之外,连接速度与最初下载游戏资源无关。更好的CPU/GPU、本地计算机上的内存将极大地影响应用
使用,如何链接两个可拖动层,使它们一起移动。
圆圈和文档图标是两个不同的层。我怎么买
a在同一层上绘制或b一起移动
// document
.drawArc({
layer: true,
groups: ['document'],
fillStyle: 'yellow',
x: 100, y: 250,
radius: 50
})
.drawImage({
groups: ['doc
我创建了HTML5画布并添加了矩形电影(Movie1)
然后我为电影1制作了动画
但当我试图停止动画时,我不知道JS是如何工作的
AS3行动:框架1
trace (this.Movie1);
this.Movie1.gotoAndStop(1);
我需要如何在JS上编写它
我用不同的方法检查,但都不起作用
this.Movie1.gotoAndStop(1);
Movie1.gotoAndStop(1);
我打开控制台,看到
SCRIPT5007:无法获取未定义或空引用的属性“gotoAnd
我已经用chart.js创建了一个图表,现在我需要根据两个不同的数据集在图例中以不同的方式显示数据
如何以经典矩形/填充样式显示第一个数据集“低/高范围限制”,以点样式显示数据集“患者结果”
(奖励:目前,我正在正确地显示第二个数据集。我还想用纯色“钢蓝”完全填充圆圈,而不是透明。)
(我会提供一张图片,但我需要至少10个声誉来发布它们。)
.chart容器{宽度:550px}
var context=document.getElementById('myChart');
var myChar
我想创建一个组,该组将包含图像和文本的组合,并将作为一个组进行操作,但是当我这样做时:
我不能移动那群人。要使其正常工作,我需要首先将图像和文本添加到画布,然后使用这些图像和文本创建一个组,然后删除单独添加的图像和文本
我做错了什么?最新版本的fabric.js似乎已经修复了这一问题。我能够让它工作:
我这样做是为了添加从计数器脚本动态生成的部分文本。
此代码将添加由图像和文本组成的组。文本设置为位于图像上方,在将文本添加到画布时,每次单击按钮,文本都会自动更新。因此,当您第一次单击按钮时,文
我有一个简单的sockets服务器(socket.io),通过它发送图像流,当在画布中设置像素数据时(使用putImageData),性能太低。我试着使用以下方法
阴影画布画出屏幕,然后回到主画布上
类型1)使用drawImage渲染屏幕外画布
类型2)使用屏幕外画布上的getImageData和主画布上的putImageData
类型3)使用屏幕外的createImageData并通过putImageData进行设置
在动画帧更新期间,使用requestAnimFrame更新UI
我还
我通过添加文本而不是图像来更改图像。
我想波浪是垂直向下的。我知道有一点编辑,但我尝试了不同的选择,但没有成功
var选项={
期间:100,
挤压:0,
波长:40,
振幅:30,
底纹:300,
fps:30
}
var ca=document.getElementById('canvas');
var ctx=ca.getContext('2d');
ctx.canvas.width=400;
ctx.canvas.height=150;
ctx.font='bold 45pt Aria
我有这个代码(从网上偷来的):
这在一定程度上是可行的。画布的宽度和高度设置为图像的大小,但仅显示图像的左上角-它似乎被拉伸,以适合分配给画布的所有空间(足以显示整个图像-615px 615px)
如果我添加一个
我使用的是Chrome浏览器,但在Firefox中看起来是一样的
提前谢谢 几点想法:
在使用图像之前,使用图像的onload方法为图像提供足够的加载时间
如果要使用css调整画布的大小,请不要这样做,而是调整画布元素本身的大小
下面是一些示例代码:
var img=new Ima
你好,对不起,我的英语不好。我创建了一个循环“for”的对象,大约有200个对象在一个带有mouseover和mouseout的动态图像中。问题是,所有的物体都是好的,有了图像,问题是更多的东西不能很好地移动,我不知道为什么。不,给我一个javascript错误,只有一个警告图书馆。如果有任何人可以用鼠标检查一组有图像的对象
CREATE OBJECTS--->
for (var j=0;j<datos.length;j++){ //
iconos[j]= new ico
我想将Kinetic.Tween应用于HTML元素,比如。
有没有办法在kineticJS中获取元素
我尝试过使用getById和getByName,但没有成功
我有一个像这样的覆盖文本的图像
<div id="helplayer">
<img src='images/help.png' alt="help"/>
<div class="overlay">
<h1><i>Instructions<
我已经为我的问题准备了一份完整的报告-
对于棋盘游戏,我尝试在两侧使用jqueryui按钮,并将屏幕的其余部分分配给Pixi绘图区域
我发现一位Pixi.js开发人员提出了一个建议,可以自动缩放其子项,下面我将尝试实现它:
$(函数(){
var宽度=400;
var高度=400;
var比率=宽度/高度;
var scaleX=1,
scaleY=1,
offsetX=0,
offsetY=0,
oldX,oldY;
var app=新的PIXI.Application({
宽度:宽度,
在使用emscripten 2.0.8的大型项目的代码中,函数尝试检索特定画布的DOM元素的大小,以便进行初始化
double w=0, h=0;
emscripten_get_element_css_size(canvasCssSelector, &w, &h);
但是我用一个日志监控这些值,它们与我在浏览器中得到的大小根本不匹配。更令人困惑的是,当我调整窗口(和画布)的大小时,大小从未改变。它只是保持不变为300x150(可能是某个地方的代码初始化或默认值,但对于实际的DO
1 2 3 4 5 6 ...
下一页 最后一页 共 13 页