Save(Stream,EncoderBase) Метод (VintasoftImage)
Сохраняет этот объект
VintasoftImage в указанном потоке с использованием указанного кодировщика.
Поддерживаемые форматы изображений: BMP, GIF, JBIG2, JPEG, PCX, PDF, PNG, TIFF.
Подходящий кодировщик выбирается автоматически из расширения имени файла, исключение возникает, если кодировщик не найден для расширения файла, указанного в filename.
Если изображение сохраняется в новый файл (stream != SourceInfo.Stream), этот метод:
- сохраняет изображение в новый файл BMP/GIF/JBIG2/JPEG/PCX/PDF/PNG/TIFF, если MultipageEncoderBase.CreateNewFile = true; файл, указанный filename, заменяется, если он существует
- сохраняет изображение в новый файл JBIG2/PDF/TIFF, если MultipageEncoderBase.CreateNewFile = false и файл, указанный filename, не существует
- добавляет изображение в новый файл JBIG2/PDF/TIFF, если MultipageEncoderBase.CreateNewFile = false и файл, указанный filename, существует
Если изображение сохраняется в исходный файл (
stream ==
SourceInfo.Stream), этот метод:
- сохраняет изображение в исходный файл BMP/GIF/JBIG2/JPEG/PCX/PDF/PNG/TIFF, если изображение изменено (IsChanged = true) и исходный файл содержит только одно изображение
- вызывает исключение, если изображение сохранено в исходном файле BMP/GIF/JBIG2/JPEG/PCX/PDF/PNG/TIFF и изображение не изменено (IsChanged = false)
- добавляет изображение в исходный файл JBIG2/PDF/TIFF, если MultipageEncoderBase.CreateNewFile = false, файл, указанный filename, существует
Вот C#/VB.NET код, который демонстрирует, как загрузить изображение с диска и сохранить его в памяти как поток JPEG.
' load image from file
Using image As New Vintasoft.Imaging.VintasoftImage("c:\original-image.tif")
Dim memory As New System.IO.MemoryStream()
' create JPEG encoder
Dim encoder As New Vintasoft.Imaging.Codecs.Encoders.JpegEncoder(New Vintasoft.Imaging.Codecs.Encoders.JpegEncoderSettings(10))
' save annotations with image
encoder.AnnotationsFormat = Vintasoft.Imaging.AnnotationsFormat.VintasoftBinary
' save image to file
image.Save(memory, encoder)
End Using
// load image from file
using (Vintasoft.Imaging.VintasoftImage image =
new Vintasoft.Imaging.VintasoftImage(@"c:\original-image.tif"))
{
System.IO.MemoryStream memory = new System.IO.MemoryStream();
// create JPEG encoder
Vintasoft.Imaging.Codecs.Encoders.JpegEncoder encoder =
new Vintasoft.Imaging.Codecs.Encoders.JpegEncoder(
new Vintasoft.Imaging.Codecs.Encoders.JpegEncoderSettings(10));
// save annotations with image
encoder.AnnotationsFormat = Vintasoft.Imaging.AnnotationsFormat.VintasoftBinary;
// save image to file
image.Save(memory, encoder);
}
Целевые платформы: .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5