GetImage(DecodingSettings,IProgressController) Метод (DngPage)
Возвращает изображение, связанное с этой страницей изображения.
Parameters
- progressController
- Контроллер хода выполнения.
- decodingSettings
- Параметры декодирования, которые следует использовать для декодирования изображения страницы.
Return Value
Изображение, связанное с этим объектом ImagePage, если изображение было успешно загружено; в противном случае null.
Вот пример, показывающий, как открыть DNG-файл, получить RAW-изображение из DNG-файла и сохранить изображение в PNG-файл:
''' <summary>
''' Opens DNG-file, gets RAW-image from DNG-file and saves image to a PNG-file.
''' </summary>
''' <param name="dngFilename">The name of DNG-file.</param>
Public Sub GetAndSaveCrwRawImage(dngFilename As String)
' open DNG-file stream
Using fs As New System.IO.FileStream(dngFilename, System.IO.FileMode.Open, System.IO.FileAccess.Read)
' open DNG-file
Dim rawImageFile As New Vintasoft.Imaging.Codecs.ImageFiles.Raw.RawImageFile(fs)
' get DNG-page
Dim dngPage As Vintasoft.Imaging.Codecs.ImageFiles.Raw.DngPage = TryCast(rawImageFile.Page, Vintasoft.Imaging.Codecs.ImageFiles.Raw.DngPage)
' if DNG-page is found in RAW-file
If dngPage IsNot Nothing Then
' get RAW-image as 48-bpp RGB image
Using rawImage As Vintasoft.Imaging.VintasoftImage = dngPage.GetImage()
' save 48-bpp RGB image to a PNG file
rawImage.Save(dngFilename & ".png")
End Using
End If
End Using
End Sub
/// <summary>
/// Opens DNG-file, gets RAW-image from DNG-file and saves image to a PNG-file.
/// </summary>
/// <param name="dngFilename">The name of DNG-file.</param>
public void GetAndSaveCrwRawImage(string dngFilename)
{
// open DNG-file stream
using (System.IO.FileStream fs = new System.IO.FileStream(dngFilename, System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
// open DNG-file
Vintasoft.Imaging.Codecs.ImageFiles.Raw.RawImageFile rawImageFile =
new Vintasoft.Imaging.Codecs.ImageFiles.Raw.RawImageFile(fs);
// get DNG-page
Vintasoft.Imaging.Codecs.ImageFiles.Raw.DngPage dngPage =
rawImageFile.Page as Vintasoft.Imaging.Codecs.ImageFiles.Raw.DngPage;
// if DNG-page is found in RAW-file
if (dngPage != null)
{
// get RAW-image as 48-bpp RGB image
using (Vintasoft.Imaging.VintasoftImage rawImage = dngPage.GetImage())
{
// save 48-bpp RGB image to a PNG file
rawImage.Save(dngFilename + ".png");
}
}
}
}
Целевые платформы: .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5