htmlsprite - Flash的HTML解析


GPLv2
跨平台
ActionScript

软件简介

htmlsprite 是一个 Flash 用来解析 HTML 文档的开发包。

示例代码:

import com.redurban.HTMLSprite

var htmlsprite:HTMLSprite = new HTMLSprite();
//
//static debug mode on/off
HTMLSprite.debug = true;
//
//Use this event when loading both stylesheet and html file
htmlsprite.addEventListener(HTMLSprite.LOADCOMPLETE, LoadComplete);

//
//This event will be dispatched when the rendering is complete
htmlsprite.addEventListener(HTMLSprite.RENDERCOMPLETE, RenderComplete);

//
//Use this event when loading a stylesheet file only
//Will be dispatched when the load is completed.
htmlsprite.addEventListener(HTMLSprite.STYLECOMPLETE, StyleComplete);

//
//Use this event when loading a external html file only,
//Will be dispatched when the load is completed.
htmlsprite.addEventListener(HTMLSprite.HTMLCOMPLETE, HtmlComplete);

//
//This event will be dispatched when an external link is click
//Example
htmlsprite.addEventListener(HTMLSprite.LINK, Link);

// Example html file + css file
// htmlsprite.Load(“html/indexwithoutcss.htm”, “html/style.css”);

// Example stylesheet file only
// htmlsprite.LoadStylesheet(“html/style.css”);

// Example html file only
// htmlsprite.Load(“html/index.htm”);

// Example html text + stylesheet text

var stylesheet:StyleSheet = new StyleSheet();
stylesheet.setStyle(“.header”,{fontFamily:”Arial”,color:”#000000”});
stylesheet.setStyle(“body”,{fontFamily:”Arial”});
stylesheet.setStyle(“div”,{fontFamily:”Arial”,fontSize:”20px”,backgroundColor:”#efefef”});

htmlsprite.stylesheet = stylesheet;
htmlsprite.html = “Hello
world!”;
htmlsprite.Render();

//
// Link Listener
public function Link(evt:LinkEvent)
{
var linkType:String = evt.data.type;
var linkValue:String = evt.data.value;
var linkTarget:String = evt.data.target;

trace(“linktype:”+linkType+”,linkvalue:”+linkValue+”,linktarget:”+linkTarget);
}
//
// Load Complete Listener
// It’s important that you render the html after the stylesheet
// and html file has been loaded
public function LoadComplete(evt:Event)
{
htmlsprite.Render();
}

// Load Stylesheet Complete
// Do not use this listener when you use an external stylesheet AND external
HTML.
// You can use then the LoadComplete Example

public function StyleComplete(evt:Event)
{
htmlsprite.html = “hello
world”;
htmlsprite.Render();
}

// Load HTML Complete
// Do not use this listener when you use an external stylesheet AND external
HTML.
// You can use then the LoadComplete Example

public function HtmlComplete(evt:Event)
{
htmlsprite.stylesheet = stylesheet;
htmlsprite.Render();
}

// Render complete
// At this point it’s safe to determine width and height of the sprite
// and add it to the displaylist

public function RenderComplete(evt:Event)
{
addChild(htmlsprite);
}