2013-03-07 2 views
0

Предположим, у меня есть SVG-файл, и я хотел бы сделать его Ext.draw.Component, как мне сделать SVG stop-opacity перевести на Ext.draw.Component Пункт?Преобразование SVG в Ext.draw.Component Gradient

Например, из файла SVG, я бы что-то вроде так:

<linearGradient ="linearGradient2920"> 
    <stop 
    id="stop2922" 
    style="stop-color:#000000;stop-opacity:1" 
    offset="0" /> 
    <stop 
    id="stop2924" 
    style="stop-color:#000000;stop-opacity:0" 
    offset="1" /> 
</linearGradient> 

Что бы она выглядеть в Ext.draw.Component? Будет ли это так переводиться?

gradients: [{ 
      { 
      id: 'linearGradient2920', 
      angle: 100, 
      stops: { 
       0: { 
        color: '#000000', 
        opacity: 100 //<---Is this even valid?? 
       }, 
       100: { 
        color: '#000000', 
        opactiy: 0 //<---Is this even valid?? 
       } 
      } 
     }] 

ответ

0

Я просто нашел в исходном коде Ext.js для SVG - http://docs.sencha.com/ext-js/4-1/source/Svg.html

for (i = 0; i < ln; i++) { 
      stop = gradient.stops[i]; 
      stopEl = me.createSvgElement("stop"); 
      stopEl.setAttribute("offset", stop.offset + "%"); 
      stopEl.setAttribute("stop-color", stop.color); 
      stopEl.setAttribute("stop-opacity",stop.opacity); 
      gradientEl.appendChild(stopEl); 
     } 

Примечание к stop.opacity. Это, по-видимому, указывает на то, что для использования непрозрачности должно быть справедливо, как в исходном сообщении, однако я не уверен, что оно находится в масштабе 1,0 или 100.

+0

stop-opacity равно 0..1 или 0% .. 100%, см. Спецификацию: http://www.w3.org/TR/SVG11/pservers.html#StopOpacityProperty –