我可以创建一个将用作网络浏览器的Flash文件。基本上,Flash的行为类似于Internet Explorer或Firefox,可能就像在iframe中加载页面一样。
这可能吗?
答案 0 :(得分:2)
不,这不可能¹。 Flash在Flash Player中显示,该播放器已在内部浏览器中运行。因此,即使可能,您也需要运行浏览器来运行Flash Player,然后运行“webbrowser”。除此之外,Flash无法呈现HTML,因此无法直接显示Web内容。
唯一的选择是使用Adobe AIR,它是Webkit浏览器附带的Flash内容的桌面运行时环境。该浏览器框架也用于浏览器,如Chrome和Safari。但是,如果您的所有应用程序都应该这样做,那么这样做将无益于浏览器。 AIR中包含的Webkit浏览器仅包含最基本的模块,人们通常期望从浏览器中获得很多东西。
¹如评论中所述,可能有可能在ActionScript中实现完整的HTML呈现引擎。然而,这需要付出很多努力,特别是如果你想获得与当前浏览器能够做的几乎相似的良好覆盖。鉴于Flash是在Flash Player内部运行的,技术上是一个虚拟机,它本身就运行在浏览器中,但性能会相当糟糕。因此,除了它在理论上是可行的这一事实之外,我认为在这个方向上工作不会有任何好处(再次:特别是如果你只是想模仿普通的浏览器,原因与上面相同)。
²之前有另外的评论; Flash可以编译为可执行文件,因此不需要在浏览器中运行。有很多方法可以做到这一点,但总的来说情况并没有那么好。您最好使用AIR(然后已经使用Webkit进行渲染)。
答案 1 :(得分:1)
我的意思是你可以这样做(有点),但是它能够正常工作的时间会是精神错乱而且不值得。
你必须为初学者介绍这些事情:
<img>
标签并将适当的图像加载到位并剥离+渲染任何文本。对于JavaScript或类似的东西 - 除非您要创建一个额外的系统,以某种方式将HTML的JavaScript操作转换为对Flash对象的AS3操作,否则您可能不得不废弃它。
基本上 - 它可以实现(部分)但不可行。您将无法覆盖浏览器本身可以执行的约75%,更重要的是:这就是浏览器的用途。