2010-09-02 36 views
5

好吧,這是我的問題。我在運行時從不同的域中引入了幾個SWF(我們使用的是CDN)。在SWF中有一些共享字體。動態RSL URL。可能嗎?

我試圖儘量減少文件大小,所以這意味着要麼不在任何這些SWF中嵌入字體,並在運行時設置所有的TextFormat。這是非常不切實際的,很容易錯過其中的一些。

另一種更好的選擇是使用運行時共享庫​​來提取字體,但這需要絕對URL(違背了使用CDN的概念)或相對URL(這違背了使用RSL的目的首先,因爲無論如何都會下載這些資源幾次)。

理想情況下,我希望能夠在運行時告訴每個SWF在何處拉入字體,併爲它們提供所有相同的動態URL。

我找不到任何遇到類似情況的人,所以我不確定這是否可以完成,但是我發現大多數AS3問題都在這裏解決,所以我希望有人知道這是很好的解決方案。

還是有第三個選項,我不考慮?

回答

0

是,你有這樣的選擇,讀this

+0

對不起,我想我對這個問題不夠清楚。 除非我誤解了那篇文章,那不是我所需要的。 需要在運行時設置其RSL URL的SWF在Flash中創建(藝術家將它用於GUI),而不是Flash構建器。另外,URL需要在運行時設置。這取決於用戶的位置等等。 – Eoin 2010-09-03 17:51:11

+0

@Eoin,你問了一個很好的問題,因爲它對於平臺的成長非常重要,所以我們應該研究用一些基本RSL重寫應用程序加載器的方式,並定義所有其他RSL。因此,深入搜索這種代碼,稍後我會加入。謝謝。 – Eugene 2010-09-04 02:26:10

2

我們有這種確切的問題,最後用一個解決方案上來。它不漂亮,但它會起作用。基本思想是當你上傳你的文件時,你忽略RSL並用空白的swf替換它,而是從動態swf手動加載RSL的內容。

我張貼了關於我們如何在這裏解決它: http://blog.bluemammothgames.com/2010/10/runtime-shared-libraries-preload-and.html

如果您有任何疑問,請隨時到這裏或者那裏ping通我。據我所知,沒有乾淨的方式來做到這一點,但這個黑客行之有效。