`
g21121
  • 浏览: 694370 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

flex html编辑器

 
阅读更多

在flex里有一个组件叫RichTextEditor,它可以编辑简单的文字样式,但是它生成的htmlText却并不是十分符合html规范,所以我简单修改了下,具有复制功能的html编辑器:

<?xml version="1.0" encoding="utf-8"?>
<s:TitleWindow xmlns:fx="http://ns.adobe.com/mxml/2009"
			   xmlns:s="library://ns.adobe.com/flex/spark"
			   xmlns:mx="library://ns.adobe.com/flex/mx"
			   xmlns:flexlib="http://code.google.com/p/flexlib/"
			   xmlns:text="com.riaidea.text.*"
			   width="800" height="600" close="PopUpManager.removePopUp(this)" title="编辑器">
	
		<fx:Script>
			<![CDATA[
				import mx.collections.ArrayCollection;
				import mx.controls.Alert;
				import mx.managers.PopUpManager;
				import spark.components.Application;
				
				protected function copyBtn_clickHandler(event:MouseEvent):void
				{
					var context:String=richText.htmlText;
					if(context!=""){
						Alert.show("复制成功","复制内容到剪贴板");
						System.setClipboard(richTextEditorToHtml(context));			
					}else{
						Alert.show("复制失败,请填写内容","复制内容到剪贴板");
					}

				}
				
				protected function clearBtn_clickHandler(event:MouseEvent):void
				{
					richText.htmlText="";
				}
		
				private function richTextEditorToHtml(str:String):String {
					var xml:XML = XML("<BODY>"+str+"</BODY>");
					var t1:XML;
					var t2:XML;
					
					// 移除所有 TEXTFORMAT
					for( t1 = xml..TEXTFORMAT[0]; t1 != null; t1 = xml..TEXTFORMAT[0] ) {
						t1.parent().replace( t1.childIndex(), t1.children() );
					}
					
					// 查找所有 ALIGN
					for each ( t1 in xml..@ALIGN ) {
						t2 = t1.parent();
						t2.@STYLE = "text-align: " + t1 + "; " + t2.@STYLE;
						delete t2.@ALIGN;
					}
					
					// 查找所有 FACE
					for each ( t1 in xml..@FACE ) {
						t2 = t1.parent();
						t2.@STYLE = "font-family: " + t1 + "; " + t2.@STYLE;
						delete t2.@FACE;
					}
					
					// 查找所有 SIZE 
					for each ( t1 in xml..@SIZE ) {
						t2 = t1.parent();
						t2.@STYLE = "font-size: " + t1 + "px; " + t2.@STYLE;
						delete t2.@SIZE;
					}
					
					// 查找所有 COLOR 
					for each ( t1 in xml..@COLOR ) {
						t2 = t1.parent();
						t2.@STYLE = "color: " + t1 + "; " + t2.@STYLE;
						delete t2.@COLOR;
					}
					
					// 查找所有 LETTERSPACING 
					for each ( t1 in xml..@LETTERSPACING ) {
						t2 = t1.parent();
						t2.@STYLE = "letter-spacing: " + t1 + "px; " + t2.@STYLE;
						delete t2.@LETTERSPACING;
					}
					
					// 查找所有 KERNING
					for each ( t1 in xml..@KERNING ) {
						t2 = t1.parent();
						// ? css 
						delete t2.@KERNING;
					}
					
					// 查找所有 <LI>  UL 
					return xml.children().toXMLString();
				}	
				
			]]>
		</fx:Script>
	<s:VGroup width="100%" height="100%" gap="5">
		<mx:RichTextEditor id="richText" width="100%" height="100%" title="请输入描述内容" />
		<s:BorderContainer width="100%" height="34" backgroundColor="#DFDEDE" dropShadowVisible="false">
		<s:HGroup width="100%" gap="20" horizontalAlign="center" verticalAlign="middle"
				  verticalCenter="0">
			<s:Button id="copyBtn" label="复制" click="copyBtn_clickHandler(event)"
					  icon="@Embed('file:///C:/Users/liming/Desktop/imgs/22/edit-copy (3).png')"/>
			<s:Button id="clearBtn" label="清空" click="clearBtn_clickHandler(event)"
					  icon="@Embed('file:///C:/Users/liming/Desktop/imgs/22/edit-clear (3).png')"/>
			
		</s:HGroup>
		</s:BorderContainer>
	</s:VGroup>

</s:TitleWindow>

 

 

  • 大小: 32.3 KB
分享到:
评论

相关推荐

    FLEX 图文编辑器(FLEX HTML编辑器)

    **FLEX 图文编辑器(FLEX HTML编辑器)** FLEX图文编辑器是一款基于Adobe Flex技术构建的富文本编辑工具,特别强调了对图文混合编辑的支持。它允许用户在编辑环境中自由组合文本和图像,提供了类似Word的功能,如...

    Flex图文编辑器(FLEX HTML编辑器)汉化版.rar

    Flex图文编辑器(FLEX HTML编辑器)汉化版.rar Flex图文编辑器(FLEX HTML编辑器)汉化版.rar Flex图文编辑器(FLEX HTML编辑器)汉化版.rar Flex图文编辑器(FLEX HTML编辑器)汉化版.rar

    flex 文字编辑器

    Flex 文字编辑器是一款基于Adobe Flex技术开发的富文本编辑工具,主要应用于Web应用程序中,为用户提供一个可自定义、功能丰富的文字处理环境。Flex是一个开源的用户界面框架,使用ActionScript编程语言和MXML标记...

    基于flex的流程编辑器

    该编辑器支持流程文件的图形界面输入方式编辑, 不需考虑流程具体如何定义, 以拖拽节点的形式自动完成流程的编辑, 支持本地和服务器读写; 支持单个节点的拖拽和流程节点的整体拖拽;曲线绘制方式是以自动计算...

    基于adobe flash平台的 相片编辑器[flex部分]

    《基于Adobe Flash平台的相片编辑器:Flex技术解析》 在数字媒体和网络应用领域,Adobe Flash平台曾经是创建互动内容的首选工具之一。尤其是对于相片编辑器这类需要用户交互的应用,Flash的灵活性和丰富的图形处理...

    Flex流程设计器

    在Flex项目中,流程设计器的主要功能是允许用户通过拖放操作定义和编辑工作流。工作流通常由一系列步骤组成,这些步骤代表了一个业务过程,如审批流程、订单处理等。用户可以通过流程设计器自定义每个步骤的顺序、...

    aspnet免Flex报表设计器

    这款报表设计器的出现,为开发者提供了更加便捷、高效的报表创建和编辑体验,尤其适合那些不熟悉或不希望使用Flex技术的团队。 在ASP.NET环境中,报表设计通常涉及到复杂的布局、数据绑定和样式设定。传统的Flex...

    uniapp富文本编辑器.zip

    例如,可以调用`editor.getContent()`获取编辑器中的HTML内容,或者`editor.getText()`获取纯文本内容。对于uniapp中的自定义编辑器,开发者可能已经封装了这些方法,可以直接在项目中调用。 五、事件监听与交互 富...

    flex_api (FLEX接口)

    Adobe Flex Builder是一款集成开发环境(IDE),提供了代码编辑、调试、性能分析等功能,便于开发人员使用Flex API进行开发。此外,Flex API也可以与Eclipse等其他IDE集成,提供良好的开发体验。 通过理解并熟练...

    163在线编辑器

    【163在线编辑器】是一款模仿网易163邮箱提供的在线文本编辑工具,它集成了HTML和CSS技术,使得用户无需安装任何软件,只需通过浏览器就能进行文档的编辑、排版和格式化操作。这款编辑器适用于创建邮件、编写文章、...

    flex在线阅读开发(详细步骤)

    开发者可以使用SDK配合文本编辑器进行开发,但通常会选择集成开发环境(IDE)来提高效率。 2. **FlexBuilder**:它是基于Eclipse的IDE,为Flex开发提供了一流的支持,包括代码提示、调试器、项目管理等功能,极大地...

    FLEX安装和配置全步骤

    - 使用FLEX Builder内置的调试器,你可以设置断点,检查变量值,追踪代码执行流程。 - 测试工具如Flash Player或Adobe AIR Debug Launcher可以帮助你在不同环境中测试应用。 **学习资源** 为了深入学习FLEX,你可以...

    flex中文教程.pdf

    Flex SDK是Flex开发的基础,包含了编译器、库和命令行工具,允许开发者在任何文本编辑器下进行开发。Flex Builder是基于Eclipse的集成开发环境(IDE),提供了一整套的开发、调试和优化工具,极大地提高了开发效率。...

    Flex应用程序开发

    - **编辑器**:用于编写和编辑MXML和ActionScript代码,提供语法高亮、代码提示和错误检查等功能。 - **视图**:包括属性面板、大纲视图、调试器和项目资源管理器等,辅助开发者进行开发和调试工作。 总之,Flex是...

    Flex简明中文教程

    - **编写代码**:在编辑器中使用MXML和ActionScript 3.0编写应用程序的代码。 - **测试与调试**:利用Flex Builder内置的测试功能进行调试和验证。 - **发布**:完成开发后,可以将应用程序打包为SWF文件或其他格式...

    flex 学习详细笔记

    11. **Flex的应用场景**:Flex常用于创建数据密集型的Web应用,如企业级应用、数据可视化工具、在线图表编辑器等。 通过深入学习和实践这些知识点,你可以逐步掌握Flex开发,并能够创建出具有吸引力且功能强大的Web...

    flex3.0学习指南

    开发者可以使用免费的SDK,配合文本编辑器进行开发,或者选择购买Adobe Flex Builder来获得更强大的集成开发环境。 二、MXML语言基础 MXML是Flex的主要标记语言,用于描述用户界面的布局和组件。它与HTML类似,但更...

    flex 3.0 actionscript 2.0

    6. **Flex Builder**:Adobe Flex Builder是一款集成开发环境(IDE),提供了图形化的布局编辑器和代码提示,极大地简化了Flex应用的开发流程。 7. ** BlazeDS**:Flex 3.0 集成了BlazeDS服务,这是一个服务器端的...

    flex2中文学习资料

    Adobe Flex Builder是开发Flex应用的主要工具,它提供了一个集成的开发环境,包括代码编辑器、调试器和预览功能。通过这个IDE,开发者可以更高效地构建、测试和优化Flex2应用。 总的来说,这个压缩包提供了学习...

Global site tag (gtag.js) - Google Analytics