diff --git a/README.md b/README.md index 5394c522e6..b1f3097b4f 100644 --- a/README.md +++ b/README.md @@ -8,19 +8,75 @@ This is a complete rewrite from the ground up to allow the processing of images With NETCore there is currently no version of `System.Drawing` to allow continued progress of the existing ImageProcessor library. Progress developing a crossplatform update are restricted to the [CoreFXLab repo](https://github.com/dotnet/corefxlab/tree/master/src/System.Drawing.Graphics) where progress seems to be very slow. -###Am I mad? +###Is this wise? Honestly... I don't know. I could be writing code that may be suddenly obsolete. There has been little [feedback](https://github.com/dotnet/corefxlab/issues/86#issuecomment-139930600) on questions I've asked but it's a nice learning process if anything. -###What works so far? +###What works so far/ What is planned? -- Encoding/decoding of jpeg, bmp, png, and gif formats (Needs expansion for indexed pngs, more bmp formats) -- Basic color structs (Needs support for HDR colors etc). -- Basic shape primitives (Unfinished and could possible be updated by using Vector2, Vector3 etc) -- Bicubic resampling. (Needs more algorithms & performance tweaks) +- Encoding/decoding of image formats (plugable) + - [x] jpeg (Includes progressive) + - [x] bmp (More bmp format support required, 24bit just now) + - [x] png (Need updating for indexed support) + - [x] gif +- Basic color structs with implicit operators (Needs support for HDR colors etc, could possible be updated by using Vector3/Vector4). + - [x] BGRA (Should this become RGBA?) + - [ ] CIE Lab + - [x] CMYK + - [x] HSV + - [ ] HSLA + - [ ] RGBAW + - [x] YCbCr +- Basic shape primitives (Unfinished and could possible be updated by using Vector2, Vector3, etc) + - [x] Rectangle + - [x] Size + - [x] Point +- Resampling algorithms. (Performance improvements?) + - [x] Box + - [x] Bicubic + - [x] Lanczos3 + - [x] Lanczos5 + - [x] Lanczos8 + - [x] MitchelNetravali + - [ ] Nearest Neighbour + - [x] Robidoux + - [x] Robidoux Sharp + - [x] Robidoux Soft + - [x] Spline + - [x] Triangle + - [x] Welch +- Rotation + - [ ] Flip (90, 270, FlipType etc) + - [ ] Rotate by angle +- ColorMatrix operations (Performance improvements? Following matrices implemented) + - [x] BlackWhite + - [x] Greyscale BT709 + - [x] Greyscale BT601 + - [x] Invert + - [x] Lomograph + - [x] Polaroid + - [x] Sepia +- Blurring/ Sharpening + - [ ] Gaussian blur + - [ ] Gaussian sharpening + - [ ] Box Blur +- Filters + - [x] Alpha + - [x] Contrast + - [ ] Brightness + - [ ] Saturation + - [ ] Hue +- Effects + - [ ] Pattern brushes + - [ ] Elliptical brushes + - [ ] Gradient brush (vignette?) + + +###What might never happen +- Font support (Depends on new System.Text stuff) ###How can you help? Spread the word, contribute algorithms, performance improvements, unit tests. Help me setup the solution properly for NETCore etc (I dunno if I have my setup correct) -There's a lot of people out there who could write this stuff a lot better and faster than I and would love to get a little more sleep once in a while. +There's a lot of developers out there who could write this stuff a lot better and faster than I and I would love to see what people can come up with.