我真的很喜欢c#中的pdfclown,但是我想从byte []数组或文件流中打开pdf。我还没有找到任何关于pdfclown的例子。有人可以帮忙吗?
一个例子是:
使用(org.pdfclown.files.File file = new org.pdfclown.bytes.IInputStream(bytes)) {
... }
由于
答案 0 :(得分:3)
这是从字节数组中打开文件的正确方法:
var bytes = . . .;
using (var file = new org.pdfclown.files.File(new org.pdfclown.bytes.Buffer(bytes)))
{
}
如果你check out PDF Clown from its repository(版本0.1.2.1或更高版本)或下载下一个版本,你甚至可以使用这个超简单的构造函数:
byte[] bytes = . . .;
using (var file = new org.pdfclown.files.File(bytes))
{
}
或者,如果是System.IO.Stream:
System.IO.Stream stream = . . .;
using (var file = new org.pdfclown.files.File(stream))
{
}
如果您有纯文件系统路径,那么这是您的构造函数:
string filename = . . .;
using (var file = new org.pdfclown.files.File(filename))
{
}
答案 1 :(得分:1)
我使用pdfclown论坛找到了这个问题的答案。我已根据自己的需要调整了它。 enter link description here
byte[] bytes = io.File.ReadAllBytes(@filename);
using (var ms = new io.MemoryStream(bytes))
{
using (org.pdfclown.bytes.IInputStream i = new org.pdfclown.bytes.Stream(ms))
{
using (org.pdfclown.files.File file = new org.pdfclown.files.File(i))
{
}
}
}