是否有任何这样的方法来确定图像可以被放大多少,直到它被认为是"失焦"?
一个实际的例子(以及我试图解决的问题):
我有几种不同尺寸的图像,比如500x500,250x250和120x120.我想提供最有效的形象,也是最清晰的.如果用户要以125x125请求图像,显然增加120x120图像以适应不仅最有效,而且很可能不会导致任何明显的像素化.
然而,如果用户要求以180x180的图像请求图像,则增加120x120图像可能更有效,但很可能会渲染模糊的图像.在这种情况下,我想缩小250x250图像.
显然,图像的"清晰度"可以是相对的,并且在不同的图像之间以及图像与图像之间有所不同,但我想知道是否存在任何类型的算法或函数来确定各种类型的"像素化指数". .谢谢!
注意:使用PHP和ImageMagick进行图像处理,因此该领域的任何答案都会很棒......
澄清:我并不是在寻找上述例子的解决方案.我正在寻找原始问题的答案:is there an algorithm that could possibly determine how "pixelated" a blown up image is......上述问题只是这种算法如何有用的一个实际例子.
初始直觉告诉我添加一个监听器,使用bind或简单的事件方法来处理jQuery元素集,例如..
$('.className').click(funcName);
比使用$ .each方法将侦听器逐个添加到同一个集合更合适...
$('.className').each(function(){ $(this).click(funcName); });
但是当谈到插件开发时,你正在处理用户在页面生命周期内,页面加载和页面加载后很长时间内多次调用插件实例的可能性,将处理程序应用于每个元素本身,而不是试图将处理程序抽象为它们的全局类集?
我正在处理的主要问题是"处理事件处理时调用的插件的多个实例的最佳方法是什么?为了减少工作量?" 我知道我们可以绑定和取消绑定,但有更好的方法吗?
编辑
插件构造的部分代码
init : function(){
this.each(function(opts){
// adding event handlers here removes
// the need to worry about multiple instances
// and duplicate handles over the lifetime of the page
});
// adding 'global' handlers here may/may not be more
// efficient, but adds an issue of multiple instances
return this;
}
Run Code Online (Sandbox Code Playgroud) 有没有办法使用apply()或类似的方法调用canvas函数,以动态调用canvas方法或能够传递参数数组?
我正在寻找这种效果
context.fillRect.apply(this,args);