3
我遇到了一些问题,我试图在我的应用程序中获取PDF作为资源。 在这一点上,我有一个可填写的PDF,我已经能够作为一个文件存储在二进制文件旁边,但现在我试图将PDF作为资源嵌入到二进制文件中。从C#中的资源获取二进制文件
byte[] buffer;
try
{
s = typeof(BattleTracker).Assembly.GetManifestResourceStream("libReports.Resources.DAForm1594.pdf");
buffer = new byte[s.Length];
int read = 0;
do
{
read = s.Read(buffer, read, 32768);
} while (read > 0);
}
catch (Exception e)
{
throw new Exception("Error: could not import report:", e);
}
// read existing PDF document
PdfReader r = new PdfReader(
// optimize memory usage
buffer, null
);
我每次运行代码我得到一个错误说“重建拖车没有找到原来的错误:未找到PDF startxref”。
当我只是打开文件通过我的目录中的静态文件的路径它工作正常。我曾尝试使用不同的编码UTF-8,UTF-32,UTF-7,ASCII等等...... 作为一个方面说明,我有与获得一个Powerpoint文件作为资源相同的问题,我终于能够通过将Powerpoint转换为xml并使用它来解决该问题。 我已经考虑过为PDF执行相同的操作,但是我通过字段名称引用了元素,这似乎不适用于XML PDF。
任何人都可以帮我解决这个问题吗?
非常好!这解决了它!谢谢您的帮助! – 2010-04-04 00:39:52
没有问题。你也可能想检查一下,看看'PdfReader'是否有一个构造函数需要一个流而不是一个字节数组,在这种情况下你的代码变得更简单了。 – MusiGenesis 2010-04-04 01:52:15
绝对要添加'使用'块作为我编辑的答案。 – MusiGenesis 2010-04-04 02:06:50