Преобразование HTML в Pdf в ядре asp.net с использованием DinkToPdf не работает в Ubuntu - PullRequest
0 голосов
/ 14 марта 2019

Я пытаюсь преобразовать HTML-документ в pdf, используя DinkToPdf в asp.net Core webapi версии 2.1:

Это мой метод:

 public async Task<ActionResult> ToPdf()
    {
         var loader = new CustomAssemblyLoader();
         var assemblyPath = Directory.GetCurrentDirectory();
         loader.LoadUnmanagedLibrary($@"{assemblyPath}/libwkhtmltox");

            var doc = new HtmlToPdfDocument()
            {
                GlobalSettings = {
                    Orientation = Orientation.Landscape,
                    PaperSize = PaperKind.A4,
                    Out = "wwwroot/test.pdf"
                },
                Objects = {
                    new ObjectSettings() {
                        PagesCount = true,
                        HtmlContent = @"Lorem ipsum dolor sit amet, consectetur adipiscing elit. In consectetur mauris eget ultrices  iaculis. Ut                               odio viverra, molestie lectus nec, venenatis turpis.",
                        WebSettings = { DefaultEncoding = "utf-8" },
                        HeaderSettings = { FontSize = 9, Right = "Page [page] of [toPage]", Line = true, Spacing = 2.812 }
                    }
                }
            };

            _pdfConverter.Convert(doc);

    }

Я скопировал libwkhtmltox.so и libwkhtmltox.dll в корень моего проекта, где находятся все .dll. Установлено sudo apt-get install libgdiplus

Всегда получаю эту ошибку DllNotFoundException: не удалось загрузить общую библиотеку '/ var / www / webapi / webapi / libwkhtmltox' или одну из ее зависимостей. Чтобы помочь диагностировать проблемы с загрузкой, рассмотрите возможность установки переменной среды LD_DEBUG: / var / www / webapi / webapi / libwkhtmltox: не удается открыть общий объектный файл: такого файла или каталога нет

Кстати, если я запускаю проект на windows, то работает отлично !!!

Заранее спасибо !!

...