Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chrome Flash player在Flash窗口中创建透明矩形_Flash_Google Chrome_Visual Glitch - Fatal编程技术网

Chrome Flash player在Flash窗口中创建透明矩形

Chrome Flash player在Flash窗口中创建透明矩形,flash,google-chrome,visual-glitch,Flash,Google Chrome,Visual Glitch,我在Flash视频播放器中遇到了一个奇怪的、很难重现的图形故障!,到目前为止,只有铬合金 “enterthebuilding”下面的灰色矩形显示了flash播放器所在的html div的背景色。在“我们在哪里”链接下有一个较小的。这些是具有脚本悬停动画的精灵(包含多个其他精灵和显示对象)(它们缓慢地向其原点特定范围内的随机点移动)。故障会随着它们一起调整大小,有时会消失 最奇怪的是,它让整个flash组件都能看穿。我有这个密码 创建视频播放器时运行: graphics.clea

我在Flash视频播放器中遇到了一个奇怪的、很难重现的图形故障!,到目前为止,只有铬合金

“enterthebuilding”下面的灰色矩形显示了flash播放器所在的html div的背景色。在“我们在哪里”链接下有一个较小的。这些是具有脚本悬停动画的精灵(包含多个其他精灵和显示对象)(它们缓慢地向其原点特定范围内的随机点移动)。故障会随着它们一起调整大小,有时会消失

最奇怪的是,它让整个flash组件都能看穿。我有这个密码 创建视频播放器时运行:

        graphics.clear();
        graphics.beginFill(0xff00ff, 1);
        graphics.drawRect(0, 0, _stage.stageWidth, _stage.stageHeight);
        graphics.endFill();
因此,视频播放器的背面应该有一个明亮的颜色,我已经确认,如果我不加载视频播放器,它就在那里。但是,不会显示这种明亮的颜色,而是显示包含播放器的背景div

这对我来说毫无意义…我也不知道如何调试它。我所知道的是,故障的出现取决于文本链接在屏幕上的悬停位置

闪存加载在WMODE transparent中,我们需要它,因为它的侧面有一个半透明的可扩展“翼”

编辑:


它在www.48hourgames.com上直播。创建帐户后,您将看到以上面截图结尾的视频播放器。

这是Pepper Flash播放器的问题。Adobe和Google在这方面已经做了一段时间了,这就是他们打算让Flash保持活力并在Linux平台上工作的方式

不幸的是,胡椒粉是非常多的。今年夏天的某个时候,Pepper Flash成为Chrome中所有操作系统的默认Flash插件。它有许多问题没有真正的解决方案,除了禁用它(希望Adobe/Google能够解决这些问题)

要禁用Pepper Flash,请执行以下操作:

  • 转到:chrome://plugins
  • 单击右上角的详细信息图标
  • 找到Flash Player插件部分,您可能会在此处安装多个版本的Flash。我刚刚安装了Chrome来验证这是个问题,并且有了Pepper Flash和2个“普通”版本的Flash
  • 禁用路径中有“PepperFlash”的Flash插件

我能够非常可靠地再现这个问题。有几个想法:

  • 听起来,
    wmode transparent
    可能会反复出现问题。也许你可以让Flash元素有100%的宽度,在左/右边缘做一个不可见的背景。在Flash中,您可以通过
    stage.scaleMode=StageScaleMode.NO_SCALE。如果闪光灯一直闪烁,您可以去掉
    wmode transparent
    ,这可能是个不错的选择
  • 您是否已尝试将覆盖电影的两个按钮的
    cacheAsBitmap
    设置为
    true
  • 因为这些伪影只会在电影结束时出现,当它是一个静止帧时,可能在电影达到这个最终状态时将
    cacheAsBitmap
    设置为
    true
    会起作用吗
  • 当电影达到最终状态时,可能会用一个看起来相同的PNG图像替换掉它
  • 如果这两个按钮还不是PNG图像,可以用PNG图像替换掉它们
如果这些不起作用。。。越来越绝望

  • 可能会将侧菜单(扩展Flash元素)从SWF中剥离到它自己的SWF中,并放在电影SWF的顶部。这样,电影SWF可能会丢失
    wmode transparent
    ,并且可能不会在侧菜单上出现故障
  • 侧菜单可以是HTML。
    • 滚动状态可以是HTML元素
    • 或者,侧菜单可以调用Flash元素来切换滚动文本。对Flash的调用必须通过
      ExternalInterface
      类()注册
因为我没有代码来测试任何东西,这些都是在黑暗中拍摄的


我将从
cacheAsBitmap
相关概念开始。然后转到PNG想法(按钮,最后一帧)。从这里开始,尝试Flash元素的全宽版本。如果这些方法不起作用,你可能需要考虑一种新的设计。如果这不是一个选项,我将继续拆分侧菜单,并进行如上所述的更改。

我今天在最新的Flash Player 11.6+Chrome 27版本中遇到了这个问题。在某些计算机上,它工作,在其他一些计算机上,它不工作,这使得追踪问题非常困难,因为它没有发生在我这边

我相信这是一个Flash的bug,而不是chrome,因为当我右键单击->放大,右键单击->缩小脏补丁时就会消失

所以我四处寻找一个肮脏的快速修复方法

尝试了cacheAsBitmap方法:无效(此修复程序适用于“黑色透明”问题,但不适用于此问题)

尝试了两帧图像的方法:两者都不起作用(不确定原因)

我终于找到了一种修复方法(经过多次测试):

由于脏白色补丁只有在动画结束时才会出现,我在舞台上放置了一个透明形状的tween剪辑,让它永远运行。它是有效的


p/s:事实上,我试图将此添加为评论而不是答案,但找不到方法,这很奇怪。

我今天在玩拼图游戏时在我的Google Chrome 31.0.1650.63上遇到了这个问题。我通常不使用这个浏览器,因此flash在每个浏览器中的工作方式应该完全相同,所以当我听到游戏中覆盖着白色矩形时,我有点惊讶。将wmode设置为不透明而不是透明解决了此问题。

在我的视频播放器中也是如此

只有铬胡椒粉闪光,
import flash.display.MovieClip;
import flash.events.Event;

var redrawAll = new MovieClip();
redrawAll.mouseEnabled = false;
redrawAll.graphics.beginFill(0x000000, 0);
redrawAll.graphics.moveTo(0,0);
redrawAll.graphics.lineTo(stage.stageWidth, 0);
redrawAll.graphics.lineTo(stage.stageWidth, stage.stageHeight);
redrawAll.graphics.lineTo(0, stage.stageHeight);
redrawAll.graphics.endFill();
addChild(redrawAll);

addEventListener(Event.ENTER_FRAME, function(e:Event){
    redrawAll.alpha = (redrawAll.alpha == 0)? 1 : 0;                 
});