/// ? AutoScale ? Multiplies against largest source size: ( ( source.X | source.Y ) * ( dest / source.X | source.Y ) )<br/>? /// ScaleWidth ( dest * source.X ) static public UPointD Fit(UPointD dest, UPointD source, scaleFlags sf) { UPointD HX = dest / source; if (sf == scaleFlags.autoScale) { return((HX.Y > HX.X) ? source * HX.X : source *HX.Y); } else { return((sf == scaleFlags.sWidth) ? source * HX.X : source *HX.Y); } }
static public FPoint Fit(FPoint dest, FPoint source, scaleFlags f) { FPoint HX = dest / source; if (f == scaleFlags.autoScale) { return((HX.Y > HX.X) ? source * HX.X : source *HX.Y); } else { return((f == scaleFlags.sWidth) ? source * HX.X : source *HX.Y); } }
/// ? AutoScale ? Multiplies against largest source size: ( ( source.X | source.Y ) * ( dest / source.X | source.Y ) )<br/>? /// ScaleWidth ( dest * source.X ) static public DoublePoint Fit(DoublePoint dest, DoublePoint source, scaleFlags sf) { DoublePoint HX = dest / source; if (sf == scaleFlags.autoScale) { return((HX.Y > HX.X) ? source * HX.X : source *HX.Y); } else { return((sf == scaleFlags.sWidth) ? source * HX.X : source *HX.Y); } }
OldImgThumb(secImg ig, Point sz) { siz = SizeFlags.scaledSize; imgSize = sz; imgRef = ig; sf = scaleFlags.autoScale; p = new Pen(Color.White); b = new SolidBrush(Color.Navy); if (imgRef.Attributes.ContainsKey("rotation")) { this.Rotate = imgRef; } else { imgpath = imgRef.Path; } update(); }
public ImgThumb(secImg ig, Point sz, SizeFlags sizef, SmoothingMode smode, InterpolationMode imode, Color Matte) { siz = sizef; SM = smode; IP = imode; mattecolor = Matte; imgSize = sz; imgRef = ig; sf = scaleFlags.autoScale; p = new Pen(Color.White); b = new SolidBrush(Color.Navy); if (imgRef.Attributes.ContainsKey("rotation")) { this.Rotate = imgRef; } else { imgpath = imgRef.Path; } update(); }
OldImgThumb(secImg ig, Point sz, SizeFlags sizef, SmoothingMode smode, InterpolationMode imode, Color Matte) { siz = sizef; SM = smode; IP = imode; mattecolor = Matte; imgSize = sz; imgRef = ig; sf = scaleFlags.autoScale; p = new Pen(Color.White); b = new SolidBrush(Color.Navy); // if (imgRef.Attributes.ContainsKey("thumbMatte")) this.cmat = Color.FromArgb(Int32.Parse(attx["thumbMatte"],System.Globalization.NumberStyles.HexNumber)); if (imgRef.Attributes.ContainsKey("rotation")) { this.Rotate = imgRef; } else { imgpath = imgRef.Path; } update(); }
public ImgThumb(secImg ig, Point sz, ImageSettings settings) { siz = settings.sizing; SM = settings.smoothing; IP = settings.interpolation; mattecolor = settings.matte; imgSize = sz; imgRef = ig; sf = scaleFlags.autoScale; p = new Pen(Color.White); b = new SolidBrush(Color.Navy); if (imgRef.Attributes.ContainsKey("rotation")) { this.Rotate = imgRef; } else { imgpath = imgRef.Path; } update(); }
pRatio(Point c, Point o, scaleFlags sf) { Point skaler = new Point(); float tr = 0; string omax, cmax; if (o.X >= o.Y) { omax = "width"; } else { omax = "height"; //orig } if (c.X >= c.Y) { cmax = "width"; } else { cmax = "height"; //canv } switch (cmax) { case "width": if (omax == cmax) { sf = scaleFlags.sWidth; } else { sf = scaleFlags.sHeight; } break; case "height": if (omax == cmax) { sf = scaleFlags.sHeight; } else { sf = scaleFlags.sWidth; } break; } skale: switch (sf) { case scaleFlags.sHeight: if (o.Y > c.Y) { skaler.Y = c.Y; tr = (float)((float)c.Y / (float)o.Y); skaler.X = (int)Math.Round(o.X * tr); } else { skaler = o; } break; case scaleFlags.sWidth: if (o.X > c.X) { skaler.X = c.X; tr = (float)((float)c.X / (float)o.X); skaler.Y = (int)Math.Round(o.Y * tr); } else { skaler = o; } break; } if ((skaler.X > c.X) | (skaler.Y > c.Y)) { switch (sf) { case scaleFlags.sWidth: sf = scaleFlags.sHeight; goto skale; case scaleFlags.sHeight: sf = scaleFlags.sWidth; goto skale; } } return(skaler); }
/// ? AutoScale ? Multiplies against largest source size: ( ( source.X | source.Y ) * ( dest / source.X | source.Y ) )<br/>? /// ScaleWidth ( dest * source.X ) public static DoublePoint Fit(DoublePoint dest, DoublePoint source, scaleFlags sf) { DoublePoint HX = dest/source; if (sf== scaleFlags.autoScale) return (HX.Y > HX.X) ? source*HX.X : source * HX.Y; else return (sf== scaleFlags.sWidth) ? source*HX.X : source*HX.Y; }
/// ? AutoScale ? Multiplies against largest source size: ( ( source.X | source.Y ) * ( dest / source.X | source.Y ) )<br/>? /// ScaleWidth ( dest * source.X ) public static UPointD Fit(UPointD dest, UPointD source, scaleFlags sf) { UPointD HX = dest/source; if (sf== scaleFlags.autoScale) return (HX.Y > HX.X) ? source*HX.X : source * HX.Y; else return (sf== scaleFlags.sWidth) ? source*HX.X : source*HX.Y; }
private Point pRatio(Point dest, Point source, scaleFlags sf) { Point skaler = new Point(); float tr = 0; string omax, cmax; if (source.X >= source.Y) { omax = "width"; } else { omax = "height"; } if (dest.X >= dest.Y) { cmax = "width"; } else { cmax = "height"; } switch (cmax) { case "width": if (omax == cmax) { sf = scaleFlags.sWidth; } else { sf = scaleFlags.sHeight; } break; case "height": if (omax == cmax) { sf = scaleFlags.sHeight; } else { sf = scaleFlags.sWidth; } break; } skale: switch (sf) { case scaleFlags.sHeight: if (source.Y > dest.Y) { skaler.Y = dest.Y; tr = (float)((float)dest.Y / (float)source.Y); skaler.X = (int)Math.Round(source.X * tr); } else { skaler = source; } break; case scaleFlags.sWidth: if (source.X > dest.X) { skaler.X = dest.X; tr = (float)((float)dest.X / (float)source.X); skaler.Y = (int)Math.Round(source.Y * tr); } else { skaler = source; } break; } if ((skaler.X > dest.X) | (skaler.Y > dest.Y)) { switch (sf) { case scaleFlags.sWidth: sf = scaleFlags.sHeight; goto skale; case scaleFlags.sHeight: sf = scaleFlags.sWidth; goto skale; } } return(skaler); }