我有图库,用户可以提交Youtube链接到视频和服务器从Youtube自动获取缩略图。然而,很多视频在图片的顶部和底部都包含黑条。我知道黑条的起源,但是当我把缩略图调整成正方形时,黑条会干扰设计。
我试着从上到下分析像素颜色,直到没有找到黑色(imagecolorat()),但它仍然留下一些接近黑色的颜色,所以小条仍然驻留在图像中。
有什么更有效的算法可以检查吗?
发布于 2011-10-29 12:49:22
如果您想按颜色执行,宽像库 (基于GD的)已经实现了。这个方法被称为autoCrop,一个在线演示。
这可能已经满足了你的需要。
发布于 2012-05-12 10:05:13
解决办法之一就是和youtube做同样的事情。如果您访问他们的站点,并查看包装图像的图像和元素,您将看到have元素具有与此类似的css:
display:inline-block;
height: /*here goes fixed height in px*/
overflow: hidden;他们使用的图像在顶部和底部包含黑色区域(在容器内),但是他们使用css来隐藏它。这意味着元素(在youtube上使用att显示:内联块)将比自然图片更小,图片将以这样的方式居中/定位,所以顶部和底部的黑色区域会溢出更小的包装,并被隐藏。
发布于 2011-10-29 12:48:47
您应该检查视频的比率(4:3或16:9),并裁剪缩略图以保持这一比例。而不是试图检测颜色。
https://stackoverflow.com/questions/7938789
复制相似问题