问题标签 [bitmapdata]

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

actionscript-3 - 圆形颜色变换

有没有办法将 colorTransform 应用于圆形而不是矩形的 BitmapData?

我不想像下面的代码那样通过减少 alpha 通道来擦除图像的矩形部分,我想用圆圈来做。

我确实有一些代码循环遍历像素,提取 alpha 值并使用 setPixel,但它的接缝速度明显慢于 colorTransform 函数。

0 投票
1 回答
1282 浏览

actionscript-3 - 反向颜色变换 alpha AS3

我通过重复将每帧的 ColorTransform 应用到它的 BitmapData 来淡出 AS3 中的Bitmap

当应用明显的反向将其淡入时,我得到一个变色的图像。

该问题似乎只发生在完全淡出的图像上。如果我只走一部分,它是可以恢复的。

淡出:

AS3 ColorTransForm 淡出
(来源:ggpht.com

退了回来

AS3 颜色变换问题
(来源:ggpht.com

0 投票
1 回答
1608 浏览

flash - How can I copy a masked bitmap maintaining the masking transparency in actionscript?

I need to find a way to copy a masked bitmap. I have a bitmap on stage, and a user drawn sprite that acts as a mask. I need to capture/copy the masked area bitmap, maintaining the transparency created by the masking to eventually encode as a png.

I could find no documentation on how to accomplish this using copyPixels(), or any other directions.

Thanks in advance for any assistance -

b

0 投票
1 回答
1627 浏览

actionscript-3 - pdf 将页面读取到 AS3 中的 BitmapData

我正在 Flash AS3 中启动一个项目,我的目标是将任何 pdf 文件加载到我的 flash 项目中并将其所有页面转换为 BitmapData ...

我熟悉 byteArray,我知道我必须以二进制级别访问 pdf,但我不知道从哪里开始以及如何开始。

我希望你能给我一些见解吗?也许是对已经在做类似工作的图书馆的建议?

任何想法都值得赞赏,只是为了让我开始......

0 投票
3 回答
2387 浏览

apache-flex - Flex - 获取位图

是否可以使用 ActionScript 从组件中获取位图数据?

我动态加载图像。onComplete 我创建一个 Flex Image 组件并将加载的图像添加到源

稍后我想创建一个新的 Image 组件并从第一个 Image 中获取 bitmapData。

我试过这个

这似乎给了我图像,但我不知道如何获取位图数据。

给我一个编译错误“......未定义的属性”

有谁知道如何获取位图数据以便我可以在我的新图像组件中使用它?

提前致谢,

0 投票
1 回答
678 浏览

winapi - 为什么 HBITMAP 使用这么少的内存?

我遇到了一个有趣的问题:

  1. 通过 libjpeg 将大 (4500x6000) jpeg 加载到内存 (RGBRGBRGB....) 中(大约需要 200M 内存)
  2. CreateDIBitmap() 从数据中创建 HBITMAP
  3. 释放使用的内存

现在我发现该进程根本只使用了 5M 内存。我想知道 HBITMAP 的数据在哪里。(我禁用页面文件)


更新:

我编写这样的代码进行测试:

那么数据是0x2d0000(肯定在用户空间),bitmap.bmBits也是0x2d0000。所以我确保 CreateDIBSection 将用户空间内存用于位图。

0 投票
4 回答
1883 浏览

flash - 我怎样才能准确地绘制我的旋转位图?

我有一个带有蒙版位图的容器。这个容器的缩放和旋转在运行时会发生变化,我需要绘制蒙版位图,但无法计算出适当的矩阵计算来这样做。

我的代码可以正常工作以反映位置、比例、偏移,以便在不旋转的情况下进行居中。旋转时,角度正确但定位不正确-我相信是因为旋转矩形时尺寸会发生变化。

有人可以帮我弄清楚如何在定位中弥补这一点 - 这是一些代码:

提前感谢您提供的任何帮助 -

b

编辑: 对不起,如果我没有正确解释这一点,让我再试一次以支持图像。我在一个容器中有一个蒙版位图,我将其用作绘制新位图的源。在捕获之前,用户可以在运行时缩放/旋转该容器。为了实现这一点,我将基于容器矩阵的变换矩阵传递给 draw 方法,并调整 tx 和 ty 值以考虑非零原点(由于居中)。到目前为止,它运行良好并符合我的预期。

然而 - 一旦这个容器被旋转,捕获的位置现在再次关闭 - 可能是由于尺寸变化,因此 tx/ty 偏移现在对于容器的新尺寸不正确。我只需要对此进行补偿,但无法弄清楚如何。

有没有人有转换矩阵的经验可以提供帮助?再次感谢您的努力!

由 imgur.com 主办

由 imgur.com 主办

0 投票
2 回答
1321 浏览

flash - Flash:通过 max(channel) 组合两个 BitmapData 对象

我有两个带有 alpha 通道的 BitmapData 对象。我想通过对每个通道(包括 alpha)使用 max(channel_image_one, channel_image_two) 将它们组合成一个。有没有一种简单的方法可以实现这个结果?

0 投票
1 回答
309 浏览

actionscript-3 - 如何替换影片剪辑中的颜色?

我正在尝试拍摄一个角色的电影片段并改变他们衣服的颜色。字符由向量组成。

到目前为止,我已经半成功地使用了这种方法:

  1. 停止影片剪辑
  2. 从当前帧中获取位图数据
  3. 使用阈值替换颜色
  4. 将生成的位图数据存储在数组中
  5. 添加一个onenterframe函数-清除当前帧并从数组中的处理数据中添加位图数据

所以 - 这很好用。每帧只在开始时处理一次,然后写入影片剪辑非常快。

然而!由于在位图上执行替换,因此会发生大量锯齿以消除锯齿/像素化。这会产生使用阈值不匹配的颜色。所以主颜色被正确替换,但它被混合颜色的光环包围:(

我相信应该有更好的方法来做到这一点。任何想法或答案都会非常感激 - 谢谢。

0 投票
3 回答
4145 浏览

apache-flex - Flex:将加载图像的位图数据复制到另一个 SWFLoader

我有 2 个像这样的 SWFLoaders:

这里的一切都按预期工作,除了一件小事:

我在 ldr_src(即 10x10)中加载大小为 100x100 的图像。位图复制到 ldr_target 中,但结果出乎意料。我原以为会复制 10x10 大小的加载图像。而是将加载图像的 (0,0) 到 (10,10) 的位图复制到目标。

无论图像的实际大小如何,如何复制被 swfLoader 缩小的大小的 bitmapData?