2013-03-05 67 views
0

我在TiffBitmapEncoder te= new TiffBitmapEncoder()上創建了多頁Tiff; (使用CCITT4)如何將內存流寫入tif文件?

然後我把它複製到使用ts.save(ms);

現在這個內存流有很多頁的TIFF圖像內存流 說MemoryStream ms = new MemoryStream()。我只需要將它寫入tiff文件。我不想通過Bitmap.Save(位置,編碼,參數)再次編寫它,因爲使用(long)EncoderValue.CompressionCCITT4會在2003 Windows計算機上產生錯誤。

我試着將ms重置爲位置0並寫入圖像並保存到圖像位置。但是這隻寫了1頁tiff。

我該怎麼做?

+4

爲什麼不直接寫入'FileStream'? – 2013-03-05 17:11:35

+0

@JohnSaunders你應該將其作爲回答 – 2013-03-05 17:14:14

+0

我懷疑這個說法「內存流有一個多頁TIFF圖像」已經是錯誤的,因爲它不太可能將任何將MemoryStream複製到文件以更改數據流中的數據的代碼。 (同時顯示你對'CopyTo'的調用以將內存流複製到文件將證實這一點)。 – 2013-03-05 17:14:25

回答

3

只需直接寫入FileStream即可。首先不需要使用MemoryStream