| Author |  Topic  |  | 
              
                | brandonbrown
   
 
                USA37 Posts
 | 
                    
                      |  Posted - Jan 23 2022 :  11:42:34     
 |  
                      | For some unknown reason, adding a simple string to the InfoText, for a 500 image IEMulti Imagelist is taking a super long time, like 1 second per thumbnail. 
 It is not a 32/64 bit issue, but rather in  my production application taking forever long.
 
 When I do this in another simple app just doing it, the process does not take that long.
 
 Image Statistics: 66mb in size, 496 TIFF images inside the file
 Any help/hints/issues with the following code?
 
 // 500 page document
 Stopwatch myTimer = new Stopwatch();
 long loadTime=0;
 long thumbNailTime=0;
 
 myTimer.Start();
 ieMulti1.ImageList.LoadImages(@"C:\batches\20220120-3333-0001.tif");
 myTimer.Stop();
 loadTime = myTimer.ElapsedMilliseconds;
 myTimer.Reset();
 
 ImageInfoClass imginfo;
 IOParams imgIOParams;
 
 
 for (int i = 0; i < ieMulti1.ImageList.ImageCount; i++)
 {
 //imgIOParams = ieMulti1.ImageList.GetIOParams(i);
 imginfo = ieMulti1.ImageList.GetImageInfo(i);
 imginfo.InfoText = i.ToString();
 
 }
 
 myTimer.Stop();
 thumbNailTime = myTimer.ElapsedMilliseconds;
 this.Text = "Load time: " + loadTime.ToString() + " Thumbnail Time: " + thumbNailTime.ToString();
 
 
 |  | 
              
                | brandonbrown
   
 
                USA37 Posts
 | 
                    
                      |  Posted - Jan 23 2022 :  12:30:57     
 |  
                      | I have a workaround, but I don't really want to use it. 
 if I make the iemulti window not visible, it is significantly faster, but gives the application a blank window when doing so.
 
 ieMulti1.Visible=false;
 
 <Thumbnail code here>
 
 ieMulti1.Visible=true;
 
 |  
                      |  |  | 
              
                | xequte
      
 
                39218 Posts |  | 
              
                | brandonbrown
   
 
                USA37 Posts
 | 
                    
                      |  Posted - Jan 24 2022 :  17:32:46     
 |  
                      | Thanks Nigel! I like this better, however it is no faster, but the screen isn't blank! Thanks again! 
 I rewrote a read only console tool to read the TIFF file name from the image file, and it is slow also, obviously not a GUI component here. Is it the way I am doing the read? 1009 page TIFF file takes 55 seconds?
 
 1000 - Name: 117-118-0016 Number: 0
 1001 - Name: 117-118-0016 Number: 0
 1002 - Name: 117-118-0017 Number: 0
 1003 - Name: 117-118-0017 Number: 0
 1004 - Name: 117-118-0018 Number: 0
 1005 - Name: 117-118-0018 Number: 0
 1006 - Name: 117-118-0019 Number: 0
 1007 - Name: 117-118-0019 Number: 0
 1008 - Name: 117-118-0020 Number: 0
 Reading TIFF Pagenames on 1009 images took 55 seconds.
 
 Stopwatch myTimer = new Stopwatch();
 myTimer.Start();
 IEMulti img = new IEMulti();
 inFiles.ForEach(delegate (string fileName)
 {
 
 img.ImageList.LoadImages(fileName);
 Console.WriteLine("{0} Pages: {1}", fileName, img.ImageList.ImageCount);
 
 for (int i = 0; i < img.ImageList.ImageCount; i++)
 {
 IOParams myIOParams = img.ImageList.GetIOParams(i);
 Console.Write("{0} - Name: {1} Number: {2} ", i, myIOParams.TIFF_PageName, myIOParams.TIFF_PageNumber);
 
 Console.WriteLine();
 
 
 }
 
 
 });
 myTimer.Stop();
 Console.WriteLine("Reading TIFF Pagenames on {0} images took {1} seconds.", img.ImageList.ImageCount, (myTimer.ElapsedMilliseconds / 1000).ToString());
 |  
                      |  |  | 
              
                | xequte
      
 
                39218 Posts | 
                    
                      |  Posted - Jan 24 2022 :  18:08:35     
 |  
                      | Hi 
 Is the slowness in the loading (expected) or the reading of params (unexpected)?
 
 Nigel
 Xequte Software
 www.imageen.com
 
 |  
                      |  |  | 
              
                | brandonbrown
   
 
                USA37 Posts
 | 
                    
                      |  Posted - Jan 24 2022 :  18:43:35     
 |  
                      | Again Nigel, you are right. It's a 125mb file, so it's the loading, not of the params. I guess that's just how long it takes to read a large file, or decompress it or something. |  
                      |  |  | 
              
                | brandonbrown
   
 
                USA37 Posts
 | 
                    
                      |  Posted - Jan 24 2022 :  19:01:05     
 |  
                      | Any suggestions on reading a 100mb into the tool quickly? 1000 pages is the limit to what I want them to do. The concept of saving a 'snap' is a HUGE savior! 
 |  
                      |  |  | 
              
                | xequte
      
 
                39218 Posts | 
                    
                      |  Posted - Jan 24 2022 :  19:57:26     
 |  
                      | Hi 
 You can use LoadSnapshot() and SaveSnapshot().
 
 Or you can load images on demand using the format fullfilepath::imageindex, e.g.
 
 ieMulti1.ImageList.AppendImage(@"C:\batches\20220120-3333-0001.tif::0");
 ieMulti1.ImageList.AppendImage(@"C:\batches\20220120-3333-0001.tif::1");
 ieMulti1.ImageList.AppendImage(@"C:\batches\20220120-3333-0001.tif::2");
 etc.
 
 
 Nigel
 Xequte Software
 www.imageen.com
 
 |  
                      |  |  | 
              
                |  |  Topic  |  |