【问题标题】:put iframe inside a canvas element in HTML5将 iframe 放在 HTML5 中的画布元素中
【发布时间】:2012-04-11 19:28:12
【问题描述】:

我的问题很简单,其实我想把要显示的iframe元素(可以包含视频、网页、图片、pdf等)放在元素上, 它不需要可编辑,只要显示就足够了

【问题讨论】:

    标签: javascript html iframe html5-canvas


    【解决方案1】:

    我不确定你是想在它上面显示它还是把它画到画布上。第一种可能是通过将元素绝对定位在画布上方(如果您想在其上绘制其他东西,则在其下方)。第二个是不可能的(除非您在 Chrome 扩展程序或 firefox 插件中运行,这不是我假设的情况(如果是这种情况,那么函数在 cavnas 上下文中称为 DrawElement))。有一些项目试图手动制作页面的“屏幕截图”(Can you take a "screenshot" of the page using Canvas?),但这仍然不适用于 pdf 文件。 html5 视频标签中的视频内容同样可以手动绘制到画布上,尽管控件等必须手动绘制。

    无法将整个元素绘制到画布上的原因是作为一种安全预防措施,以防止开发人员获取有关外部页面的信息(尽管已经讨论过允许这样做并接受画布将被“污染”意味着无法从中读取任何内容,但共识是在这种情况下将元素定位在画布下方更有用)。如果您想了解这些安全注意事项,您应该在 webkit 引擎中查找错误 69044。

    【讨论】:

    • 我想把它画到画布上,那么就不能画外部页面/应用了?
    • 如果它是外部的,比是的,这实际上是不可能的,正如我上面概述的那样。你想做什么?也许我可以为您指出如何解决问题的另一个方向。
    • 我有一个带有bgcolor的canvas元素和一些已经完成的文本元素,然后我需要绘制可以用canvas做的形状,图像,下一步是放一个网页/pdf /视频到画布上。实际上,我有一个对象,其中包含在 .NET 上创建的所有元素(文本、形状、视频等),然后我将对象序列化为 JSON 格式,目标是在浏览器中显示它,我选择了画布方法,但唯一的问题是显示 pdf、网页或任何外部应用程序元素
    • 在这种情况下,在画布前面显示 iframe 有什么问题?只要您不打算用它做任何奇怪的事情(这两种方式都不允许),那么它应该可以正常工作,并且可以使用 css 完成任何必要的正常转换。
    • 因为画布无法显示pdf、网页等,所以我需要一个iframe,现在唯一的问题是在画布内部/上显示iframe,或者如果有任何其他方法我对任何事情都持开放态度
    猜你喜欢
    • 2012-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-01
    • 2012-06-30
    • 2012-06-13
    • 2013-08-03
    相关资源
    最近更新 更多