←Select platform

AnnBatesStampComposer Class

Summary

AnnBatesStampComposer is the main part for Bates stamping operation as it connects annotations containers with Bates stamp objects.

Syntax

C#
VB
Java
WinRT C#
C++
public class AnnBatesStampComposer : IDisposable 
Public Class AnnBatesStampComposer  
public sealed class AnnBatesStampComposer  
public class AnnBatesStampComposer 
             
function Leadtools.Annotations.Documents.AnnBatesStampComposer() 
public: 
   ref class AnnBatesStampComposer : IDisposable 

Remarks

Use this composer to add target containers to apply Bates stamps to.

It allows the addition of AnnBatesStamp objects. Also this composer have ability to save and load the Bates stamp list.

Example

This example will create Bates stamp object with multiple elements then use the composer to attach the Bates stamp to target container.

C#
VB
using Leadtools.Annotations.Core; 
using Leadtools.Annotations.Automation; 
using Leadtools.Annotations.Rendering; 
using Leadtools.Annotations.WinForms; 
using Leadtools.Annotations.Documents; 
using LeadtoolsExamples.Common; 
 
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(ImagesPath.Path, "cannon.jpg")); 
 
   //Add some elements to Bates stamp elements list 
   batesStamp.Elements.Add(new AnnBatesNumber()); 
   batesStamp.Elements.Add(AnnBatesText.Create(" ")); 
   batesStamp.Elements.Add(new AnnBatesDateTime()); 
   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 1/1/0001 2:00:00 AM This is text element" 
 
   //Render the containers 
   automation.Invalidate(LeadRectD.Empty); 
} 
Imports Leadtools 
Imports Leadtools.Annotations.Core 
Imports Leadtools.Annotations.Automation 
Imports Leadtools.Annotations.Rendering 
Imports Leadtools.Annotations.WinForms 
Imports Leadtools.Annotations.Documents 
Imports LeadtoolsExamples.Common 
 
Public Sub AnnBatesStampComposer_AnnBatesStampComposer() 
   'Create AnnBatesStamp and set its properties 
   Dim batesStamp As AnnBatesStamp = 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(ImagesPath.Path, "cannon.jpg")) 
 
   'Add some elements to Bates stamp elements list 
   batesStamp.Elements.Add(New AnnBatesNumber()) 
   batesStamp.Elements.Add(AnnBatesText.Create(" ")) 
   batesStamp.Elements.Add(New AnnBatesDateTime()) 
   batesStamp.Elements.Add(AnnBatesText.Create(" This is text element")) 
 
   'Create AnnBatesStampComposer instance and add the created Bates stamp to it 
   Dim batesStampComposer As AnnBatesStampComposer = 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 
   Dim automation As AnnAutomation = _automation 
   Dim mainContainer As AnnContainer = automation.Container 
 
   'Create Bates stamp container, set its size and mapper and attach it to the composer 
   Dim batesStampContainer As AnnContainer = 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 1/1/0001 2:00:00 AM This is text element" 
 
   'Render the containers 
   automation.Invalidate(LeadRectD.Empty) 
End Sub 

Requirements

Target Platforms

Help Version 19.0.2017.10.18
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Annotations.Documents Assembly