问题标签 [node-canvas]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1995 浏览

javascript - 节点画布/Resemble.js 错误:给定的图像在加载时未完成加载

我正在尝试在节点中使用Resemble.js 。我在安装 canvas/cairo 时遇到了一些麻烦(与 OS X Mavericks/XQuarts 和 Homebrew 的混合有关),但最终还是到了那里。

走得很远,但我遇到了这个问题。

导致此错误:

我对节点很陌生,所以我看不到图像是如何加载的。这是一个本地文件,我在读取完成的回调中处理它(或者我认为)。

稍微挖掘一下让我认为这是在阅读 jpg 文件时画布中的一个问题,但我很难理解细节。我发现了这个问题,看起来非常相似,但我看不出如何将其转换为我的情况。

有人可以解释我如何解决这个问题以及我做错了什么吗?

0 投票
1 回答
2119 浏览

javascript - 有没有一种成功的方法来销毁 Buffer 实例并释放 NodeJS Canvas 中使用的内存?

尝试了许多方法来强制 GC 清理内存但没有成功。最重要的是:

此例程中出现问题:

0 投票
1 回答
312 浏览

macos - Node-Canvas Cairo 构建错误

我从源代码在 OSX 上安装 cairo 时遇到错误。我正在关注本指南:https ://github.com/Automattic/node-canvas/wiki/Installation---OSX 。我在谷歌(https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF -8#sourceid=chrome-psyapi2&ie=UTF-8&q=%22x86_64-apple-darwin14.0.0-pkg-config%3a%20file%20exists%22)我不知道如何描述它,然后显示输出:

0 投票
2 回答
1780 浏览

node.js - Node.js stream.on('end'... 不使文件可读

我试图抓住这样写画布流的完成:

但是当我尝试加载out_fs子功能时

错误:给定的图像尚未完成加载

在这一行:

http://nodejs.org/api/stream.html#stream_event_end

但是在写入流之后,我看不到任何其他方法可以继续控制流。如果我让整个父函数返回,那么该文件似乎是可读的。我尝试将我的子函数包装在 中setImmediate(),但这似乎只是间歇性地工作。

捕获写入流的最终可用最终结果的最终方法是什么?

node-canvas 文档声称该end事件标志着文件的最终写入:https ://www.npmjs.com/package/canvas#canvaspngstream

但是,如果您立即尝试使用它,则会产生上述错误。

`finish' 似乎根本没有实现。

0 投票
2 回答
1705 浏览

node.js - 如何使用 MSVC10 编译器在 x64 窗口上的节点画布中启用 jpeg 支持?

我需要在 nodejs 服务器端渲染 jpeg 图像。我使用以下构建说明安装画布 npm 模块:https ://github.com/Automattic/node-canvas/wiki/Installation---Windows 我有 C:\libjpeg-turbo\,正如手册中提到的那样。如果我做:

npm 安装画布

那么这段代码不会启动onload:

(它适用于 .png 数据)。如果我在命令行中指定 --with-jpeg,则 MSVC 会抱怨缺少 libjpeg.h。在这个 npm 使用 msvc 项目删除文件之后,我无法自己设置路径(是否可以关闭此清理?)

那么如何为支持 jpeg 的 windows 构建画布呢?在网上找到有关此主题的问题但没有答案。

0 投票
3 回答
5754 浏览

node.js - 将 HTML Canvas/WebGL 动画服务器端录制到视频中的最佳方法?

我有一组可以在 Canvas (fabric.js) 或 WebGL (three.js) 中制作的动画。我需要通过脚本在服务器端自动记录它们并输出视频文件。

动画包括:

  1. 图片
  2. 视频(带音频)
  3. 其他动画/效果

在过去的几个月里,我对此进行了很多研究。

结果
1.使用 PhantomJS + FFMPEG
在无头浏览器(PhantomJS)上运行 HTML Canvas 动画并使用 FFMPEG 录制。这里的问题是 PhantomJS 既不支持 WebGL 也不支持 Video 元素。 http://phantomjs.org/supported-web-standards.html

2.使用 Websockets 使用 DataURL 将数据发送回服务器
这里再次,我们需要在浏览器上运行动画(我们不能,因为我们必须这样做服务器上的一切)。

3.使用 node-canvas
这是 TJ Holowaychuk 的一个库,它允许在 Node.js 上渲染 HTML Canvas。但它有其自身的局限性,而且我还没有真正探索过这个领域。(如果有人可以更多地了解这个图书馆)

如果有人以前做过或可以指导我到有用的地方。
我们需要做的就是使用一些数据来创建动画并将其录制到视频中,一切都在服务器端。

0 投票
2 回答
16861 浏览

node.js - 节点画布:使用自定义字体

我想知道如何在 node-canvas 中使用自定义字体。

这是我的尝试,但到目前为止它不起作用:

在浏览器中呈现时,字体和大小保持不变。

字体文件已正确加载。否则会抛出异常。

有趣的是,当我做 ctx.font = 'bold 40 someGibberish'; 字体大小应用正确。

0 投票
0 回答
533 浏览

node.js - 如何让字体名称传递到画布

我想知道如何获取我安装的字体的名称以传递给 HTML5 画布上下文以设置字体。

我正在使用节点画布,并尝试将字体设置为unleanred

下载并安装字体后,我尝试这样设置字体:

但字体在输出中保持不变。当我下载一些其他字体时,说drafting并安装它,上面的工作。

所以我认为问题在于我使用了错误的名称来引用字体。如何获得正确的名称和类型?

0 投票
0 回答
141 浏览

jquery - 在 Node 上绘制 jCanvas 图像

所以我在 Windows 上,我遵循了在节点上运行 jCanvas 的示例:https ://github.com/robertjustjones/jcanvas-in-node

而且我可以使示例正常工作,但是当我尝试使用 jCanvas 的绘制图像功能时遇到问题,例如:

我遇到的问题是我返回了一些数据:base 64 encoding of just a blank canvas。

更奇怪的是,在 Linux 上运行 Node 时,我只是undefined从以下位置返回:

0 投票
2 回答
1506 浏览

fabricjs - 为 AWS Lambda 构建节点画布

我是 Linux 和节点菜鸟。我正在尝试在 AWS Lambda 中运行 FabricJS(需要节点画布)。我已经能够按照说明在 AWS Linux EC2 上启动和运行,但是,Lambda 让我束手无策。有人对如何为 AW Lambda 进行编译有任何提示或指示吗?