public static IPdf2Image DefaultInstance() { if (_instance == null) { lock (_lockerObject) { if (_instance == null) { _instance = new Pdf2Image(); } } } return(_instance); }
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); }