| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 491 人关注过本帖
标题:求大神帮改进imagelist缩略图加载效率
只看楼主 加入收藏
dong73
Rank: 1
等 级:新手上路
帖 子:3
专家分:7
注 册:2013-1-24
收藏
 问题点数:0 回复次数:0 
求大神帮改进imagelist缩略图加载效率
程序代码:
 foreach (string image in images)
                    {
                        progressBar1.Value = progressBar1.Value + 1;
                        FileStream files = new FileStream(image, FileMode.Open, FileAccess.Read, FileShare.Read);
                        byte[] imgByte = new byte[files.Length];
                        files.Read(imgByte, 0, imgByte.Length);
                        StreamReader r = new StreamReader(files, Encoding.ASCII);
                        

                        if (imgByte[imgByte.Length - 1] != 0)
                        {
                            Bitmap Temp = new Bitmap(Image.FromStream(files));
                            files.Close();
                            narTemp = new Bitmap(imageList1.ImageSize.Width, imageList1.ImageSize.Height);
                            Graphics g = Graphics.FromImage(narTemp);
                           
                            Picsize = FitSize(Temp.Width, Temp.Height, narTemp.Width, narTemp.Height);
                            Point tempxy;
                            tempxy = PointXY(Picsize, narTemp.Width, narTemp.Height);
                            g.DrawImage(Temp, 0, 0, (int)(Temp.Width * Picsize.fitsize), (int)(Temp.Height * Picsize.fitsize));

                            imageList1.Images.AddStrip(narTemp);
                            if (progressBar1.Value == images.Count)
                            {
                                label3.Text = "加载完毕!";
                                label3.Refresh();
                            }
                            else
                            {
                                label3.Text = "已经加载" + progressBar1.Value.ToString() + "";
                                label3.Refresh();
                            }
                            g.Dispose();
                            Temp.Dispose();
                            GC.Collect();

                        }
                    }
由于imagelist自动适配会使得图像走形 所以我将图像适配imagelist大小后重新绘制到imagelist中 但是问题是读取1MB以上的图像明显吃力 请问如何解决这一问题?
搜索更多相关主题的帖子: images files 缩略图 
2013-01-24 17:34
快速回复:求大神帮改进imagelist缩略图加载效率
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036238 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved