Как я могу создавать файлы PDF из списка изображений в WinRT. Я нашел нечто подобное для Windows Phone 8 здесь ("Converting-list-of-images-to-pdf-in-windows-phone-8"> список изображений в pdf в Windows Phone 8") Но я ищу решение для Windows 8. Если кто-то знает об этом, поделитесь со мной своими мыслями.
Создайте файл PDF с изображениями в WinRT
Ответы (4)
Попробуйте http://jspdf.com/
Это должно работать на WinJS, но я не проверял. В приложении XAML вы можете попытаться разместить элемент управления веб-браузера со страницей с поддержкой jsPDF.
ComponentOne теперь выпустила ту же библиотеку PDF, что и в Windows Phone для среды выполнения Windows. Хотя это не с открытым исходным кодом, конечно.
Для этой задачи можно использовать Amyuni PDF Creator for WinRT (коммерческая библиотека). Вы можете создать новый PDF-файл, создав новый экземпляр класса AmyuniPDFCreator.IacDocument, а затем добавить новые страницы с помощью метода AddPage и добавьте изображения на каждую страницу, используя метод IacPage.CreateObject.
Код на C# для добавления картинки на страницу будет выглядеть так:
public IacDocument CreatePDFFromImage()
{
IacDocument pdfDoc = new IacDocument();
// Set the license key
pdfDoc.SetLicenseKey("Amyuni Tech.", "07EFCD0...C4FB9CFD");
IacPage targetPage = pdfDoc.GetPage(1); // A new document will always be created with an empty page
// Adding a picture to the current page
using (Stream imgStrm = await Windows.ApplicationModel.Package.Current.InstalledLocation.OpenStreamForReadAsync("pdfcreatorwinrt.png"))
{
IacObject oPic = page.CreateObject(IacObjectType.acObjectTypePicture, "MyPngPicture");
BinaryReader binReader = new BinaryReader(imgStrm);
byte[] imgData = binReader.ReadBytes((int)imgStrm.Length);
// The "ImageFileData" attribute has not been added yet to the online documentation
oPic.AttributeByName("ImageFileData").Value = imgData;
oPic.Coordinates = new Rect(100, 2000, 1200, 2000);
}
return pdfDoc;
}
Отказ от ответственности: в настоящее время я работаю разработчиком библиотеки
В качестве альтернативы с открытым исходным кодом вам может быть лучше полагаться на веб-службу, которая создает PDF-файл, используя одну из множества доступных библиотек с открытым исходным кодом.
Я думаю, это может помочь вам, если вы хотите преобразовать файл изображения (.jpg) в файл PDF. Он работает в моей лаборатории.
string source = "image.jpg";
string destinaton = "image.pdf";
PdfDocument doc = new PdfDocument();
doc.Pages.Add(new PdfPage());
XGraphics xgr = XGraphics.FromPdfPage(doc.Pages[0]);
XImage img = XImage.FromFile(source);
xgr.DrawImage(img, 0, 0);
doc.Save(destinaton);
doc.Close();
Спасибо.