2012-10-12 36 views
0

這是一個相當具體項目的問題,與我的執行svg-edit ..光柵圖像時上傳到SVG編輯意外調整

我已經實現了更新中,「ext-server_opensave.js」(從this問題),以便用戶能夠從其文件系統上傳光柵圖像。

我在與來自中,「ext-server_opensave.js」問題的代碼片段如下:

function importImage(url) { 
     var newImage = svgCanvas.addSvgElementFromJson({ 
      "element": "image", 
      "attr": { 
       "x": 0, 
       "y": 0, 
       "width": 0, 
       "height": 0, 
       "id": svgCanvas.getNextId(), 
       "style": "pointer-events:inherit" 
      } 
     }); 
     svgCanvas.clearSelection(); 
     svgCanvas.addToSelection([newImage]); 
     svgCanvas.setImageURL(url); 
    } 

寬度和高度屬性不會在那裏工作進行設置時,其他屬性做工作。這是一個奇怪的錯誤 - 第一次圖片上傳以原始大小上傳文件,然後每次後續的圖片上傳重新調整爲48x48。如果我在上面粘貼的方法中設置寬度和高度值,我會在這些維度中看到圖像,然後將其調整回48x48。基本上,有一些處理器/方法正在調整svgCanvas.addSvgElementFromJsonsvgCanvas.addToSelection之後的圖像大小,我無法弄清楚在調試javascript幾小時之後。

回答

0

只是胡亂開槍,但也許在管線128加入...

case 'import_img': 
     svgCanvas.setGoodImage(str64); 
     importImage(str64); 
     break; 

setGoodImage()插入新圖像時的默認圖像尺寸。您看到的48x48尺寸是SVG Edit徽標的大小。