从字节数组创建pdf

时间:2013-06-28 19:25:11

标签: c# pdf-generation adobe-reader

我正在尝试从字节数组创建一个pdf文件

string str = "Hello World";
byte[] byteArray = Encoding.ASCII.GetBytes(str);
using(FileStream fs = new FileStream(path, FileMode.OpenorCreate, FileAccess.ReadWrite, FileShare.None))
 {
     fs.Write(byteArray, 0, byteArray.Length);
 }

创建文件。但是,当我尝试打开文件时,出现以下错误:

adobe reader could not open file because it is not a supported file type

我可以打开其他pdf文件。导致此错误的原因是什么?

2 个答案:

答案 0 :(得分:3)

pdf格式不仅仅是一个简单的“Hello World”。它包含有关格式和文件本身的大量信息。您需要查看帮助您创建pdf文件的库,而不是写出“Hello World”。这有点像在txt文件中写一些内容并在photoshop中打开它 - 它不是一个有效的文件。

答案 1 :(得分:1)

如果要以PDF格式创建Hello World文件,则需要一个库来执行此操作。

例如:此Java HelloWorld示例创建此hello.pdf。下载hello.pdf并在文本编辑器中打开它,您将看到它包含的内容远远超过字节“Hello World”。

我看到你是一名C#程序员。您可以找到HelloWorld示例here的C#端口。 iText只是众多库中的一个,我提到它是因为我是iText的原始开发者。对PDF libraries的简单搜索会显示更多选项。