// --------------------------------------------------------------------------------------------------------------------
//
// Copyright (c) James Jackson-South and contributors.
// Licensed under the Apache License, Version 2.0.
//
//
// Encapsulates properties and methods required for decoding an image to a stream.
//
// --------------------------------------------------------------------------------------------------------------------
namespace ImageProcessorCore.Formats
{
using System.IO;
///
/// Encapsulates properties and methods required for encoding an image to a stream.
///
public interface IImageEncoder
{
///
/// Gets or sets the quality of output for images.
///
int Quality { get; set; }
///
/// Gets the standard identifier used on the Internet to indicate the type of data that a file contains.
///
string MimeType { get; }
///
/// Gets the default file extension for this encoder.
///
string Extension { get; }
///
/// Returns a value indicating whether the supports the specified
/// file header.
///
/// The containing the file extension.
///
/// True if the decoder supports the file extension; otherwise, false.
///
bool IsSupportedFileExtension(string extension);
///
/// Encodes the image to the specified stream from the .
///
/// The to encode from.
/// The to encode the image data to.
void Encode(ImageBase image, Stream stream);
}
}