问题标签 [camanjs]

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

camanjs - CamanJS 中的撤消/重做功能?

嗨,我是 camanjs 的新手。

我用这段代码操作画布。

使用代码this.revert(); ,我可以把画布恢复到原来的状态。如果我使用多个效果和预设,并且只想将画布恢复到上次使用的效果,该怎么办?

0 投票
1 回答
1309 浏览

html - 将 JPEG 图层添加到 Canvas(使用 Caman)

我有一个使用 Caman 库处理的图像。

我正在尝试将 jpeg 覆盖到操纵的图像上。

我可以看到 jpeg 在操纵图像下方出现一瞬间,但一旦操纵图像完全加载,它就会迅速覆盖。

无论代码在下面的顺序如何,覆盖图像都位于操纵图像的下方。

有没有明显的解决方案?谢谢!

0 投票
1 回答
964 浏览

javascript - 由 CamanJS 修改的 KineticJS 画布

我正在尝试将CamanJS过滤器应用于使用 KineticJS 创建的画布。有用:

应用 CamanJS 过滤器后,我试图用画布做某事(例如,拖动和移动图层或单击它),但随后画布恢复到其原始状态(在应用 CamanJS 过滤器之前)。所以问题是:如何“告诉” KineticJS 更新缓存(?)或像 stage.draw() 那样做某事来保留新的画布数据?

这是jsfiddle(点击“应用过滤器”,当处理完成时,尝试拖动星号)。

BTW:为什么处理这么慢?

提前致谢。

0 投票
1 回答
257 浏览

javascript - 为 CamanJS 插件创建函数

有没有机会创建一个我可以调用的函数?

如果我将以下几行放在文档就绪功能中,它可以工作:

但如果我这样做,我不能打电话。所以我尝试了这个:

所以我想我可以用 icancall(); 但是什么也没发生。我究竟做错了什么?我想要做的:单击按钮执行卡曼函数。

我希望你能帮帮我 !

0 投票
1 回答
561 浏览

javascript - 使用 CamanJS 对图像的一部分进行操作

我正在使用 Caman JS 来修改图像。我只想修改像素子集的 alpha 通道。但是当我应用过滤器时,它会修改图像中的所有像素。关于如何修改像素子集的任何建议。我需要创建插件而不是过滤器吗?

或在 javascript
window.doWhatever = function() { var offset, x, y; 偏移量 = { x: 170, y: 150 }; x = 50; y = 50; image.maskAlpha(x, y, 255); 返回图像.render(); };

0 投票
1 回答
1095 浏览

javascript - camanjs 和旋转插件无法正常工作

有没有人让旋转插件与 camanjs 配合得很好?我已经使用 cofee 编译了 camanjs 并包含了额外的插件。其中之一是旋转。旋转插件如下

html

javascript

但是当以 90、270 -90 或 180 -180 以外的度数旋转时,结果是不想要的,因为图像在边缘被“吃掉”

原始图像 旋转图像

有趣的是,当点击还原时(假设我想多次更改旋转图像的亮度)然后原始图像出现在画布上但扭曲了

在此处输入图像描述

第三个问题是,如果将图像旋转 90 度,一切正常,图像会旋转并保持在原来的位置(左侧)。但是,如果您旋转 45 度,画布不会重新调整为大小,并且图像会停留在中间。这可以修复吗?有没有人让它正常工作?你会建议另一个图书馆吗?我需要旋转功能。

0 投票
0 回答
332 浏览

javascript - CamanJS 外部回调函数

加载图像后,有什么方法可以检查 CamanJS 库的回调,以便在 caman 对象准备好后调用 caman 函数?

IE

我需要回调是外部的,因为我想应用的裁剪和调整大小函数使用的变量如果在 Caman 初始化程序中调用,则在匿名函数回调的范围内不可见。

0 投票
1 回答
1374 浏览

javascript - CamanJS 还原和旋转修复

如果您在 CamanJS 中使用旋转插件,则在尝试还原更改时会出现问题。Caman 仅在您裁剪或调整图像大小时有效,但在旋转时无效。当您还原并旋转图像时,图像会重新加载扭曲,因为它没有考虑到画布已经旋转并改变了大小。现在画布的 imageData.data 也不同了。所以我想我通过查看他如何实现调整大小来解决它。基本上我所做的(他也是)是:

  1. 创建初始状态的画布
  2. 从 initialState 更新他的 pixelData
  3. 创建一个新画布
  4. 用初始图像旋转他
  5. 获取 ImageData 并重新渲染它们

所以我添加了什么。我需要知道图像旋转了多少角度,以便在旋转新画布时获得正确的 imageData(步骤 4)。

我还在构造函数中添加了一个新的布尔值来告诉我画布是否旋转

在旋转插件中:

在 originalVisiblePixels 原型上:

您还需要在重置原型函数中添加一些重置。基本上重置角度和旋转

就是这样。

我使用它并且工作至今。你怎么看?希望它有所帮助

0 投票
2 回答
1534 浏览

javascript - 如何使用 CamanJS 完全清除画布

我正在使用 CamanJS 创建一个带有过滤器的照片编辑应用程序。我让它工作得很好,但是在用户上传图像之后,一旦他们应用任何过滤器,它就会将画布恢复为先前上传的图像,然后通过上传另一个图像的过程。我正在使用 revert() 函数,但我也在将画布重新分配给新上传的图像,但它仍然恢复到第一张图像。所以我的问题是,有没有办法完全清除 canvas/camanJS 恢复内存到 camanJS revert() 不会恢复到以前的图像?

我的过滤器之一:

0 投票
1 回答
525 浏览

jquery - JQuery Slider 无法与 camanJS 插件一起正常工作

我想用 jquery 滑块操作图像的对比度,但是当 jquery 滑块被触发时,图像会转换为纯黑色、白色、灰色、深灰色、浅灰色等,这取决于滑块范围。

camanJS 插件