2009-06-12 64 views
7

是否有任何GWT部件,讓我:GWT客戶端圖像裁剪和調整

  • 選擇圖像的一部分,然後檢索選擇區域?
  • 調整圖像大小然後給我更新的大小?

以上內容也應該反映在瀏覽器中。

+3

所以是你能得到它的解決方案嗎?我也在尋找相同的功能。 – Barry 2010-10-26 23:05:58

+2

@bhargava:對不起,沒有運氣。 – 2010-10-27 07:18:29

回答

7

據我所知,GWT客戶端代碼不能直接修改圖片,但圖片控件可以設置爲僅顯示圖片的一部分。您可以使用constructorImage(java.lang.String url, int left, int top, int width, int height)進行此操作,其中widthheight是可見框的尺寸,而不是圖像本身。

但是,這不允許您調整大小然後裁剪。爲了做到這一點,您可以先調整圖像大小,然後將其放在絕對面板中進行裁剪。

AbsolutePanel testPanel = new AbsolutePanel(); 
Image image = new Image("path/image.jpg"); 
image.setWidth("1000px"); 
testPanel.add(image,-100,-100); 
testPanel.setPixelSize(300,300); 

我很抱歉,如果這不完全是你要找的,但它是我有最好的答案。

+3

這是我想要做的一部分,但選擇應基於用戶操作,例如, Photoshop中。 – 2009-06-12 14:21:19

+1

那麼,如果您希望用戶能夠將裁切值輸入到文本框中,則可以使用ChangeHandler將圖像的位置和麪板的大小更新爲文本框的值。如果您希望用戶能夠拖動框並根據該框的尺寸進行裁剪,則可能需要拖放'n拖放庫。 – DLH 2009-06-12 14:45:06

3

您還可以,如果你想讓它與setPixelsSize()

例如縮放加載圖像類型作爲DataResource代替ImageResource

... 

@Source("uploading.gif") 
DataResource uploadingIcon(); 

... 

Image uploadingGif = new Image(RESOURCE.uploadingIcon().getUrl()); 
uploadingGif.setPixelSize(25, 25); 
1

感謝 ImageResource有同樣的方法使用getURL()我用它爲我工作..嘗試這個它的工作,我們可以以兩種方式無論是作爲URL路徑或ImageResource現在使用的圖片..