查找图像的最小可视矩形的尺寸
Posted
技术标签:
【中文标题】查找图像的最小可视矩形的尺寸【英文标题】:Find the dimensions of the smallest viewable rectangle of an image 【发布时间】:2012-06-11 00:07:36 【问题描述】:使用 Java 成像如何找到图像的最小可视矩形。在这里,我认为 alpha/透明像素是不可见的。我想找到尺寸,以便我可以自动裁剪图像。我想以图像中立的方式做到这一点,但如果这是不可能的,那么 PNG。
【问题讨论】:
“图像的最小可视矩形” 那么动画 GIF 呢?可视内容可能会因帧而异。 Crop image to smallest size by removing transparent pixels in java的可能重复 【参考方案1】:假设您甚至不想裁剪单个“可见”像素,我将使用以下算法:
扫描最上面的水平线,逐像素迭代。如果该行中不存在可见像素,则前进到第二个最上面的行,依此类推,直到找到具有可见像素的行。
对底部做同样的事情,向上推进,也对侧面做同样的事情,向内推进。
完成所有 4 个步骤后,您将获得可以从图像的每一侧修剪多少行像素。
【讨论】:
是的,这就是我要做的,只是想知道如何以格式中性的方式判断像素是否透明。 查看与像素相关的BufferedImage
的方法,发现它返回Color
,或表示颜色的'int'。查看Color
的方法,看看它们有接受“int”的构造函数,以及告诉透明度的方法。或者一种不那么微妙的方式是 RTFM。以上是关于查找图像的最小可视矩形的尺寸的主要内容,如果未能解决你的问题,请参考以下文章