Table of Contents

Class DngWriterOptions

Namespace
Egami.Formats.Extended.Raw
Assembly
Egami.Formats.Extended.dll

Options for writing DNG files: how the raw data is stored and which previews come with it.

public sealed class DngWriterOptions : WriterOptions
Inheritance
DngWriterOptions
Inherited Members

Examples

// Any RAW file Egami reads becomes a DNG with its sensor data unchanged: levels, crop, colour data and EXIF come along.
RawFormat.ConvertToDng("photo.dng", "copy.dng", new DngWriterOptions { Preview = DngPreview.Thumbnail }, context);

// A transcode with no operations takes the same route; with operations, the develop is saved as a linear DNG.
Raster.Transcode("photo.dng", "same.dng", context: context);
Raster.Transcode("photo.dng", "small.dng", ops => ops.Fit(800, 800), context: context);

Properties

Compression

Gets how the raw data is stored. Defaults to LosslessJpeg, as Adobe writes; floating-point data, which lossless JPEG cannot hold, is then written with Deflate.

public DngCompression Compression { get; init; }

Property Value

DngCompression

Default

Gets the default options.

public static DngWriterOptions Default { get; }

Property Value

DngWriterOptions

ParallelCompression

Gets whether tiles are compressed on several threads, up to the context's MaxParallelism. On by default; the file is the same either way.

public bool ParallelCompression { get; init; }

Property Value

bool

Preview

Gets which rendered images come with the raw data. Defaults to Medium.

public DngPreview Preview { get; init; }

Property Value

DngPreview

TileSize

Gets the width and height of the raw data's tiles, a multiple of 16 from 16 to 4096, or null (the default) for tiles near 256 pixels sized along each axis to leave the least padding past the edges, as Adobe DNG Converter sizes them.

public int? TileSize { get; init; }

Property Value

int?

Exceptions

ArgumentOutOfRangeException

The value is not a multiple of 16 from 16 to 4096.