解压了PDF 的stream部分,却不想继续分析了

PDF stream 和endstream之间的部分需要解压缩。 折腾了有一些日子才解压成功。

用System.IO.Compression 空间下的GZipStream或DeflateStream(.net 2005 对应的.Net Framework还没有,又装了2008才有;有很多人说是.Net Framework2.0就有了, 没细研究怎么回事)

 

看到一个帖子http://topic.csdn.net/u/20090404/17/21bd4687-00f2-491c-92c1-a8556718bacb.html

对我很有用,虽然答案在这个帖子里还不明确。就是“stream之间的数据是二进制,打开文件读取的时候一定要以二进制方式打开”;我的做法是把pdf读入byte[],然后找到/content 对象(我暂时还管不到image对象)的起始位置及长度然后将这部分byte[]传入DeflateStream.

 

可是从文本流解压出来的文本还是很复杂;满眼的/tc /tw /tj /font...搞得我快没信心了。在网上又瞎搜了一通, 很多人推荐pdfsharp,这个我之前下载过,现在再下新的版本,看看会不会有惊喜。

你可能感兴趣的:(解压了PDF 的stream部分,却不想继续分析了)