Colored Watermark
View as MarkdownDemonstrates how to apply a colored watermark to an image using a tiling brush with text rendering.
Code Snippet
using (var bitmap = new Bitmap("Venice.jpg"))
using (var gr = bitmap.GetGraphics())
{
var fontSize = UnitConverter.ConvertPixelsToUnits(bitmap.DpiY, bitmap.Height, Unit.Point) / 20.0f;
var brush = new TilingBrush(600, 300, bitmap.DpiX, bitmap.DpiY);
var formattedString = @"<span style='color:red'>Colored</span><br/>
<span style='color:rgb(0, 0, 0, 0);pen-color:rgb(200, 200, 200, 255);pen-width:5pt'>watermark</span>";
var text = new PlainText(formattedString, gr.CreateFont("Arial", fontSize))
{
Position = new System.Drawing.Point(10, 100),
Brush = null,
};
brush.Graphics.FontRegistry = FontRegistry.Installed;
brush.Graphics.DrawText(text);
brush.Transform = new System.Drawing.Drawing2D.Matrix();
brush.Transform.Rotate(45);
gr.Opacity = 0.5f;
gr.FillRectangle(brush, 0, 0, bitmap.Width, bitmap.Height);
bitmap.Save("ColoredWatermark.jpg");
}
Input
Venice.jpg
Output
ColoredWatermark.jpg
Used APIs
- Aurigma.GraphicsMill.Bitmap.DpiX
- Aurigma.GraphicsMill.Bitmap.DpiY
- Aurigma.GraphicsMill.Bitmap.GetGraphics
- Aurigma.GraphicsMill.Drawing.FontRegistry
- Aurigma.GraphicsMill.Drawing.FontRegistry.Installed
- Aurigma.GraphicsMill.Drawing.Graphics.CreateFont(String,Single)
- Aurigma.GraphicsMill.Drawing.Graphics.DrawText(Text)
- Aurigma.GraphicsMill.Drawing.Graphics.FillRectangle(Brush,Single,Single,Single,Single)
- Aurigma.GraphicsMill.Drawing.Graphics.FontRegistry
- Aurigma.GraphicsMill.Drawing.Graphics.Opacity
- Aurigma.GraphicsMill.Drawing.PlainText
- Aurigma.GraphicsMill.Drawing.PlainText.Position
- Aurigma.GraphicsMill.Drawing.Text.Brush
- Aurigma.GraphicsMill.Drawing.TilingBrush
- Aurigma.GraphicsMill.Drawing.TilingBrush.Graphics
- Aurigma.GraphicsMill.Drawing.TilingBrush.Transform
- Aurigma.GraphicsMill.Unit
- Aurigma.GraphicsMill.UnitConverter
- Aurigma.GraphicsMill.UnitConverter.ConvertPixelsToUnits(Single,Int32,Unit)