public AnnBatesElementCollection Elements { get; }
The value of the list of elements that the Bates stamp is composed of.
using Leadtools.Annotations.Engine;
using Leadtools.Annotations.Automation;
using Leadtools.Annotations.Rendering;
using Leadtools.Annotations.WinForms;
using Leadtools.Annotations.BatesStamp;
public void AnnBatesStampComposer_AnnBatesStampComposer()
{
//Create AnnBatesStamp and set its properties
AnnBatesStamp batesStamp = new AnnBatesStamp();
batesStamp.Font = new AnnFont("Arial", 12);
batesStamp.Foreground = AnnSolidColorBrush.Create("Red");
batesStamp.HorizontalAlignment = AnnHorizontalAlignment.Center;
batesStamp.VerticalAlignment = AnnVerticalAlignment.Center;
batesStamp.Logo.Angle = 45;
batesStamp.Logo.Font = new AnnFont("Arial", 14);
batesStamp.Logo.Opacity = 0.5;
batesStamp.Logo.StretchLogo = true;
batesStamp.Logo.Picture = new AnnPicture(Path.Combine(LEAD_VARS.ImagesDir, "cannon.jpg"));
//Add some elements to Bates stamp elements list
batesStamp.Elements.Add(new AnnBatesNumber());
batesStamp.Elements.Add(AnnBatesText.Create(" "));
batesStamp.Elements.Add(AnnBatesText.Create(" This is text element"));
//Create AnnBatesStampComposer instance and add the created Bates stamp to it
AnnBatesStampComposer batesStampComposer = new AnnBatesStampComposer();
//Set the rendering engine
AnnBatesStampComposer.RenderingEngine = new AnnWinFormsRenderingEngine();
batesStampComposer.Stamps.Add(batesStamp);
//Use the main automation object for your application instead of _automation we used here
AnnAutomation automation = _automation;
AnnContainer mainContainer = automation.Container;
//Create Bates stamp container, set its size and mapper and attach it to the composer
AnnContainer batesStampContainer = new AnnContainer();
batesStampContainer.Size = mainContainer.Size;
batesStampContainer.Mapper = mainContainer.Mapper.Clone();
//Apply Bates Stamp to our container
batesStampComposer.TargetContainers.Add(batesStampContainer);
//insert the Bates stamp container below all other containers in the automation
automation.Containers.Insert(0, batesStampContainer);
//print the content of this Bates stamp
Debug.WriteLine(batesStamp.AsString(batesStampContainer)); // the output will be "000001 This is text element"
//Render the containers
automation.Invalidate(LeadRectD.Empty);
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}