2012-06-13 28 views
1

我爲我的Eclipse應用程序創建了一個CustomizableIntroPart。我使用XHTML定義了我的頁面,它工作正常。但處理圖像會造成一些麻煩。我使用IIntroXHTMLContentProvider生成了我的內容,但是當我生成一個img-tag並設置了src屬性時,圖像未顯示出來。圖像可能在執行或其他一些對XHTML頁面有貢獻的插件中。Eclipse中的圖像CustomizableIntroPart未顯示

Element img = dom.createElement("img"); 
img.setAttribute("src", getApplicationIcon(element)); 
img.setAttribute("class", "appIcon"); 
div.appendChild(img); 

我找不到關於如何指定源的任何文檔。我試過類似

plugin:my.plugin.id/icons/foo.png 

任何幫助,將不勝感激。

回答

2

最後,這是一個Web瀏覽器將顯示您的XHTML內容,所以它沒有「插件貢獻」的概念吧?

但是您使用的是代碼來處理這些貢獻,它們來自您的插件或其他插件?

如果是這樣的話,我會使用org.osgi.framework.Bundle.getEntry(String)來獲取圖片的網址,然後org.eclipse.core.runtime.FileLocator.toFileURL(URL)將其轉換爲file:///網址。然後使用該URL來引用您的圖標。

+0

就是這樣。非常感謝。我正在使用FileLocator.resolve()來獲取文件URI。在eclipse中啓動應用程序時它工作正常。但是如果產品出口,圖像又被破壞了。 toFileURL的作品! –

0

我從來沒有使用CustomizableIntroPart之前,但使用的platform:/plugin/...前綴我已經成功地提到在不同的插件圖像,像這樣:

platform:/plugin/my.plugin.id/icons/foo.png 
+0

我已經試過了,它不起作用。不過謝謝。 –