Пример #1
0
 public static IPdf2Image DefaultInstance()
 {
     if (_instance == null)
     {
         lock (_lockerObject)
         {
             if (_instance == null)
             {
                 _instance = new Pdf2Image();
             }
         }
     }
     return(_instance);
 }
Пример #2
0
        public IEnumerable <CImage> ImportFromFile(string path)
        {
            List <CImage> results = new List <CImage>();
            string        ext     = Path.GetExtension(path);

            if (Pdf2Image.FileTypeSupport.Contains(ext))
            {
                IPdf2Image            convert = Pdf2Image.DefaultInstance();
                List <Emgu.CV.IImage> imgs    = convert.GetImages(path);
                results.AddRange(imgs.Select(img => new CImage(_detectPaper != null ? _detectPaper.DetectAndExtractPaperArea(img) : img)));
            }
            else if (CImage.ImageTypeSupport.Contains(ext))
            {
                if (_detectPaper != null)
                {
                    results.Add(new CImage(_detectPaper.DetectAndExtractPaperArea(path)));
                }
                else
                {
                    results.Add(new CImage(path));
                }
            }
            return(results);
        }