Невозможно конвертировать PDF файл в текст с помощью IronOCR dll - PullRequest
0 голосов
/ 04 января 2019

Am Использование библиотеки nuget IronOCR для преобразования PDF-файла в текстовый.

Ниже приведен код для этого,

public ActionResult GetFileText(string filepath)
        {
            try
            {
                filepath = Server.MapPath(filepath);

                string[] tokens = filepath.Split('.');

                if (tokens[1] == "pdf")
                {
                    var Ocr = new AdvancedOcr()
                    {
                        CleanBackgroundNoise = false,
                        ColorDepth = 4,
                        ColorSpace = AdvancedOcr.OcrColorSpace.Color,
                        EnhanceContrast = false,
                        DetectWhiteTextOnDarkBackgrounds = false,
                        RotateAndStraighten = false,
                        Language = IronOcr.Languages.English.OcrLanguagePack,
                        EnhanceResolution = false,
                        InputImageType = AdvancedOcr.InputTypes.Document,
                        ReadBarCodes = true,
                        Strategy = AdvancedOcr.OcrStrategy.Fast
                    };

                    var Results = Ocr.ReadPdf(filepath);
                    var Pages = Results.Pages;
                    var FullPdfText = Results.Text;
                    FullPdfText = HttpUtility.HtmlEncode(FullPdfText).ToString();
                    FullPdfText = "<p>" + FullPdfText;
                    FullPdfText = FullPdfText.Replace("\r\n", @"</p><p>");
                    FullPdfText = FullPdfText.Replace("\r", "<\r>");
                    ViewData["FileViewer"] = HttpUtility.HtmlEncode(FullPdfText);
                    return Content(FullPdfText);
                }
                else
                {
                    var Ocr = new AutoOcr();
                    var Result = Ocr.Read(filepath);
                    return Content(Result.Text);
                }



            }
            catch (Exception ex)
            {
                return Content(ex.Message.ToString());
            }
        }

Этот код отлично работает, когда вы просто запускаете на Visualstudio. Но когда вы размещаете все решение для IIS, возникает исключение: «IronOcr.ReadPdf - невозможно извлечь изображения из PDF, возможно, оно зашифровано, не является допустимым документом PDF или у вас могут быть недостаточные права доступа к файлу:» дляPDF файлыА при преобразовании файла изображения выдается следующая ошибка: «Инициализатор типа для« NativeMagickSettings »вызвал исключение». Эта библиотека, кажется, платная, но я использую пробную или демонстрационную версию, может ли это быть причиной?

...