Permalink
Switch branches/tags
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
51 lines (38 sloc) 3.37 KB

Welcome to Six Labors documentation!

We aim to provide modern, cross-platform, incredibly powerful yet beautifully simple graphics libraries. Built against .NET Standard, our libraries can be used in device, cloud, and embedded/IoT scenarios.

You can find tutorials, examples and API details covering all Six Labors projects.

Articles

Examples, quick-start guides and FAQ-s about our API. This is the recommended place to go for newcomers. (Or at least it would be - as soon as we manage to finish all topics.)

API documentation

Detailed documentation for the entire API available across our projects.

Examples repository

We have implemented short self-contained sample projects for a few specific use cases, including:

  1. Avatar with rounded corners
    Crops rounded corners of a source image leaving a nice rounded avatar.
  2. Draw watermark on image
    Draw water mark over an image automaticaly scaling the font size to fill the avalible space.
  3. Change default encoder options
    Provides an example on how you go about switching out the registered encoder for a file format and changing its default options in the process.
  4. Draw text along a path
    Draw some text following the contours of a path.

SixLabors Projects

Our graphics libraries are split into different projects. They cover different concerns separately, but there is strong cohesion in order to provide the best developer experience.

SixLabors.Core

Common classes and structs used across our projects including .

SixLabors.ImageSharp

  • Contains the generic class, PixelFormats, Configuration, and other core functionality.
  • The interface, Jpeg, Png, Bmp, and Gif formats.
  • The image processor infrastructure, .Mutate() and .Clone()
    • Transform methods like Resize, Crop, Skew, Rotate - Anything that alters the dimensions of the image.
    • Non-transform methods like Gaussian Blur, Pixelate, Edge Detection - Anything that maintains the original image dimensions.

SixLabors.Shapes

Net standard geometry/shape manipulation library, can be used to instantiate various shapes allowing operations like merge, split, intersections etc. The SixLabors.Drawing library is based on Shapes.

SixLabors.Fonts

Font loading and drawing library. Text drawing in SixLabors.ImageSharp.Drawing is based on this library.

SixLabors.ImageSharp.Drawing

  • Brushes and various drawing algorithms, including drawing images.
  • Various vector drawing methods for drawing paths, polygons etc.
  • Text drawing (based on SixLabors.Fonts)

SixLabors.ImageSharp.Web

ASP.NET-Core middleware for image manipulation.