建议的算法,以防止LCD屏幕上的“图像持久性”

时间:2013-10-22 00:08:54

标签: kiosk

我有一个Windows应用程序,它在自助服务终端机器上显示,并且经常连续运行数周。该应用程序是全屏的。作为参考想象一个屏幕分为2个面板,左边一个使用约30%,右边填充其余面板。左侧面板完全静态且信息性,右侧面板有视频,图像和文本幻灯片旋转,动画等。

毫不奇怪,左侧面板可能会导致一些“图像持久性”(屏幕刻录)问题。我正在寻找有关如何防止图像持久性问题的建议补救措施。我只关心LCD而不是CRT。

查看这个“雨刷”式解决方案,给它几秒钟,你会看到线条划过。 http://tinyurl.com/lprt6tr

我喜欢这个想法,简单而且只是叠加在上面,它可以在任何地方使用。

但是,我的问题是实际需要多少像素颜色变化以避免图像持久性?你需要确保像素每分钟至少改变一次,每分钟10分钟,每小时一次吗?是否需要旋转一系列颜色?是否需要持有一段时间的状态?

我正在寻找任何有关实际预防问题所需的颜色变化频率和颜色变化的见解。

感谢。

1 个答案:

答案 0 :(得分:0)

虽然我同意肯·怀特的说法,但我认为双刮水器,左边有一条白色的痕迹,右边是黑色的,这就足够了,因为它会对像素进行硬设置。

至于更新频率,您不需要像在小提琴中那样频繁地设置它。看到这个小提琴:http://jsfiddle.net/4w2K3/83/ 请注意,我为sweeper元素添加了一个边框,并改变了代码的工作方式。

var $burnGuard = $('<div>').attr('id','burnGuard').css({
    'background-color':'#000',
    'width':'1px',
    'height':$(document).height()+'px',
    'position':'absolute',
    'top':'0px',
    'left':'0px',
    'border-left':'solid 1px',
    'border-color':'#FFF',
    'display':'none'
}).appendTo('body');

var delay = 10000, scrollDelay = 1000;
function burnGuardAnimate()
{
    $burnGuard.css({
        'left':'0px'
    }).show().animate({
        'left':$(window).width()+'px'
    },scrollDelay,function(){
        $(this).hide();
    });
    setTimeout(burnGuardAnimate,delay);
}
setTimeout(burnGuardAnimate,delay);

由于屏幕基本上是一组由3组(红色,绿色和蓝色)组成的彩色灯组(简化),根据颜色组成,白色会同时激活所有三个灯光,而黑色则根本不亮。因此,在屏幕上扫描这种强烈对比线会有所帮助。虽然时间更依赖于您正在使用的硬件以及屏幕自然变化的频率(广告,用户交互等),但我对硬件部分知之甚少,但我建议根据CRT显示器的个人经验,每15分钟左右运行一次,这也取决于您计划为自助终端维护相同屏幕的时间。