fabric
Version:
Object model for HTML5 canvas, and SVG-to-canvas parser. Backed by jsdom and node-canvas.
2 lines • 861 B
JavaScript
import{isPercent as e}from"../../parser/percent.min.mjs";import{parseGradientUnits as t,parseType as n}from"./misc.min.mjs";function r(e,t){return e.getAttribute(t)}function i(i,a){return function(t,{width:n,height:r,gradientUnits:i}){let a;return Object.entries(t).reduce((t,[o,s])=>{if(s===`Infinity`)a=1;else if(s===`-Infinity`)a=0;else{let t=typeof s==`string`;a=t?parseFloat(s):s,t&&e(s)&&(a*=.01,i===`pixels`&&(o!==`x1`&&o!==`x2`&&o!==`r2`||(a*=n),o!==`y1`&&o!==`y2`||(a*=r)))}return t[o]=a,t},{})}(n(i)===`linear`?function(e){return{x1:r(e,`x1`)||0,y1:r(e,`y1`)||0,x2:r(e,`x2`)||`100%`,y2:r(e,`y2`)||0}}(i):function(e){return{x1:r(e,`fx`)||r(e,`cx`)||`50%`,y1:r(e,`fy`)||r(e,`cy`)||`50%`,r1:0,x2:r(e,`cx`)||`50%`,y2:r(e,`cy`)||`50%`,r2:r(e,`r`)||`50%`}}(i),{...a,gradientUnits:t(i)})}export{i as parseCoords};
//# sourceMappingURL=parseCoords.min.mjs.map