JavaScript是否可以截取silverlight元素的屏幕截图?

JavaScript是否可以截取silverlight元素的屏幕截图?,javascript,silverlight,canvas,Javascript,Silverlight,Canvas,基本规则: 没有闪光 没有附加组件 必须至少在IE8上受支持 我想知道Canvas是否可以与JS结合使用,可能是一些巧妙的JS库 更新-我被要求拍摄silverlight元素的屏幕截图,而不提供其来源。(我的生活故事)在决定完全重新创建silverlight元素之前,我想我会尝试一下 更新2-用另一个.xap包装silverlight的.xap怎么样?(比如flash可以在另一个swf中播放swf文件)我不确定这是否可能,因为我是silverlight的新手 更新3-由于我不再尝试解决此问题,因

基本规则:

  • 没有闪光
  • 没有附加组件
  • 必须至少在IE8上受支持
  • 我想知道Canvas是否可以与JS结合使用,可能是一些巧妙的JS库

    更新-我被要求拍摄silverlight元素的屏幕截图,而不提供其来源。(我的生活故事)在决定完全重新创建silverlight元素之前,我想我会尝试一下

    更新2-用另一个.xap包装silverlight的.xap怎么样?(比如flash可以在另一个swf中播放swf文件)我不确定这是否可能,因为我是silverlight的新手


    更新3-由于我不再尝试解决此问题,因此我无法尝试Goodfells提供的解决方案。我将选择一个在大约两周后投票率最高的答案

    否,允许截图可能会导致安全问题,例如,如果有人在您查看在线银行网站时注入javascript并截图


    话虽如此,似乎有人在讨论如何使用SilverLight进行此操作。可以是您想要的。

    用于Javascript与浏览器交互的API的设计使此类事情不会发生。这将是一个巨大的安全漏洞

    画布是在页面上绘制到的元素,它不授予对浏览器绘图系统的访问权限。此外,IE8不支持画布,因此IE8支持是不存在的,特别是当您不需要插件时

    总之,不。这是不可能的,甚至是不可取的。

    是的,这是可能的

    使用下面的代码

     <WebBrowser Grid.Row="1" VerticalAlignment="Top" Source="{Binding VodeoUrl,Mode=OneWay}" Height="280" Width="280"/>
    
    
    
    在C#代码中:

    swf文件url:也可以设置本地路径


    VodeoUrl=video[0].ToString()

    不,那是不可能的。“我认为你应该问一下你想要完成的是什么,而不是问你认为应该如何解决它。”Guffa用更多的信息更新了这个问题