问题标签 [paperjs]

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 回答
2588 浏览

javascript - 使用 easelJs 或 KineticJs 创建动态矩形/框

嗨,我正在寻找使用 JavaScript 制作平面图编辑器(类似于 MsPaint)。我已将EaselJSKinetiJS列为我的首选库。

我想知道如何使用这些库创建一个动态矩形框/线。我打算通过单击鼠标并拖动它来绘制一个矩形(同时按住鼠标按钮)。因此,矩形的大小将取决于鼠标拖动的距离。

任何帮助将不胜感激。如果有人觉得像fabrisJspaperJs这样的任何其他库会是更好的选择,那么我也对这些库中的解决方案持开放态度。

0 投票
2 回答
1534 浏览

text - Paperjs 写文字

我试图了解 Paperjs 是如何工作的,我想知道是否可以编写文本向量,如果可以,如何?

在此之前我尝试过 Raphael.js,我几乎对它感到满意,但由于某些原因,Paperjs 似乎更符合(跨)浏览器,对吧?

一些例子会很好!

感谢您的回答。

0 投票
1 回答
908 浏览

javascript - Paper.js 在 chrome 中给出错误

可能重复:
XMLHttpRequest Origin null 不允许访问-控制-访问-允许文件:/// 到文件:///(无服务器)

当我使用 paper.js 时,我在 Google chrome 中收到此错误。即使我从我的 js 文件中删除了我的所有代码,它也会给出错误。刚开始用paperjs,所以没有得到什么是错的

未捕获的错误:NETWORK_ERR:XMLHttpRequest 异常 101

在 demo.js 文件中有一些小代码后,又出现了一个错误:XMLHttpRequest cannot load file:///E:/​​Shruti/Remote%20Triggering/demo/js/demo.js。仅 HTTP 支持跨源请求。

0 投票
2 回答
7718 浏览

javascript - 从 SVG 创建 Paper.js PathItem

免责声明:这是我第一种处理矢量图形的方法;)

我正在编写一个网络应用程序,用户上传一些图像(以撰写绘图),并且他应该上传一个矢量图像(SVG)作为“掩码”。

我正在使用Paper.js库。

所以,我的目标是阅读 SVG 并创建一个 paper.js PathItem来表示它(然后添加填充颜色,无论如何)。

我尝试了一个简单的形状:

在此处输入图像描述

在 SVG 中看起来像:

处理这种形状真的很容易,将points字符串转换为数组,创建路径并.add()为每个元素调用。

当形状不仅仅是线条时,问题就来了,例如:

在此处输入图像描述

我真的不知道如何将弯曲部分翻译成 paper.js 命令!SVG 包含这样的结构:

我没有运气读过W3C svg 转换,我真的不知道如何翻译这M 74.89,73.117 H 34.605 c -11.32,0 -20.497,-9.177 -20.497,-20.497 v -5.695 c 0,-11.32 9.177,-20.497 20.497,-20.497 H 74.89部分。

任何想法?

0 投票
2 回答
2423 浏览

javascript - 从外部文件运行 PaperScript/JavaScript 不起作用

我正在探索 Paper.js 库。本教程中的第一个代码示例运行良好。但是,当我将内联 javascript 移动到外部文件时,就像在第二个代码片段中一样,它会停止在屏幕上显示任何内容。在 myScript.js 中,我尝试了

并使用 jQuery

没有成功。我忘记了什么?谢谢你的帮助

0 投票
3 回答
1688 浏览

javascript - 我可以在 paper.js 库中换行吗

我试图了解是否有办法在 paper.js 文本项中换行( \n ):http: //paperjs.org/reference/textitem

也许有办法以某种方式将其装箱?我需要它在正方形的边缘划线。

0 投票
1 回答
1792 浏览

javascript - Paper.js 垫片配置 Require.js

我正在尝试初始化应用程序,但似乎无法让纸质 js 正确加载到我的脚本中。我使用 require.js 作为我的 AMD 加载程序,并尝试使用 shim 模块加载纸质 js。

这是我的代码:

第一个警报工作正常,(下划线)意味着它加载正常,但我似乎无法弄清楚如何让 paper.js 正常工作。

任何帮助将不胜感激。

0 投票
2 回答
1045 浏览

paperjs - 同一个paperscope中的多个脚本/paperscript

我从 paper.js 开始。我喜欢这样一个事实,即它引入了具有文本/纸质脚本 mime 类型的脚本的可能性,该脚本在其范围内运行。但是,脚本很快就会变大,因此我希望能够将其分成多个脚本以提高可读性。我以为我可以添加多个脚本标签并让它们都在同一范围内运行,但显然情况并非如此。

两个脚本都已加载并运行,但第二个脚本似乎不在论文范围内。

我在这里设置了一个例子:http: //barbata.nl/SO/Maps/这个例子有一些代码,但我会指出重要的部分。

它包含两个paperscript:

  • Maps.js 是主脚本,它对图像进行光栅化并允许移动它。您可以忽略此脚本中的代码,因为到目前为止它运行良好。

  • Zoom.js 是我想在其中隔离缩放功能的脚本。它使用 jq.mobi 来捕获鼠标的滚轮,因为 Paper.js 似乎没有该事件。然后它将其转换为对 onMouseScroll 的调用,类似于 Paper 的做法。

到现在为止还挺好。实际问题出现在 zoom.js 中的zoomInand函数上。zoomOut

如果我明确使用纸张对象来引用我想要缩放的视图,它会起作用:

但是当我删除paper并仅引用视图时它会失败:

这让我感到惊讶,因为我预计脚本是 Paperscript,在 Paperscope 中运行。如果我将此代码放在 Maps.js 中,它工作正常,所以看起来虽然 zoom.js 是由 Paper.js 加载的(浏览器中的开发人员工具确认了这一点),但它并没有在 Paperscope 中运行。

我的问题是:我的发现正确吗?难道我做错了什么?将 Paper.js 应用程序划分为多个单元以提高可读性的正确方法是什么?

当然我可以让它运行,但我想确保我做对了。

0 投票
3 回答
982 浏览

javascript - 动态加载脚本会改变其行为

我想paperjs在按下按钮打开动画后加载,但如果在页面加载后加载纸张,paperscript 似乎不起作用。

如果您注释掉setTimeout并取消注释,direct $.getScript-paperjs 将触发alert('hi'). 我不明白。

我在 Windows 7 x64 上使用 Chrome 23.0.1271.97 m。有人知道这里发生了什么吗?

0 投票
2 回答
5987 浏览

javascript - 擦除 paper.js 中的路径?

我基本上想创建一个新路径,将画布 globalCompositeOperation 设置为“destination-out”。这可能吗?如果是这样,怎么做?

我注意到 Item 有一个 blendMode 属性:http://paperjs.org/reference/item#blendmode,但尝试不同的值并不能提供预期的效果。