diff --git a/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF.slnx b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF.slnx
new file mode 100644
index 00000000..8b4d6c55
--- /dev/null
+++ b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF.slnx
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Add-image-as-background-in-PDF.csproj b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Add-image-as-background-in-PDF.csproj
new file mode 100644
index 00000000..7c322dff
--- /dev/null
+++ b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Add-image-as-background-in-PDF.csproj
@@ -0,0 +1,15 @@
+
+
+
+ Exe
+ net8.0
+ Background_image
+ enable
+ enable
+
+
+
+
+
+
+
diff --git a/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Data/Image.jpg b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Data/Image.jpg
new file mode 100644
index 00000000..3b2b7a60
Binary files /dev/null and b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Data/Image.jpg differ
diff --git a/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Output/gitkeep.txt b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Output/gitkeep.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Program.cs b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Program.cs
new file mode 100644
index 00000000..85c6dd4e
--- /dev/null
+++ b/Images/Add-image-as-background-in-PDF/.NET/Add-image-as-background-in-PDF/Program.cs
@@ -0,0 +1,57 @@
+using Syncfusion.Drawing;
+using Syncfusion.Pdf;
+using Syncfusion.Pdf.Graphics;
+
+// Create the new PDF document
+using (PdfDocument document = new PdfDocument())
+{
+ // Add a new page to the document
+ PdfPage page = document.Pages.Add();
+ // Get the client size
+ SizeF clientSize = page.GetClientSize();
+ // Load the background image from disk
+ using FileStream imageStream = new FileStream(
+ Path.GetFullPath(@"Data/Image.jpg"),
+ FileMode.Open,
+ FileAccess.Read
+ );
+ PdfBitmap image = new PdfBitmap(imageStream);
+ // Save the current graphics state, apply transparency, draw the image to cover the page, then restore.
+ PdfGraphicsState state = page.Graphics.Save();
+ page.Graphics.SetTransparency(0.2f); // 20% opacity for the background image
+ page.Graphics.DrawImage(
+ image,
+ new PointF(0, 0),
+ new SizeF(clientSize.Width, clientSize.Height)
+ );
+ page.Graphics.Restore(state);
+ // Define a small margin for the text content.
+ const float margin = 10f;
+ // Text bounds: fill the page within margins.
+ RectangleF textBounds = new RectangleF(
+ margin,
+ margin,
+ clientSize.Width - margin * 2,
+ clientSize.Height - margin * 2
+ );
+ // Body font for the paragraph.
+ PdfFont bodyFont = new PdfStandardFont(PdfFontFamily.TimesRoman, 16, PdfFontStyle.Regular);
+ // Sample paragraph text.
+ string paragraphText =
+ "Adventure Works Cycles, the fictitious company on which the AdventureWorks sample databases " +
+ "are based, is a large, multinational manufacturing company. The company manufactures and sells " +
+ "metal and composite bicycles to North American, European and Asian commercial markets. While " +
+ "its base operation is located in Washington with 290 employees, several regional sales teams " +
+ "are located throughout their market base.";
+ // Create a text element and configure layout to paginate if content exceeds current page.
+ PdfTextElement textElement = new PdfTextElement(paragraphText, bodyFont, PdfBrushes.Black);
+ PdfLayoutFormat layoutFormat = new PdfLayoutFormat
+ {
+ Break = PdfLayoutBreakType.FitPage, // Fit within page bounds
+ Layout = PdfLayoutType.Paginate // Continue to subsequent pages if needed
+ };
+ // Draw the text paragraph in the defined bounds.
+ textElement.Draw(page, textBounds, layoutFormat);
+ // Save the PDF document to disk.
+ document.Save(Path.GetFullPath(@"Output/Output.pdf"));
+}