Product Engineer, CTO & a Beer Enthusiast
Experiments, thoughts and scripts documented for posterity.
Aug, 2013
Simple Image Processing library using WIC (Windows Imaging Component). CSharp based Image Processing library to perform simple image processing operation like Image Resizing, Image Watermarking etc. This library is tested to process 1000's of images while keeping WIC thread count/handles in check and with realitvely stable memory usage.
Source: https://github.com/karthik20522/SimpleDotImageExample usage:
Resize:
var _resizedImage = _imgProcessing.Process(
imagePath: _testFileName,
resize: 1024
);
Watermark using Image:
var _waterMarkedImage = _imgProcessing.Process(
imagePath: _testFileName,
resize:1024,
waterMarkPath: _waterMarkFileName,
waterMarkOpacity: 0.9
);
Watermark using Text:
var _waterMarkedImage = _imgProcessing.Process(
imagePath: _testFileName,
waterMarkText: "karthik20522",
waterMarkOpacity: 0.2
);
Watermark positioning:
var _waterMarkedImage = _imgProcessing.Process(
imagePath: _testFileName,
waterMarkText: "karthik20522",
waterMarkOpacity: 0.3,
waterMarkPosition: WaterMarkPosition.BottomRight
// TopLeft, TopRight, BottomRight, BottomLeft, Center
);
Watermark using Both Text and Image:
var _waterMarkedImage = _imgProcessing.Process(
imagePath: _testFileName,
resize: 1024,
waterMarkPath: _waterMarkFileName,
waterMarkText: "karthik20522",
waterMarkOpacity: 0.3
);
Rotate Image:
var _rotatedImage = _imgProcessing.Process(
imagePath: _testFileName,
rotate: Rotation.Rotate90
);
Flip Image:
var _flipImage = _imgProcessing.Process(
imagePath: _testFileName,
flipHorizontal: true,
flipVertical: false
);
Convert To Gray Scale:
var _grayImage = _imgProcessing.Process(
imagePath: _testFileName,
colorFormat: ColorFormat.Gray //Gray, BlackAndWhite, RGB, BGR, CMYK
);