Deflate压缩后,PDF页面显示为空白

时间:2012-02-29 01:08:56

标签: .net pdf gzip zlib compression

我在.NET中创建了一个应用程序,可以从头开始创建基于文本的简单PDF文件。我已成功创建了PDF文件,我将内容文本放在例如Td(Hello World)Tj。

但是现在我想通过对内容应用某种形式的压缩来减小PDf文件的大小。到目前为止,我已经实现了本机.NET Gzip和zlib压缩类。我已设法压缩内容(文本)并大大减小PDF文件的大小。但问题是当我在Acrobet阅读器中打开PDF文件时,文件/页面是空白的,没有内容。虽然当我在记事本中打开PDF文件时,我可以看到内容已被压缩。

我做错了什么?下面是我在编写PDF内容时正在做的事情。我错过了一些必需的PDF元素标签吗?压缩之下是zlib。

5 0 obj<</Filter /FlateDecode/Length 571>>stream
xœíVM›0½#ñæØî!;6ØàÜ€°›¨Xâ´? R«Vê¥=Tê¯ïÂGøPÚlw%F€åÁï=?Ð |¶-_À¶Bm[÷påþd[ú#Ðå']@ÿ †füeRß«E 0NS4ƒ#AHºõ*é;xóV}Wpe|ˆ:"ƒôÝ.}„(+ò¬ô.KG×3~OGÆ€¹k¦Ö§Ž0×EÅÈfb¡È‹,{ˆ7P‚dwЪÇ0,šŽ“à?UÏmâ‚(ÊŽ©®K•©}=‚Ãvi™-çÛ'x$ǸÎtŸ67ƒýij&éqoø‘F4dDóRË—™éÊY”è(”Êi4ôÑ[    ìª*y/S®Z!ΗòŠè¼Xª•qŸ§$¯ªüQȼÒ÷u8^   ]ß
Îó ©b„£8!xŠ{õs¡×T#rÎ¥ÃÚzWxî9dªE·¤:ü>dD• nŒ8E•~I\€Ît¬§ÞÀ™è]#œp:LûZî·ð|å2AÑ”ãxYËÓ¢ÛÚ†Ká»R4Ÿ®ïVð«;ó´eÚ§ÚgAm/Tvœ?Ø%æìR«¨±
C"ÈUç!¡|WÈ—E†™S궛%¸Á%[ã³v³$ð—›5Ík˜¹n³fU~¤Ê›K…who`Ú¯s˜Ôã9ƒýhKK¹´”KK9ˆ¥¥<[´´”KKÙ«wKK9+––rKKùÿ¢ÛRÚV¬u…à
endstream

1 个答案:

答案 0 :(得分:0)

最有可能的是,压缩数据无效。 Acrobat无法解码它并将流视为空。

我建议你查一下压缩代码。您可能希望尝试使用您的代码和您可以在Web上找到的压缩库之一来压缩某些内容。然后比较结果。