2010-10-20 44 views
3

如何根據raphael中的返回圖像動態設置圖像大小比例?如何根據raphael中的返回圖像動態設置圖像大小比例?

下面是一些代碼給你一個想法:

var viewer = Raphael(0,0,scrWidth, scrHeight); 
viewer.image(dynamicUrl, 140, 140,300, scaledHeight); 

謝謝

+0

我不太明白你的問題。您是否在保持寬高比的同時縮放圖像?或者你是否試圖查詢返回的圖像的縱橫比,然後用這些信息做些什麼? – jbeard4 2010-10-20 21:08:27

+0

嗨,我試圖將圖像添加到正確縮放的紙張。我會更新這個例子,希望這會讓它更清晰。謝謝:) – 2010-10-21 08:33:13

回答

5

您可以加載圖片的DOM之外,並得到其尺寸......你可以把這個函數中:

var myImg = new Image(); 
myImg.src = dynamicUrl; 
myImg.onload = function() { 
    var width = myImg.width; 
    var height = myImg.height; 
    var scale = 0.5; // for example 

    var viewer = Raphael(0,0,width, height); // or whatever other size 
    viewer.image(dynamicUrl, 0, 0, width*scale, height*scale); // scale image 
     // after the image is in the viewer you can use .scale() 
} 

jsFiddle

現在,你可以把或MUL最終都要按比例調整widthheight。確保你注意時間。

而且,一旦圖像是拉斐爾,你可以使用.scale()

+0

謝謝,我想知道如果我需要使用DOM來做到這一點。 – 2010-10-22 08:51:16

+0

@DaveTaylor這是一個典型的javascript特徵。您無法訪問文件porperties或文件系統中的其他任何內容,而不是使用html5拖放操作 – mrzmyr 2011-12-28 01:01:03

相關問題