Ejemplo n.º 1
0
 /// <summary>
 /// 设置图片尺寸范围
 /// </summary>
 /// <param name="MinSize">最小尺寸</param>
 /// <param name="MaxSize">最大尺寸</param>
 /// <returns></returns>
 public static bool setSizeRange(ImgInputData inputData, int MinSize, int MaxSize)
 {
     if (MinSize > 0 && MaxSize >= MinSize)
     {
         inputData.MinSize = MinSize;
         inputData.MaxSize = MaxSize;
         return(true);
     }
     return(false);
 }
Ejemplo n.º 2
0
        //public ImgInputData inputData { get; }

        /// <summary>
        ///  设置图片尺寸范围
        /// </summary>
        /// <param name="MinX">最小宽度</param>
        /// <param name="MaxX">最大宽度</param>
        /// <param name="MinY">最小高度</param>
        /// <param name="MaxY">最大高度</param>
        /// <returns></returns>
        public static bool setXYRange(ImgInputData inputData, int MinX = 0, int MaxX = int.MaxValue, int MinY = 0, int MaxY = int.MaxValue)
        {
            if (MinX > 0 && MinX <= MaxX && MinY > 0 && MinY <= MaxY)
            {
                inputData.MinX = MinX;
                inputData.MinY = MinY;
                inputData.MaxX = MaxX;
                inputData.MaxY = MaxY;
                return(true);
            }
            return(false);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 将下载好的图片进行二次筛选
        /// </summary>
        /// <param name="imageSources">将待筛选的目标图片传入</param>
        /// <param name="imgInputData">筛选条件</param>
        /// <returns>将筛选结果返回</returns>
        public static List <ImgResource> FilterImages(Project project)
        {
            List <ImgResource> imgResourcesRow       = project.ImgResourcesContainer.RowImages;
            List <ImgResource> imgResourcesProcessed = project.ImgResourcesContainer.ProcessedImages;
            ImgInputData       imgInputData          = project.ImgInputData;

            imgResourcesProcessed.Clear();
            // 按照宽度、高度、大小、格式对图片进行筛选
            foreach (ImgResource img in imgResourcesRow)
            {
                if (img == null)
                {
                    continue;
                }
                if (img.Img == null)
                {
                    continue;
                }
                if (imgInputData == null)
                {
                    continue;
                }
                // 宽、高度筛选
                if (img.Img.Width < imgInputData.MinY ||
                    img.Img.Width > imgInputData.MaxY ||
                    img.Img.Height < imgInputData.MinX ||
                    img.Img.Height > imgInputData.MaxX)
                {
                    continue;
                }

                // 图片文件大小筛选
                if (img.Img.PropertyItems.FirstOrDefault().Len < imgInputData.MinSize ||
                    img.Img.PropertyItems.FirstOrDefault().Len > imgInputData.MaxSize)
                {
                    continue;
                }

                // 图片格式筛选
                if (!imgInputData.TargetImgFormat.Contains(img.Img.RawFormat))
                {
                    continue;
                }

                // 如果三者均满足条件,加入到筛选列表
                imgResourcesProcessed.Add(img);
            }

            return(imgResourcesProcessed);
        }
Ejemplo n.º 4
0
 public static void setUrl(ImgInputData inputData, string Url)
 {
     inputData.Url = Url;
 }
Ejemplo n.º 5
0
 /// <summary>
 /// 添加一组图片格式
 /// </summary>
 /// <param name="Format">图片格式字符串的数组</param>
 public static void addImgFormat(ImgInputData inputData, ImageFormat[] Format)
 {
     inputData.TargetImgFormat.AddRange(Format);
 }