/// <summary> /// Reads /// <see cref="Tesseract.Pix"/> /// from input file or, if /// this is not possible, reads input file as /// <see cref="System.Drawing.Bitmap"/> /// and then converts to /// <see cref="Tesseract.Pix"/>. /// </summary> /// <param name="inputFile"> /// input image /// <see cref="System.IO.FileInfo"/> /// </param> /// <returns> /// Pix result /// <see cref="Tesseract.Pix"/> /// object from /// input file /// </returns> internal static Pix ReadPix(FileInfo inputFile) { Pix pix = null; try { System.Drawing.Bitmap bufferedImage = iText.Pdfocr.Tesseract4.ImagePreprocessingUtil.ReadImageFromFile(inputFile ); if (bufferedImage != null) { pix = TesseractOcrUtil.ConvertImageToPix(bufferedImage); } } catch (Exception e) { // NOSONAR LogManager.GetLogger(typeof(iText.Pdfocr.Tesseract4.ImagePreprocessingUtil)).Info(MessageFormatUtil.Format (Tesseract4LogMessageConstant.CANNOT_CONVERT_IMAGE_TO_PIX, inputFile.FullName, e.Message)); } if (pix == null) { try { pix = Tesseract.Pix.LoadFromFile(inputFile.FullName); } catch (Exception e) { // NOSONAR LogManager.GetLogger(typeof(iText.Pdfocr.Tesseract4.ImagePreprocessingUtil)).Info(MessageFormatUtil.Format (Tesseract4LogMessageConstant.CANNOT_CONVERT_IMAGE_TO_PIX, inputFile.FullName, e.Message)); } } return(pix); }