54 lines
1.9 KiB
C#
54 lines
1.9 KiB
C#
using MediaBrowser.Controller.Drawing;
|
|
using MediaBrowser.Model.Drawing;
|
|
using System;
|
|
|
|
namespace Emby.Drawing
|
|
{
|
|
public interface IImageEncoder : IDisposable
|
|
{
|
|
/// <summary>
|
|
/// Gets the supported input formats.
|
|
/// </summary>
|
|
/// <value>The supported input formats.</value>
|
|
string[] SupportedInputFormats { get; }
|
|
/// <summary>
|
|
/// Gets the supported output formats.
|
|
/// </summary>
|
|
/// <value>The supported output formats.</value>
|
|
ImageFormat[] SupportedOutputFormats { get; }
|
|
/// <summary>
|
|
/// Gets the size of the image.
|
|
/// </summary>
|
|
/// <param name="path">The path.</param>
|
|
/// <returns>ImageSize.</returns>
|
|
ImageSize GetImageSize(string path);
|
|
/// <summary>
|
|
/// Crops the white space.
|
|
/// </summary>
|
|
/// <param name="inputPath">The input path.</param>
|
|
/// <param name="outputPath">The output path.</param>
|
|
void CropWhiteSpace(string inputPath, string outputPath);
|
|
/// <summary>
|
|
/// Encodes the image.
|
|
/// </summary>
|
|
/// <param name="inputPath">The input path.</param>
|
|
/// <param name="outputPath">The output path.</param>
|
|
/// <param name="width">The width.</param>
|
|
/// <param name="height">The height.</param>
|
|
/// <param name="quality">The quality.</param>
|
|
/// <param name="options">The options.</param>
|
|
void EncodeImage(string inputPath, string outputPath, int width, int height, int quality, ImageProcessingOptions options);
|
|
|
|
/// <summary>
|
|
/// Creates the image collage.
|
|
/// </summary>
|
|
/// <param name="options">The options.</param>
|
|
void CreateImageCollage(ImageCollageOptions options);
|
|
/// <summary>
|
|
/// Gets the name.
|
|
/// </summary>
|
|
/// <value>The name.</value>
|
|
string Name { get; }
|
|
}
|
|
}
|