Я работаю над приложением UWP, написанным на c #, и мне нужно конвертировать в pdf: - офисные документы (doc, docx, xls, xlsx, ppt, pptx) - изображения - веб-страницы
Приложение должно работать в архитектурах x86, x64, ARM, ARM64.
Я знаю, что на рынке есть сторонние библиотеки конвертеров, но только некоторые из них работают в контексте ARM64 или в UWP.
Моя идея состоит в том, чтобы использовать (в Windows 10) «принтер Microsoft PDF», который позволяет пользователям сохранять большинство форматов файлов в PDF.
Я нашел много постов, задающих тот же вопрос, нона самом деле ни один из них не содержит полезного ответа.
Код, который я нашел и протестировал, следующий:
PrintDocument doc = new PrintDocument()
{
//DocumentName = safeDir + fileName,
PrinterSettings = new PrinterSettings()
{
// set the printer to 'Microsoft Print to PDF'
PrinterName = "Microsoft Print to PDF",
// tell the object this document will print to file
PrintToFile = true,
// set the filename to whatever you like (full path)
PrintFileName = safeDir + fileName,
}
};
doc.Print();
Приведенный выше код генерирует действительный, но пустой PDF-файл. Как установить исходное содержимое файла?
Например, если у меня есть файл Word с именем myreport.docx , нужно ли преобразовать его в байтовый массив и установить где-нибудь?
Заранее спасибо.