TIFF: Как удалить страницу из TIFF файла?
В этом разделе
Страница TIFF файла может быть удалена:
- виртуально - страница удаляется из каталога TIFF файла, данные страницы не удаляются, т.е. размер TIFF файла не изменяется
- физически - страница удаляется из каталога TIFF файла, данные страницы удаляются, т.е. размер TIFF файла уменьшается
Вот C#/VB.NET код, который демонстрирует, как "виртуально" удалить страницу из TIFF файла:
public void VirtuallyRemovePageFromTiffFile(System.IO.Stream stream, int pageIndex)
{
// open TIFF file
using (Vintasoft.Imaging.Codecs.ImageFiles.Tiff.TiffFile tiff =
new Vintasoft.Imaging.Codecs.ImageFiles.Tiff.TiffFile(stream))
{
// remove page at specified index
tiff.Pages.RemoveAt(pageIndex);
// save changes
tiff.SaveChanges();
}
}
Public Sub VirtuallyRemovePageFromTiffFile(stream As System.IO.Stream, pageIndex As Integer)
' open TIFF file
Using tiff As New Vintasoft.Imaging.Codecs.ImageFiles.Tiff.TiffFile(stream)
' remove page at specified index
tiff.Pages.RemoveAt(pageIndex)
' save changes
tiff.SaveChanges()
End Using
End Sub
Вот C#/VB.NET код, который демонстрирует, как "физически" удалить страницу из TIFF файла:
public void PhysicallyRemovePageFromTiffFile(
System.IO.Stream stream, int pageIndex, System.IO.Stream outputStream)
{
// open TIFF file
using (Vintasoft.Imaging.Codecs.ImageFiles.Tiff.TiffFile tiff =
new Vintasoft.Imaging.Codecs.ImageFiles.Tiff.TiffFile(stream))
{
// remove page at specified index
tiff.Pages.RemoveAt(pageIndex);
// save modified TIFF file to the outputStream,
// the source TIFF file is not changed
tiff.Pack(outputStream);
}
}
Public Sub PhysicallyRemovePageFromTiffFile(stream As System.IO.Stream, pageIndex As Integer, outputStream As System.IO.Stream)
' open TIFF file
Using tiff As New Vintasoft.Imaging.Codecs.ImageFiles.Tiff.TiffFile(stream)
' remove page at specified index
tiff.Pages.RemoveAt(pageIndex)
' save modified TIFF file to the outputStream,
' the source TIFF file is not changed
tiff.Pack(outputStream)
End Using
End Sub