diff --git a/Annotations/Stamp_blur_Solution/App.xaml b/Annotations/Stamp_blur_Solution/App.xaml
new file mode 100644
index 0000000..e5d8b71
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/App.xaml
@@ -0,0 +1,9 @@
+
+
+
+
+
diff --git a/Annotations/Stamp_blur_Solution/App.xaml.cs b/Annotations/Stamp_blur_Solution/App.xaml.cs
new file mode 100644
index 0000000..42911be
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/App.xaml.cs
@@ -0,0 +1,14 @@
+using System.Configuration;
+using System.Data;
+using System.Windows;
+
+namespace Stamp_blur_Solution
+{
+ ///
+ /// Interaction logic for App.xaml
+ ///
+ public partial class App : Application
+ {
+ }
+
+}
diff --git a/Annotations/Stamp_blur_Solution/AssemblyInfo.cs b/Annotations/Stamp_blur_Solution/AssemblyInfo.cs
new file mode 100644
index 0000000..b0ec827
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/AssemblyInfo.cs
@@ -0,0 +1,10 @@
+using System.Windows;
+
+[assembly: ThemeInfo(
+ ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
+ //(used if a resource is not found in the page,
+ // or application resource dictionaries)
+ ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
+ //(used if a resource is not found in the page,
+ // app, or any theme specific resource dictionaries)
+)]
diff --git a/Annotations/Stamp_blur_Solution/Data/Input.pdf b/Annotations/Stamp_blur_Solution/Data/Input.pdf
new file mode 100644
index 0000000..8773442
Binary files /dev/null and b/Annotations/Stamp_blur_Solution/Data/Input.pdf differ
diff --git a/Annotations/Stamp_blur_Solution/MainWindow.xaml b/Annotations/Stamp_blur_Solution/MainWindow.xaml
new file mode 100644
index 0000000..f36e7ca
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/MainWindow.xaml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/Annotations/Stamp_blur_Solution/MainWindow.xaml.cs b/Annotations/Stamp_blur_Solution/MainWindow.xaml.cs
new file mode 100644
index 0000000..ae24dd5
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/MainWindow.xaml.cs
@@ -0,0 +1,94 @@
+using Syncfusion.Pdf.Graphics;
+using Syncfusion.Windows.PdfViewer;
+using System.Drawing;
+using System.IO;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Media.Imaging;
+
+namespace Stamp_blur_Solution
+{
+ ///
+ /// Interaction logic for MainWindow.xaml
+ ///
+ public partial class MainWindow : Window
+ {
+ public MainWindow()
+ {
+ InitializeComponent();
+ PDFViewer.Load("../../../Data/Input.pdf");
+ }
+ private void Button_Click(object sender, RoutedEventArgs e)
+ {
+ var unitConvertor = new PdfUnitConvertor();
+
+ // Stamp properties
+ int SX = (int)unitConvertor.ConvertToPixels(125, PdfGraphicsUnit.Point);
+ int SY = (int)unitConvertor.ConvertToPixels(108, PdfGraphicsUnit.Point);
+ string StampNo = "01";
+ int StampSize = 100;
+
+ int StampWidth = (int)unitConvertor.ConvertToPixels(20, PdfGraphicsUnit.Point);
+ int StampHeight = (int)unitConvertor.ConvertToPixels(20, PdfGraphicsUnit.Point);
+
+ // 1. Create a high-resolution Bitmap for the custom stamp
+ using (var customStampBitmap = new Bitmap(StampSize, StampSize))
+ {
+ using (Graphics g = Graphics.FromImage(customStampBitmap))
+ {
+ g.Clear(Color.Transparent);
+ g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
+ g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
+
+ // Draw ellipse
+ using (var pen = new Pen(Color.Red, 3))
+ {
+ g.DrawEllipse(pen, 3, 3, StampSize - 6, StampSize - 6);
+ }
+
+ // Draw stamp number text (centered)
+ using (var font = new Font("Helvetica", 28))
+ {
+ SizeF textSize = g.MeasureString(StampNo, font);
+ var textPoint = new System.Drawing.PointF(
+ (StampSize - textSize.Width) / 2f,
+ (StampSize - textSize.Height) / 2f);
+ g.DrawString(StampNo, font, Brushes.Red, textPoint);
+ }
+ }
+
+ // 2. Convert Bitmap to BitmapImage for WPF PdfViewer
+ BitmapImage bitmapImage;
+ using (var ms = new MemoryStream())
+ {
+ customStampBitmap.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
+ ms.Position = 0;
+
+ bitmapImage = new BitmapImage();
+ bitmapImage.BeginInit();
+ bitmapImage.StreamSource = ms;
+ bitmapImage.CacheOption = BitmapCacheOption.OnLoad;
+ bitmapImage.EndInit();
+ }
+
+ // 3. Create WPF Image control
+ var stampImage = new System.Windows.Controls.Image
+ {
+ Source = bitmapImage
+ };
+
+ // 4. Create PdfStampAnnotation
+ var stampAnnotation = new PdfStampAnnotation(stampImage);
+
+ // 5. Define position and size for the stamp in PDF
+ var position = new System.Windows.Point(SX, SY);
+ var stampSizeObj = new System.Drawing.Size(StampWidth, StampHeight);
+
+ // 6. Add the custom image stamp to the PDF viewer
+ // NOTE: Ensure 'pdfViewer' is your PdfViewerControl instance defined in XAML.
+ PDFViewer.AddStamp(stampAnnotation, 1, position, stampSizeObj);
+ }
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/Annotations/Stamp_blur_Solution/Stamp_blur_Solution.csproj b/Annotations/Stamp_blur_Solution/Stamp_blur_Solution.csproj
new file mode 100644
index 0000000..bf5922a
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/Stamp_blur_Solution.csproj
@@ -0,0 +1,12 @@
+
+
+
+ WinExe
+
+
+
+
+
+
+
+
diff --git a/Annotations/Stamp_blur_Solution/Stamp_blur_Solution.slnx b/Annotations/Stamp_blur_Solution/Stamp_blur_Solution.slnx
new file mode 100644
index 0000000..9a59f23
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/Stamp_blur_Solution.slnx
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Annotations/Stamp_blur_Solution/targets/MultiTargeting.targets b/Annotations/Stamp_blur_Solution/targets/MultiTargeting.targets
new file mode 100644
index 0000000..3928b04
--- /dev/null
+++ b/Annotations/Stamp_blur_Solution/targets/MultiTargeting.targets
@@ -0,0 +1,10 @@
+
+
+ net462;net8.0-windows;net9.0-windows;net10.0-windows
+ true
+ False
+ True
+ True
+ True
+
+
\ No newline at end of file