【发布时间】:2014-04-26 04:14:45
【问题描述】:
我是 Three.js 和一般图形的新手,我一直在寻找一种方法来在具有透明背景的 PNG 中找到最顶部和最底部的可见点。我模糊地知道,大部分图形操作都是通过将图像理解为像素数组来完成的,所以我认为这本质上是在数组中迭代具有最大和最小 y 轴值的非透明像素。 Three.js 中的什么功能——或者可能是直接的 Javascript——可以让我访问这些数据(这个数组?),或者有没有更直接的方法来实现我已经内置到库中的目标?
我的目标是根据其可见内容将图像垂直居中。
谢谢!
- 更新-
从@Paul Green 那里得到一片叶子,我搜索了与getImageData 相关的 Three.js 内容(用于从画布上下文中获取像素数组的函数),希望 Three.js 中有一些等效的函数.我正在寻找远离画布和 Three.js (webGL) 领域的东西,因为我没有在我的脚本中使用画布。我也在寻找可以在图像渲染之前获取信息的东西。到目前为止,Three.js dataTexture 看起来很相关,但我仍然不完全了解它或如何使用它。任何指导将不胜感激!
【问题讨论】:
-
您所说的“最高和最低可见点”是什么意思?最透明像素和最不透明像素?
-
@Paul Green - 啊,好问题。我的意思是透明背景中图像顶部和底部的坐标:例如,如果我的透明 PNG 上有一张树的图片,我想知道树顶部和底部的 y 坐标.是不是更清楚了?
标签: javascript image three.js png transparency