public static float GetPercentage(ResizeStrategyParameter parameter) { ResizeContext context; switch (parameter.Type) { case 111: context = new ResizeContext(new ProcessResizeStrategy()); break; case 142: context = new ResizeContext(new SubProcessResizeStrategy()); break; case 79: //system context case 81: context = new ResizeContext(new SystemArchitectureResizeStrategy()); break; //case 81: // context = new ResizeContext(new SystemContextResizeStrategy()); // break; default: context = new ResizeContext(new GenericResizeStrategy()); break; } return context.GetPercentage(parameter); }
public static float GetPercentage(ResizeStrategyParameter parameter) { ResizeContext context; switch (parameter.Type) { case 111: context = new ResizeContext(new ProcessResizeStrategy()); break; case 142: context = new ResizeContext(new SubProcessResizeStrategy()); break; case 79: //system context case 81: context = new ResizeContext(new SystemArchitectureResizeStrategy()); break; //case 81: // context = new ResizeContext(new SystemContextResizeStrategy()); // break; default: context = new ResizeContext(new GenericResizeStrategy()); break; } return(context.GetPercentage(parameter)); }
public override float GetPercentage(ResizeStrategyParameter parameter) { float percent = 0; if (parameter.Width > 30000) { percent = 9; } else if (parameter.Width > 25000 && parameter.Width < 30000) { percent = 7; } else if (parameter.Width > 20000 && parameter.Width < 25000) { percent = 5; } else if (parameter.Width > 15000 && parameter.Width < 20000) { percent = 5; } else if (parameter.Width > 10000 && parameter.Width < 15000) { percent = 5; } else if (parameter.Width > 5000 && parameter.Width < 10000) { percent = 15; } else if (parameter.Width > 3000 && parameter.Width < 5000) { percent = 95; } else { percent = 100; } if (parameter.IsReport) { percent += 7; } return(percent); }
public override float GetPercentage(ResizeStrategyParameter parameter) { float percent = 0; if (parameter.Width > 30000) { percent = 9; } else if(parameter.Width > 25000 && parameter.Width < 30000) { percent = 7; } else if (parameter.Width > 20000 && parameter.Width < 25000) { percent = 5; } else if (parameter.Width > 15000 && parameter.Width < 20000) { percent = 5; } else if (parameter.Width > 10000 && parameter.Width < 15000) { percent = 5; } else if (parameter.Width > 5000 && parameter.Width < 10000) { percent = 15; } else if (parameter.Width > 3000 && parameter.Width < 5000) { percent = 95; } else { percent = 100; } if (parameter.IsReport) { percent += 7; } return percent; }
public float GetPercentage(ResizeStrategyParameter parameter) { return this.strategy.GetPercentage(parameter); }
public float GetPercentage(ResizeStrategyParameter parameter) { return(this.strategy.GetPercentage(parameter)); }
public override float GetPercentage(ResizeStrategyParameter parameter) { float percent = 0; switch (parameter.PoolCount) { case 1: percent = (float)4; break; case 2: percent = (float)4.1; break; case 3: percent = 5 * (float)1.2; break; case 4: percent = 7 * (float)1.2; break; case 5: percent = 5 * 2; break; case 6: percent = 6 * (float)1.3; break; case 7: percent = 7 * 2; break; case 8: percent = 8 * 2; break; default: if (parameter.PoolCount > 8) { percent = 20; } else { percent = 0; } break; } if (parameter.IsReport) { percent += (float)7; } return percent; //float ratioHeight = (float)height / (float)width; //float ratioWidth = (float)width / (float)height; ////// use whichever multiplier is smaller ////float ratio = ratioX < ratioY ? ratioX : ratioY; //if (ratioHeight > ratioWidth) //{ // float multiplicand = 4; // if (poolCount >= 4) // { // multiplicand = poolCount; // if (multiplicand > 5) // { // multiplicand = multiplicand * (float).75; // } // } // percent = (float)multiplicand * ratioHeight; // return percent; //} //if (poolCount == 1) //{ // return (float)4.5; //} //if (width > 25000) //{ // percent = 4;// *ratio; //} //else if (width > 20000 && width < 25000) //{ // percent = 5;// *ratio; //} //else if (width > 15000 && width < 20000) //{ // percent = 5; //} //else if (width > 10000 && width < 15000) //{ // percent = 5; //} //else if (width > 5000 && width < 10000) //{ // percent = 55; //} //else if (width > 3000 && width < 5000) //{ // percent = 95; //} //else //{ // percent = 100; //} //return percent; }
private string ResizeImage(float percent) { Image imgToResize = Image.FromFile( PathResolver.MapPath( string.Format(@"Diagrams\wmf_temp\{0}", this.fileName)) ); float nPercent = 0; int sourceWidth = imgToResize.Width; int sourceHeight = imgToResize.Height; ResizeStrategyParameter parameter = new ResizeStrategyParameter() { Type = type, Width = sourceWidth, Height = sourceHeight, PoolCount = poolCount, IsReport = isReport, }; nPercent = percent; int destWidth = (int)(sourceWidth * (nPercent * .01)); int destHeight = (int)(sourceHeight * (nPercent * .01)); Bitmap plain = new Bitmap(destWidth, destHeight); Graphics imageContainer = Graphics.FromImage((Image)plain); imageContainer.InterpolationMode = InterpolationMode.HighQualityBicubic; imageContainer.CompositingMode = CompositingMode.SourceCopy; imageContainer.CompositingQuality = CompositingQuality.HighQuality; imageContainer.SmoothingMode = SmoothingMode.HighQuality; imageContainer.PixelOffsetMode = PixelOffsetMode.HighQuality; imageContainer.Clear(Color.White); imageContainer.DrawImage(imgToResize, 0, 0, destWidth, destHeight); imageContainer.Dispose(); imgToResize.Dispose(); string fileName = FileManager.GetFileName(this.fileName); //excess white space removal Image cropped = WhiteSpaceRemover.AutoCrop(plain); plain = (Bitmap)cropped; //excess white space removal string savePath = string.Empty; if (!isReport) { savePath = string.Format(@"{0}\{1}", PathResolver.MapPath(GlobalStringResource.DiagramsFolder), fileName); } else { savePath = string.Format(@"{0}\{1}", PathResolver.MapPath(GlobalStringResource.SlicedResizedFolder), fileName); } plain.Save(savePath); cropped.Dispose(); plain.Dispose(); return(string.Format( GlobalStringResource.ImageSavePathFormat, isReport ? GlobalStringResource.SlicedResizedFolder : GlobalStringResource.DiagramsFolder, fileName)); }
private string ResizeImage(float percent) { Image imgToResize = Image.FromFile( PathResolver.MapPath( string.Format(@"Diagrams\wmf_temp\{0}", this.fileName)) ); float nPercent = 0; int sourceWidth = imgToResize.Width; int sourceHeight = imgToResize.Height; ResizeStrategyParameter parameter = new ResizeStrategyParameter() { Type = type, Width = sourceWidth, Height = sourceHeight, PoolCount = poolCount, IsReport = isReport, }; nPercent = percent; int destWidth = (int)(sourceWidth * (nPercent * .01)); int destHeight = (int)(sourceHeight * (nPercent * .01)); Bitmap plain = new Bitmap(destWidth, destHeight); Graphics imageContainer = Graphics.FromImage((Image)plain); imageContainer.InterpolationMode = InterpolationMode.HighQualityBicubic; imageContainer.CompositingMode = CompositingMode.SourceCopy; imageContainer.CompositingQuality = CompositingQuality.HighQuality; imageContainer.SmoothingMode = SmoothingMode.HighQuality; imageContainer.PixelOffsetMode = PixelOffsetMode.HighQuality; imageContainer.Clear(Color.White); imageContainer.DrawImage(imgToResize, 0, 0, destWidth, destHeight); imageContainer.Dispose(); imgToResize.Dispose(); string fileName = FileManager.GetFileName(this.fileName); //excess white space removal Image cropped = WhiteSpaceRemover.AutoCrop(plain); plain = (Bitmap)cropped; //excess white space removal string savePath = string.Empty; if (!isReport) { savePath = string.Format(@"{0}\{1}", PathResolver.MapPath(GlobalStringResource.DiagramsFolder), fileName); } else { savePath = string.Format(@"{0}\{1}", PathResolver.MapPath(GlobalStringResource.SlicedResizedFolder), fileName); } plain.Save(savePath); cropped.Dispose(); plain.Dispose(); return string.Format( GlobalStringResource.ImageSavePathFormat, isReport ? GlobalStringResource.SlicedResizedFolder : GlobalStringResource.DiagramsFolder, fileName); }
public override float GetPercentage(ResizeStrategyParameter parameter) { float percent = 0; switch (parameter.PoolCount) { case 1: percent = (float)4; break; case 2: percent = (float)4.1; break; case 3: percent = 5 * (float)1.2; break; case 4: percent = 7 * (float)1.2; break; case 5: percent = 5 * 2; break; case 6: percent = 6 * (float)1.3; break; case 7: percent = 7 * 2; break; case 8: percent = 8 * 2; break; default: if (parameter.PoolCount > 8) { percent = 20; } else { percent = 0; } break; } if (parameter.IsReport) { percent += (float)7; } return(percent); //float ratioHeight = (float)height / (float)width; //float ratioWidth = (float)width / (float)height; ////// use whichever multiplier is smaller ////float ratio = ratioX < ratioY ? ratioX : ratioY; //if (ratioHeight > ratioWidth) //{ // float multiplicand = 4; // if (poolCount >= 4) // { // multiplicand = poolCount; // if (multiplicand > 5) // { // multiplicand = multiplicand * (float).75; // } // } // percent = (float)multiplicand * ratioHeight; // return percent; //} //if (poolCount == 1) //{ // return (float)4.5; //} //if (width > 25000) //{ // percent = 4;// *ratio; //} //else if (width > 20000 && width < 25000) //{ // percent = 5;// *ratio; //} //else if (width > 15000 && width < 20000) //{ // percent = 5; //} //else if (width > 10000 && width < 15000) //{ // percent = 5; //} //else if (width > 5000 && width < 10000) //{ // percent = 55; //} //else if (width > 3000 && width < 5000) //{ // percent = 95; //} //else //{ // percent = 100; //} //return percent; }
public abstract float GetPercentage(ResizeStrategyParameter parameter);