Table of Contents

Class WebPEncoderConfig

Namespace
Imazen.WebP
Assembly
Imazen.WebP.dll

Builder for advanced WebP encoding configuration. Uses a fluent API pattern.

public class WebPEncoderConfig
Inheritance
WebPEncoderConfig
Inherited Members

Constructors

WebPEncoderConfig()

Creates a new config with default settings (lossy, quality 75).

public WebPEncoderConfig()

WebPEncoderConfig(WebPPreset, float)

Creates a new config with a preset and quality level.

public WebPEncoderConfig(WebPPreset preset, float quality)

Parameters

preset WebPPreset
quality float

Methods

GetNativeConfig()

Returns the internal WebPConfig struct for use with low-level P/Invoke.

public WebPConfig GetNativeConfig()

Returns

WebPConfig

SetAlphaQuality(int)

Sets alpha quality (0=smallest, 100=lossless).

public WebPEncoderConfig SetAlphaQuality(int quality)

Parameters

quality int

Returns

WebPEncoderConfig

SetExact(bool)

If set, preserve exact RGB values under transparent area.

public WebPEncoderConfig SetExact(bool exact = true)

Parameters

exact bool

Returns

WebPEncoderConfig

SetFilterStrength(int)

Sets filter strength (0=off, 100=strongest).

public WebPEncoderConfig SetFilterStrength(int strength)

Parameters

strength int

Returns

WebPEncoderConfig

SetImageHint(WebPImageHint)

Sets image hint for better compression.

public WebPEncoderConfig SetImageHint(WebPImageHint hint)

Parameters

hint WebPImageHint

Returns

WebPEncoderConfig

SetLossless(bool)

Enables lossless encoding.

public WebPEncoderConfig SetLossless(bool lossless = true)

Parameters

lossless bool

Returns

WebPEncoderConfig

SetLosslessPreset(int)

Sets lossless preset level (0=fastest, 9=best compression).

public WebPEncoderConfig SetLosslessPreset(int level)

Parameters

level int

Returns

WebPEncoderConfig

SetMethod(int)

Sets quality/speed trade-off (0=fast, 6=slower-better).

public WebPEncoderConfig SetMethod(int method)

Parameters

method int

Returns

WebPEncoderConfig

SetMultiThreaded(bool)

Enables multi-threaded encoding.

public WebPEncoderConfig SetMultiThreaded(bool enabled = true)

Parameters

enabled bool

Returns

WebPEncoderConfig

SetNearLossless(int)

Sets near-lossless quality [0=max loss .. 100=off(default)].

public WebPEncoderConfig SetNearLossless(int level)

Parameters

level int

Returns

WebPEncoderConfig

SetQuality(float)

Sets lossy quality (0-100).

public WebPEncoderConfig SetQuality(float quality)

Parameters

quality float

Returns

WebPEncoderConfig

SetSharpYuv(bool)

Use sharp (and slow) RGB->YUV conversion.

public WebPEncoderConfig SetSharpYuv(bool enabled = true)

Parameters

enabled bool

Returns

WebPEncoderConfig

SetSnsStrength(int)

Sets SNS strength (0=off, 100=maximum).

public WebPEncoderConfig SetSnsStrength(int strength)

Parameters

strength int

Returns

WebPEncoderConfig

SetTargetPSNR(float)

Sets target PSNR in dB (0 = disabled).

public WebPEncoderConfig SetTargetPSNR(float psnr)

Parameters

psnr float

Returns

WebPEncoderConfig

SetTargetSize(int)

Sets target file size in bytes (0 = disabled).

public WebPEncoderConfig SetTargetSize(int bytes)

Parameters

bytes int

Returns

WebPEncoderConfig

Validate()

Validates the configuration. Returns true if valid.

public bool Validate()

Returns

bool