Creates a brick texture that makes the image look like it has been drawn on a brick wall. This command is available in the
Imaging Pro and above toolkits.
Run the BricksTextureCommand on an empty gray image.
Copy Code
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing
Imports Leadtools.ImageProcessing.SpecialEffects
<TestMethod()> _
Public Sub BricksCommandExample()
Dim codecs As New RasterCodecs()
codecs.ThrowExceptionsOnInvalidImages = True
Dim leadImage As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\Image3.cmp"))
' Prepare the command
Dim cmd As New FillCommand(New RasterColor(128, 128, 128))
cmd.Run(leadImage)
Dim command As BricksTextureCommand = New BricksTextureCommand
command.BricksWidth = 60
command.BricksHeight = 20
command.OffsetX = 0
command.OffsetY = 0
command.EdgeWidth = 3
command.MortarWidth = 4
command.ShadeAngle = 315
command.RowDifference = 33
command.MortarRoughness = 20
command.MortarRoughnessEvenness = 0
command.BricksRoughness = 10
command.BricksRoughnessEvenness = 0
command.MortarColor = New RasterColor(0, 0, 0)
command.Flags = BricksTextureCommandFlags.SmoothedOutEdges Or BricksTextureCommandFlags.TransparentMortar
'Apply Bricks Texture on the Image.
command.Run(leadImage)
codecs.Save(leadImage, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24)
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing;
using Leadtools.ImageProcessing.SpecialEffects;
[TestMethod]
public void BricksCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "ImageProcessingDemo\\Image3.cmp"));
// Prepare the command
FillCommand cmd = new FillCommand(new RasterColor(128, 128, 128));
cmd.Run(image);
BricksTextureCommand command = new BricksTextureCommand();
command.BricksWidth = 60;
command.BricksHeight = 20;
command.OffsetX = 0;
command.OffsetY = 0;
command.EdgeWidth = 3;
command.MortarWidth = 4;
command.ShadeAngle = 315;
command.RowDifference = 33;
command.MortarRoughness = 20;
command.MortarRoughnessEvenness = 0;
command.BricksRoughness = 10;
command.BricksRoughnessEvenness = 0;
command.MortarColor = new RasterColor(0, 0, 0);
command.Flags = BricksTextureCommandFlags.SmoothedOutEdges | BricksTextureCommandFlags.TransparentMortar;
//Apply Bricks Texture on the image.
command.Run(image);
codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.SpecialEffects;
using Leadtools.ImageProcessing;
[TestMethod]
public async Task BricksCommandExample()
{
// Load an image
RasterCodecs codecs = new RasterCodecs();
codecs.ThrowExceptionsOnInvalidImages = true;
string srcFileName = @"Assets\Image1.cmp";
StorageFile loadFile = await Tools.AppInstallFolder.GetFileAsync(srcFileName);
RasterImage image = await codecs.LoadAsync(LeadStreamFactory.Create(loadFile));
// Prepare the command
FillCommand cmd = new FillCommand(RasterColorHelper.Create(128, 128, 128));
cmd.Run(image);
BricksTextureCommand command = new BricksTextureCommand();
command.BricksWidth = 60;
command.BricksHeight = 20;
command.OffsetX = 0;
command.OffsetY = 0;
command.EdgeWidth = 3;
command.MortarWidth = 4;
command.ShadeAngle = 315;
command.RowDifference = 33;
command.MortarRoughness = 20;
command.MortarRoughnessEvenness = 0;
command.BricksRoughness = 10;
command.BricksRoughnessEvenness = 0;
command.MortarColor = RasterColorHelper.Create(0, 0, 0);
command.Flags = BricksTextureCommandFlags.SmoothedOutEdges | BricksTextureCommandFlags.TransparentMortar;
//Apply Bricks Texture on the image.
command.Run(image);
string destFileName = @"result.bmp";
StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(destFileName);
await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Bmp, 24);
}