Я использую LocalReport.Render("PDF")
для создания PDF-файла из файла RDLC.
Процесс пока работает нормально.
Я получаю файл PDF, который позволяет мне выбрать большинство текста и скопировать / вставить его в блокнот или любой другой текстовый редактор (что является своего рода доказательством того, что он по существу машиночитаемый - так он содержит текст, а не изображения текста).
К сожалению, файл PDF, который я генерирую, является немецким (язык: de-DE) и может содержать умлауты и аналогичные ÄÖÜ,äöü,ß
.
Когда эти символы являются частью определенного поля в PDF, это поле будет выводиться как изображение (или, по крайней мере, не текст) и, следовательно, не будет копироваться / вставляться.
Я попытался поиграть с перегрузкой LocalReport.Render(renderType, deviceInfo)
безрезультатно, поэтому теперь мне нужен совет, как анализировать и решать мою проблему.
Обновление
После нескольких часов анализа проблемы стало очевидно, что PDF, созданный из LocalReport, в порядке. Проблема в том, что я использую PDF-Rasterizer (Spire.PDF), который не может правильно прочитать файл PDF.
Я отключил Spire.PDF для RawPrint, который по сути P / вызывает WinAPI для прямой отправки содержимого PDF-файла на принтер в виде потока байтов.
К сожалению, это будет работать только с принтерами, которые имеют возможность прямой печати PDF.