Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.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
Php 清理HTML格式的内容以便在Flash中显示?_Php_Html_Flash_Apache Flex_Actionscript - Fatal编程技术网

Php 清理HTML格式的内容以便在Flash中显示?

Php 清理HTML格式的内容以便在Flash中显示?,php,html,flash,apache-flex,actionscript,Php,Html,Flash,Apache Flex,Actionscript,我想在flashflex应用程序中显示来自不同来源的HTML格式的内容。Flash在其文本字段中支持HTML格式,但是与web浏览器相比,它非常有限。有没有脚本可以将普通HTML格式的文本转换成Flash可以处理的格式?我的特定用例是: 在Flash中显示HTML格式的电子邮件 在Flash中显示RTF文件(在服务器上运行RTF2HTML转换后) 显示从其他来源复制并粘贴到Flash中的随机HTML内容 我对在客户端或服务器上运行的代码持开放态度,但服务器可能更可取。不是我想要的,因为它不转

我想在flashflex应用程序中显示来自不同来源的HTML格式的内容。Flash在其文本字段中支持HTML格式,但是与web浏览器相比,它非常有限。有没有脚本可以将普通HTML格式的文本转换成Flash可以处理的格式?我的特定用例是:

  • 在Flash中显示HTML格式的电子邮件
  • 在Flash中显示RTF文件(在服务器上运行RTF2HTML转换后)
  • 显示从其他来源复制并粘贴到Flash中的随机HTML内容
我对在客户端或服务器上运行的代码持开放态度,但服务器可能更可取。

不是我想要的,因为它不转换HTML,而是在Flash中呈现,这意味着它将不可编辑。但在某些情况下,它可能很有用,因为我只想显示而不想编辑文本


另一个选择是查看我希望能够显示的几个示例HTML,然后编写正则表达式将它们转换为Flash/TLF期望的格式。但是我觉得这可能是一个巨大的努力,因为HTML的范围很广。

您可以使用并指定一个您想要支持的标记的白名单。

支持的HTML标记子集非常差,并且不会永远改变:

<a>, <b>, <br>, <font>, <img>, <i>, <li>, <p>, <textformat>, <u>
(PHP)将进行一些调整,它也足以处理无效标记(看看您在处理来自不同来源的内容后的表现,我想说,从长远来看,仅此功能就可以节省很多痛苦)-而不是替换

<h1>,...,<h6> => <b>
<strong>      => <b>
<em>          => <i>
,…,=>
=>
=> 
然后用明文把剩下的部分写进段落,你会惊讶于它的可读性。你也可以像这样有点花哨:

<h1> => <b class="header1">
=>
并根据需要添加一些css(尽管flash css支持也非常有限)

我一直在为沙漠保存这一个-你要么喜欢它,要么讨厌它,但它会做的把戏。假设您的应用程序部署在浏览器中(如果没有,我误读了您,请省去我的尴尬,现在就停止阅读),您可以使用iframe来显示您的html

JSAS通信相当简单,您可以将其定位在应用程序的预定区域上,让人产生它是应用程序一部分的错觉;只需记住在flash对象/嵌入上正确设置windowmode,使其不会在其他页面元素上呈现,然后增加iframe z索引


如果这被视为一种“丑陋”的方法,我不会感到惊讶,但它的内在美——你最终会得到逐字的html和真正的css支持。至于用户交互,您甚至可以拦截iframe中的链接点击等,并请求movieclip执行操作。

有点有趣的问题我很好奇,是否有可靠的服务器端HTML渲染引擎可以将预渲染的数据作为位图数据发送回去(虽然我认为这样做可能有点荒谬)。或者客户端查看StageWebView,实际上我想知道您是否可以抓取web工具包并连接到它来呈现HTML服务器端,然后以某种方式发送呈现版本(编码为jpg或其他)返回到客户端。或者,如果有人已经这样做了。@shaunhusain是的,有几个项目在服务器上将网页呈现为位图,然后将其发送回客户端。您可以选择调用其API的web服务或在自己的服务器上运行的代码。几个链接:另外,StageWebView需要AIR(aka无法在浏览器中运行),这对我的特殊情况没有帮助。但可能对其他人有帮助。啊,好吧,很抱歉忘记了仅限空气的限制。flash/flex愿意直接解释的HTML非常有限,所以我认为类似于您发布的内容是一个理想的解决方案。使用您发布的内容有什么问题吗?我是年龄大小或他们都是付费服务,而你正在寻找一个免费的解决方案?我不明白。如果你的目标是只显示HTML内容,那么你链接到的库似乎正是这样做的。你的答案列出了很多我想到的要点。特别是在某个区域有HTML覆盖的部分可能是最合理的方法解决了flash自己的html呈现的所有缺点。您如何将表或表单转换为flash html子集?-我只是不认为它通过flash自己的html呈现工作。