專利名稱:Flash輕量圖文混排的制作方法
技術(shù)領(lǐng)域:
RIA(Rich Internet AppIication)WebGame富媒體網(wǎng)絡(luò)應(yīng)用程序及其網(wǎng)頁游戲
背景技術(shù):
Adobe Flash Player開發(fā)者Adobe Systems (早期由 Macromedia 開發(fā))初始版本1996年穩(wěn)定版本10. 2. 159. 1操作系統(tǒng) Microsoft Windows, Mac OS X,Linux,Solaris 禾口 Pocket PC平臺(tái)網(wǎng)頁瀏覽器語言簡(jiǎn)體中文、繁體中文、英語、法語、德語、意大利語、日語、波蘭語、西班牙語、朝鮮語[1]類型解釋器,媒體播放器許可協(xié)議 Proprietary freeware EULAAdobe Flash Player是一種廣泛使用的、專有的多媒體程序播放器。它最初由 Macromedia He^, ^ Macromedia ^ Adobe Adobe BBJfR^^R Flash Player 使用的SWF文件可能由Adobe Flash, Adobe Flex或者其他軟件或第三方工具創(chuàng)建。Adobe Flash簡(jiǎn)稱Flash,同時(shí)表示創(chuàng)作程序和播放器。它同時(shí)使用位圖和矢量圖形,利用Actior^eript腳本語言進(jìn)行編程,支持雙向視頻流和音頻流。嚴(yán)格來說,Adobe Flash是創(chuàng)作環(huán)境而Flash Player是運(yùn)行Flash文件的虛擬機(jī)。但是,通常二者均可稱為 Flash,即Flash同時(shí)有三種含義創(chuàng)作環(huán)境,播放器和程序文件。Flash Player 支持內(nèi)嵌的腳本語言 ActioMcript (AQ。ActioMcript 是一種基于ECM/^cript的腳本語言,可用于編寫Adobe Flash動(dòng)畫和應(yīng)用程序。由于ActioMcript 和JavMcript都是基于ECMAkript語法的,理論上它們互相可以很流暢地從一種語言翻譯到另一種。Adobe Flash Player最初設(shè)計(jì)目的為播放2維矢量動(dòng)量,但至此之后成為適合開發(fā)創(chuàng)造豐富型互聯(lián)網(wǎng)應(yīng)用程序、流視頻音頻的工具。Flash Player使用矢量圖形的技術(shù)來最小化文件的大小以及創(chuàng)造節(jié)省網(wǎng)絡(luò)帶寬和下載時(shí)間的文件。因此Flash成為嵌入網(wǎng)頁中的小游戲、動(dòng)畫以及圖形用戶界面常用的格式FTE(Flash text engine)一種Flash文本引擎,F(xiàn)lash Player 10新支持的文本類的集合的縮寫。他們支持,如提供各行文字的低級(jí)文本功能。這涉及到Unicode字符映射字形字體,字形布局使用 Unicode的雙向文字的算法,確定合適的換行符和渲染成像素的字形。
發(fā)明內(nèi)容
基于 Flash 的原生類庫 flash, text, engine 實(shí)現(xiàn),以 ActionScript3 語言編寫。
以字符集驅(qū)動(dòng)作為核心,所有的圖片和文本都使用字符集表示。比如文本中如果包含[HKimageName]。在默認(rèn)情況下以文字顯示。當(dāng)傳入一個(gè)實(shí)現(xiàn)文本解析器接口的對(duì)象時(shí),會(huì)使用傳遞進(jìn)來的正則表達(dá)式匹配文字區(qū)分普通文本和圖形,然后將圖片以接口所提供的顯示類型渲染和定位。這個(gè)過程完全可控。由于全部由字符集驅(qū)動(dòng)。因此當(dāng)復(fù)制圖片文本時(shí),會(huì)自動(dòng)將圖片轉(zhuǎn)化為以上標(biāo)簽的文本寫法和普通文本一起復(fù)制到剪貼板,粘貼時(shí)再進(jìn)行一次解析識(shí)別其中的圖片內(nèi)容并顯示。一個(gè)圖文混牌組件重點(diǎn)包含這4個(gè)構(gòu)成1. CaretAndSelection光標(biāo)和選擇范圍的圖形構(gòu)造。包含ICustomCaret實(shí)現(xiàn)光標(biāo)接口的成員ICustomSelection實(shí)現(xiàn)文字選擇區(qū)域接口的成員2. TextResolver 文字角軍析器。3. TextMetadata文字邊界元數(shù)據(jù)提供4. TextCore 文本內(nèi)核包含TextEngine構(gòu)建從文本字符串直至最后得到構(gòu)建的文本行的發(fā)生器。iTextLineBuilder 文本行工廠TextAndSegments文本解析得到的分段集合緩存。ContentElementBui Ider 文本元素格式工廠
圖1是緩存隱射表示意2是排序原理3是橫向子定義光標(biāo)選取示意4是縱向字定義光標(biāo)選取示意5-1是文本復(fù)制示意5-2是文本粘貼示意5-3是文本復(fù)制和粘貼結(jié)果示意圖
具體實(shí)施例方式一個(gè)文本字符串被設(shè)定并顯示。首先會(huì)調(diào)用TextCore. text設(shè)定并使用iTextResolver解析文本。識(shí)別到的圖片文本段會(huì)將整個(gè)文本拆分成多個(gè)片段進(jìn)行緩存。緩存中會(huì)存在兩個(gè)印射表并相互對(duì)應(yīng)1. atom印射,圖片文本片段被看作一個(gè)元,其他文字每個(gè)字符看作一個(gè)元。2. char印射,每個(gè)字符看作一個(gè)元構(gòu)建行,這個(gè)過程分為6個(gè)步驟1 設(shè)定文本字體(FontDescript ion)2根據(jù)文本排列方向設(shè)定元素格式(ElementR)rmat)3使用元素格式為所有文字片段創(chuàng)建內(nèi)容元素(TextElement & GraphicElement)
4
4使用組元素(GroupElement)打包并傳遞給iTextLineBuilder構(gòu)建文本行。5根據(jù)排列方式使用不同的文本行布局管理。
權(quán)利要求
1.圖文混排其特征在于多語言特別是對(duì)中文的友好支持;顯示和編輯時(shí)刻的圖文混排支持;圖文混合復(fù)制粘貼的支持;可自定義的閃爍光標(biāo)和文字選擇區(qū)域圖形、圖文混排情況下的字體、行距、圖片旋轉(zhuǎn)和位移設(shè)置;可縱書支持(古代竹簡(jiǎn)從上到下,從右到左的書寫方式)。
2.圖文操作建議性其特征在于文字、圖片、光標(biāo)、文字選擇區(qū)域的自定義;混合復(fù)制粘貼的圖文混排;更輕量,只增加IOK左右大小,目前所知的方案最小也增加100KB文件尺寸;占用更少的內(nèi)存,并且?guī)砀叩姆磻?yīng)速度;字符集驅(qū)動(dòng),可以圖文混合復(fù)制和粘貼, 現(xiàn)有方案是無法將圖片也復(fù)制到剪貼板的。
3.圖文混排自定義其特征在于更漂亮,此方案所有的文字、圖片、光標(biāo)和文字選擇區(qū)域都是可以自定義的,甚至可以將他們制定成動(dòng)畫。
全文摘要
Flash輕量圖文混排發(fā)明基于Adobe公司Flash技術(shù),用于跨平臺(tái)上實(shí)現(xiàn)自由的圖片文本混合顯示。主要針對(duì)性解決6個(gè)問題1.多語言特別是對(duì)中文的友好支持;2.顯示和編輯時(shí)刻的圖文混排支持;3.圖文混合復(fù)制粘貼的支持;4.可自定義的閃爍光標(biāo)和文字選擇區(qū)域圖形;5.圖文混排情況下的字體,行距,圖片旋轉(zhuǎn)和位移設(shè)置;6.可縱書支持(古代竹簡(jiǎn)從上到下,從右到左的書寫方式)。
文檔編號(hào)G06F9/44GK102236552SQ20111013440
公開日2011年11月9日 申請(qǐng)日期2011年5月20日 優(yōu)先權(quán)日2011年5月20日
發(fā)明者余冠云 申請(qǐng)人:深圳市木森動(dòng)漫游戲有限公司