从PDF转换为Bimap [英] convert from PDF to Bimap

查看:122
本文介绍了从PDF转换为Bimap的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在上面的评论中,存在一些错误.抱歉!
我将PDF内容读取为byte [],然后使用上述方法.它不起作用.
但是对于图像(png,bmp,jpeg)byet [],它可以正常工作
为什么它不适用于PDF字节[].
-------------------------------------------------- -----------------------------------
FileOpenPicker filepickerOpen =新的FileOpenPicker();
filepickerOpen.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
filepickerOpen.ViewMode = PickerViewMode.Thumbnail;
filepickerOpen.FileTypeFilter.Clear();
filepickerOpen.FileTypeFilter.Add(.png");
filepickerOpen.FileTypeFilter.Add(.pdf");
StorageFile storage =等待filepickerOpen.PickSingleFileAsync();

byte [] buffer = WindowsRuntimeBufferExtensions.ToArray(await FileIO.ReadBufferAsync(storage));
使用(MemoryStream ms =新的MemoryStream(buffer))
{
var ims = new InMemoryRandomAccessStream();
DataWriter dataWriter =新的DataWriter(ims);
dataWriter.WriteBytes(buffer);
dataWriter.StoreAsync();
ims.Seek(0);
BitmapImage img =新的BitmapImage();
img.SetSource(ims);
ImageDocument.Source = img;
}
-------------------------------------------------- -----------------------

In above comment, there was some mistakes. Sorry!!!
I read PDF content as byte[] and then I use above method. It doesn’t work.
But for the image (png, bmp, jpeg) byet[], it works properly
Why it doesn’t work for PDF byte[].
-------------------------------------------------------------------------------------
FileOpenPicker filepickerOpen = new FileOpenPicker();
filepickerOpen.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
filepickerOpen.ViewMode = PickerViewMode.Thumbnail;
filepickerOpen.FileTypeFilter.Clear();
filepickerOpen.FileTypeFilter.Add(".png");
filepickerOpen.FileTypeFilter.Add(".pdf");
StorageFile storage= await filepickerOpen.PickSingleFileAsync();

byte[] buffer = WindowsRuntimeBufferExtensions.ToArray(await FileIO.ReadBufferAsync(storage));
using (MemoryStream ms = new MemoryStream(buffer))
{
var ims = new InMemoryRandomAccessStream();
DataWriter dataWriter = new DataWriter(ims);
dataWriter.WriteBytes(buffer);
dataWriter.StoreAsync();
ims.Seek(0);
BitmapImage img = new BitmapImage();
img.SetSource(ims);
ImageDocument.Source = img;
}
-------------------------------------------------------------------------

推荐答案

PDF文件不是简单的字节数组,它是由不同内容元素组成的结构化文件.请访问Adobe网站并获取PDF文档的副本以获取更多信息.
A PDF file is not a simple byte array, it is a structured file consisting of different content elements. Go to the Adobe website and get a copy of the PDF documentation for further information.


正如Richard所指出的, PDF文件不是简单的字节数组. [ ^ ]文章可能会阐明您如何实现这一目标.
As Richard already noted, A PDF file is not a simple byte array. This[^] article may shed some light on how you need to pursue this.


这篇关于从PDF转换为Bimap的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆