2009-04-22 59 views
4

我試圖在日文網站上的閃存中的動態文本字段上實現抗鋸齒。這些文本字段的內容不是固定的數據。Flash:動態文本字段上的抗鋸齒字符,不包含嵌入字體,日文

我沒有嵌入字體的選項,因爲嵌入所有字符將導致非常沉重的swf文件(3000kb +僅用於字體)。這是因爲日語中有大量獨特的字符(字面意思是數千)。

基本上,使用動態文本框的任何Flash網站面臨着同樣的選擇:

  1. 保持文件大小下來,使用 只有設備字體(不 抗鋸齒)
  2. 力3MB +字體下載到用戶 顯示平滑的反鋸齒字體。

我問過一些日本朋友,他們說「Shoganai!」 (翻譯:「不能幫助」)。任何人有想法?

ps:不幸的是,Silverlight也不是一個選項。

回答

4

真的很愚蠢的'解決方法',我敢肯定,它會得到downvoted,但由於flash.text.TextField繼承flash.display.DisplayObject,你可以使用內置的過濾器,如flash.filters.Blur以水平和垂直方式將文本模糊半個像素。

這將消耗更多的CPU。

編輯: 經過CS4的一點點工作,我發現它完美的方式來做到這一點沒有額外的CPU開銷!結果看起來像「靜態文本」渲染一樣。我相信,根據CS3,我也會採用類似的選擇。

選中文本時,在屬性下選擇「Anti-alias」並選擇「Custom Anti-alias」。將厚度設置爲100,將銳度設置爲0.這對我來說是個訣竅!

+0

嗯,我正在尋找的想法所以這一切都很好:) – sthg 2009-04-23 06:12:08

+0

輝光1像素與1000%的強度對比色也將是不錯的設備字體 – Unreality 2009-05-29 05:09:45

+0

哈哈,好主意LiraNuna。我剛剛將一個1.25px blurX和blurY(質量:低)添加到11pt arial設備文本框。它實際上在Mac和PC上看起來都不那麼糟糕。 – taber 2010-03-14 04:33:21

0

運行時字體如何嵌入。

您可以在背景中加載日文字體的同時以設備字體開始。 加載日文字體後,您會打電話將字體更新爲加載的字體並進行嵌入。

退房GAIA框架,便於運行嵌入字體,因爲它是內置的。

進行更新的一部分,我寫的記錄字體的陣列,它的文本格式。 然後,當加載一個字體時,它會引用循環並更新註冊到它的所有文本字段的數組。

似乎工作。

Shoganai是否是KOP出來...... ganbatte一路走好!@

0

上LiraNuna的想法之上....

我看到一個article沿着類似的路徑,但他們旨在做掩蔽以及...他們建議繪製movieclip位圖。這也可能釋放CPU,因爲你的過濾器只能用於初始渲染,然後你可以擺脫它們。

1

有許多可行的事情,但沒有一個可能是你喜歡的。

  • 升級至Flash 10的字體是不抗鋸齒的問題是Windows的只有:Linux和MacOS兩種抗混疊設備字體正確反正。現在,從Flash 10開始,它也可以在Windows上工作,但是需要編譯Flash 10才能使用。如果您可以負擔目標Flash 10,這可能是最好的方法。
  • 限制您可以使用的字符數,並只嵌入所需的字符。這將適用於任何Flash版本,但在許多情況下可能不實用。
  • 放棄並使用設備字體:如果上述兩種方式在您的情況下都不可行,我認爲這實際上是一種守望愛的情況。