diff --git a/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX.sln b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX.sln
new file mode 100644
index 00000000..e2cd1da2
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37314.3
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Convert-Markdown-to-PPTX", "COnvert-Markdown-to-PPTX\Convert-Markdown-to-PPTX.csproj", "{3CE02010-F932-45B5-95BC-6241A2B86DA1}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {3CE02010-F932-45B5-95BC-6241A2B86DA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3CE02010-F932-45B5-95BC-6241A2B86DA1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3CE02010-F932-45B5-95BC-6241A2B86DA1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3CE02010-F932-45B5-95BC-6241A2B86DA1}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {D91FAB57-9C6D-4A24-90A1-8E9AC3FFBC59}
+ EndGlobalSection
+EndGlobal
diff --git a/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Convert-Markdown-to-PPTX.csproj b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Convert-Markdown-to-PPTX.csproj
new file mode 100644
index 00000000..c3ea8c9e
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Convert-Markdown-to-PPTX.csproj
@@ -0,0 +1,24 @@
+
+
+
+ Exe
+ net8.0
+ COnvert_Markdown_to_PPTX
+ enable
+ enable
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Data/Input.md b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Data/Input.md
new file mode 100644
index 00000000..b8389c84
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Data/Input.md
@@ -0,0 +1,28 @@
+# **Company History**
+
+IMN Solutions PVT LTD is the software company, established in 1987, by George Milton. The company has been listed as the trusted partner for many high-profile organizations *since 1988* and got awards for quality products from reputed organizations.
+
+* The company acquired the MCY corporation for 20 billion dollars and became the top revenue maker for the year 2015.
+* The company is participating in top open source projects in automation industry.
+
+
+# Product Overview
+
+* [Adventure Works Cycles](http://www.google.com/), the fictitious company on which the Adventure Works 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 Bothell, Washington with 290 employees, several regional sales teams are located throughout their market base.
+* These subcomponents are shipped to the Bothell location for final product assembly.
+
+
+# **Target** Vs **PERFORMANCE**
+
+|**Month**|**Product A**|**Product B**|**Product C**|**Product D**|**Product E**|**Product F**|**Average**|**Target**|
+|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
+|Jan|20000|4200|8000|12000|4700|15000|10650|35000|
+|Feb|8300|19000|21000|15230|7230|1800|12093|18000|
+|Mar|4600|9000|7500|8000|30000|22000|13517|13200|
+|Apr|3530|13430|3550|10670|27860|5414|10742|50000|
+|May|10293|23760|10378|24857|12104|21350|17124|25460|
+|Jun|9070|8218|23480|20492|9103|12300|13777|21600|
+|Jul|23500|19230|87390|25030|28000|11890|32507|37800|
+|Aug|39000|30301|78356|21121|30443|23230|37075|40900|
+|Sep|14340|19403|89024|1230|12561|29000|27593|29800|
\ No newline at end of file
diff --git a/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Output/.gitkeep b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Output/.gitkeep
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Output/.gitkeep
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Program.cs b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Program.cs
new file mode 100644
index 00000000..b596b068
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Convert-Markdown-to-PPTX/.NET/Convert-Markdown-to-PPTX/Program.cs
@@ -0,0 +1,20 @@
+using Syncfusion.Presentation;
+using System.IO;
+
+namespace Convert_Markdown_to_PowerPoint
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Open an existing Markdown file.
+ using (IPresentation presentation = Presentation.Open("Data/Input.md"))
+ {
+ //Save as a PowerPoint document.
+ presentation.Save("Output/MarkdownToPPTX.pptx");
+ }
+ }
+ }
+}
+
+
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data.sln b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data.sln
new file mode 100644
index 00000000..f36f66b8
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37516.0 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Customize-image-data", "Customize-image-data\Customize-image-data.csproj", "{163A4131-5CE3-AF4D-D738-2FFBF2D73712}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {163A4131-5CE3-AF4D-D738-2FFBF2D73712}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {163A4131-5CE3-AF4D-D738-2FFBF2D73712}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {163A4131-5CE3-AF4D-D738-2FFBF2D73712}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {163A4131-5CE3-AF4D-D738-2FFBF2D73712}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {1B948FF1-E913-468D-8872-932A08892CC3}
+ EndGlobalSection
+EndGlobal
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Customize-image-data.csproj b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Customize-image-data.csproj
new file mode 100644
index 00000000..ad949594
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Customize-image-data.csproj
@@ -0,0 +1,28 @@
+
+
+
+ Exe
+ net8.0
+ Customize_image_data
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Image_1.png b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Image_1.png
new file mode 100644
index 00000000..b35832d5
Binary files /dev/null and b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Image_1.png differ
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Image_2.png b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Image_2.png
new file mode 100644
index 00000000..24262161
Binary files /dev/null and b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Image_2.png differ
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Input.md b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Input.md
new file mode 100644
index 00000000..3f27606e
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Data/Input.md
@@ -0,0 +1,11 @@
+Image from file:
+
+
+
+
+Image from Website
+
+
+
+Image from base64 string
+
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Output/.gitkeep b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Output/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Program.cs b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Program.cs
new file mode 100644
index 00000000..de670021
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Customize-image-data/.NET/Customize-image-data/Program.cs
@@ -0,0 +1,45 @@
+using Syncfusion.Presentation;
+using System.IO;
+using System.Net;
+
+namespace Customize_image_data
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Create load options.
+ LoadOptions loadOptions = new LoadOptions();
+ // Specify the format type as Markdown.
+ loadOptions.FormatType = FormatType.Markdown;
+ // Initialize Markdown import settings for the LoadOptions instance.
+ loadOptions.MdImportSettings = new Syncfusion.Office.Markdown.MdImportSettings();
+ // Hook the event to customize the image while importing Markdown document.
+ loadOptions.MdImportSettings.ImageNodeVisited += MdImportSettings_ImageNodeVisited;
+ // Open the Markdown file with load options.
+ using (IPresentation presentation = Presentation.Open(Path.GetFullPath("../../../Data/Input.md"), loadOptions))
+ {
+ // Save as a PowerPoint document.
+ presentation.Save(Path.GetFullPath(@"../../../Output/Output.pptx"));
+ }
+ }
+ private static void MdImportSettings_ImageNodeVisited(object sender, Syncfusion.Office.Markdown.MdImageNodeVisitedEventArgs args)
+ {
+ //Set the image stream based on the image name from the input Markdown.
+ if (args.Uri == "Image_1.png")
+ args.ImageStream = new FileStream(Path.GetFullPath("../../../Data/Image_1.png"), FileMode.Open);
+ else if (args.Uri == "Image_2.png")
+ args.ImageStream = new FileStream(Path.GetFullPath("../../../Data/Image_2.png"), FileMode.Open);
+ //Retrieve the image from the website and use it.
+ else if (args.Uri.StartsWith("https://"))
+ {
+ WebClient client = new WebClient();
+ //Download the image as a stream.
+ byte[] image = client.DownloadData(args.Uri);
+ Stream stream = new MemoryStream(image);
+ //Set the retrieved image from the input Markdown.
+ args.ImageStream = stream;
+ }
+ }
+ }
+}
diff --git a/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding.sln b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding.sln
new file mode 100644
index 00000000..a736e850
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37516.0 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Encoding", "Encoding\Encoding.csproj", "{1905B2BD-0757-F899-972F-6998EA0D625F}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {5104081F-C64B-49D1-9C0B-0B11B0CD2478}
+ EndGlobalSection
+EndGlobal
diff --git a/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Data/Input.md b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Data/Input.md
new file mode 100644
index 00000000..6ba58585
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Data/Input.md
@@ -0,0 +1,71 @@
+# A tour of the C\# language
+
+C\# (pronounced "See Sharp") is a modern, object\-oriented, and type\-safe programming language. C\# enables developers to build many types of secure and robust applications that run in .NET. C\# has its roots in the C family of languages and will be immediately familiar to C, C\+\+, Java, and JavaScript programmers. This tour provides an overview of the major components of the language in C\# 11 and earlier. If you want to explore the language through interactive examples, try the [introduction to C#](https://learn.microsoft.com/en-us/dotnet/csharp/tour-of-csharp/tutorials/) tutorials.
+
+Several C\# features help create robust and durable applications. [Garbage collection](https://learn.microsoft.com/en-us/dotnet/standard/garbage-collection/) automatically reclaims memory occupied by unreachable unused objects. [Nullable types](https://learn.microsoft.com/en-us/dotnet/csharp/nullable-references) guard against variables that don't refer to allocated objects. [Exception handling](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/exceptions/) provides a structured and extensible approach to error detection and recovery. [Lambda expressions](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/lambda-expressions) support functional programming techniques. [Language Integrated Query (LINQ)](https://learn.microsoft.com/en-us/dotnet/csharp/linq/) syntax creates a common pattern for working with data from any source. Language support for [asynchronous operations](https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/) provides syntax for building distributed systems. C\# has a [unified type system](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/types/). All C\# types, including primitive types such as `int` and `double`, inherit from a single root `object` type. All types share a set of common operations. Values of any type can be stored, transported, and operated upon in a consistent manner. Furthermore, C\# supports both user\-defined [reference types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types) and [value types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-types). C\# allows dynamic allocation of objects and in\-line storage of lightweight structures. C\# supports generic methods and types, which provide increased type safety and performance. C\# provides iterators, which enable implementers of collection classes to define custom behaviors for client code.
+
+# Hello world
+
+The "Hello, World" program is traditionally used to introduce a programming language. Here it is in C\#:
+```
+using System;
+class Hello
+{
+ static void Main()
+ {
+ Console.WriteLine("Hello, World");
+ }
+}
+```
+
+
+The "Hello, World" program starts with a `using` directive that references the `System` namespace. Namespaces provide a hierarchical means of organizing C\# programs and libraries. A `using` directive that references a given namespace enables unqualified use of the types that are members of that namespace. Because of the `using` directive, the program can use Console.WriteLine as shorthand for System.Console.WriteLine.
+
+The Hello `class` declared by the "Hello, World" program has a single member, the method named `Main`. The `Main` method is declared with the static modifier. By convention, a static method named `Main` serves as the entry point of a C\# program.
+
+The output of the program is produced by the `WriteLine` method of the `Console` class in the `System` namespace. This class is provided by the standard class libraries, which, by default, are automatically referenced by the compiler.
+
+# Types and variables
+
+A *type* defines the structure and behavior of any data in C\#. The declaration of a type may include its members, base type, interfaces it implements, and operations permitted for that type. A *variable* is a label that refers to an instance of a specific type.
+
+There are two kinds of types in C\#:
+
+1. Value types
+
+1. Reference types.
+
+## Value types
+
+C\#'s value types are further divided into *simple types*, *enum types*, *struct types*, *nullable value types*, and *tuple value types*.
+|Value types|Details|
+|:---|:---|
+|[Simple types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-types)|[Signed integral](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/integral-numeric-types), [unsigned integral](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/integral-numeric-types), [unicode characters](https://learn.microsoft.com/en-us/dotnet/standard/base-types/character-encoding-introduction), [IEEE binary floating-point](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/floating-point-numeric-types), [High-precision decimal floating-point](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/floating-point-numeric-types), and boolean. |
+|[Enum types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/enum)|User\-defined types of the form `enum E {...}`. An `enum` type is a distinct type with named constants. Every `enum` type has an underlying type, which must be one of the eight integral types. The set of values of an `enum` type is the same as the set of values of the underlying type.|
+|[Struct types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/struct)|User\-defined types of the form `struct S {...}`|
+|[Nullable value types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/nullable-value-types)|Extensions of all other value types with a `null` value|
+|[Tuple value types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-tuples)|User\-defined types of the form `(T1, T2, ...)`|
+
+
+## Reference types
+|Reference types|Details|
+|:---|:---|
+|[Class types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/class) |Ultimate base class of all other types: object. Unicode strings: string, which represents a sequence of UTF\-16 code units. User\-defined types of the form class C {...}|
+|[Interface types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/interface) |User\-defined types of the form interface I {...}|
+|[Array types](https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/arrays/) |Single\-dimensional, multi\-dimensional, and jagged. For example: int\[], int\[,], and int\[]\[] |
+|[Delegate types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types) |User\-defined types of the form delegate int D(...) |
+
+
+C\# programs use *type declarations* to create new types. A type declaration specifies the name and the members of the new type. Six of C\#'s categories of types are user\-definable: class types, struct types, interface types, enum types, delegate types, and tuple value types. You can also declare `record` types, either `record struct`, or `record class`. Record types have compiler\-synthesized members. You use records primarily for storing values, with minimal associated behavior.
+
+- A `class` type defines a data structure that contains data members (fields) and function members (methods, properties, and others). Class types support single inheritance and polymorphism, mechanisms whereby derived classes can extend and specialize base classes.
+
+- A `struct` type is similar to a class type in that it represents a structure with data members and function members. However, unlike classes, structs are value types and don't typically require heap allocation. Struct types don't support user\-specified inheritance, and all struct types implicitly inherit from type `object`.
+
+- An `interface` type defines a contract as a named set of public members. A `class` or `struct` that implements an `interface` must provide implementations of the interface's members. An `interface` may inherit from multiple base interfaces, and a `class` or `struct` may implement multiple interfaces.
+
+- A `delegate` type represents references to methods with a particular parameter list and return type. Delegates make it possible to treat methods as entities that can be assigned to variables and passed as parameters. Delegates are analogous to function types provided by functional languages. They're also similar to the concept of function pointers found in some other languages. Unlike function pointers, delegates are object\-oriented and type\-safe.
+
+---
+
+You can explore more about C\# in this [tutorials](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/tutorials/classes).
\ No newline at end of file
diff --git a/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Encoding.csproj b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Encoding.csproj
new file mode 100644
index 00000000..9176bf59
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Encoding.csproj
@@ -0,0 +1,22 @@
+
+
+
+ Exe
+ net8.0
+ Encoding
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Output/.gitkeep b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Output/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Program.cs b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Program.cs
new file mode 100644
index 00000000..a0e5980b
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Load-Options-Encoding/.NET/Encoding/Program.cs
@@ -0,0 +1,27 @@
+
+using Syncfusion.Presentation;
+using System.Text;
+
+namespace Encoding_as_PPTX
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Create load options.
+ LoadOptions loadOptions = new LoadOptions();
+ // Specify the format type as Markdown.
+ loadOptions.FormatType = FormatType.Markdown;
+ // Initialize Markdown import settings for the LoadOptions instance.
+ loadOptions.MdImportSettings = new Syncfusion.Office.Markdown.MdImportSettings();
+ //Set the encoding for the Markdown file.
+ loadOptions.MdImportSettings.Encoding = Encoding.UTF8;
+ // Open the Markdown file with load options.
+ using (IPresentation presentation = Presentation.Open("Data/Input.md", loadOptions))
+ {
+ //Save as a PowerPoint document.
+ presentation.Save("Output/MarkdownToPPTX.pptx");
+ }
+ }
+ }
+}
diff --git a/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak.sln b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak.sln
new file mode 100644
index 00000000..cfb92d6e
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37516.0 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Use-Thematic-Break-As-ContentBreak", "Use-Thematic-Break-As-ContentBreak\Use-Thematic-Break-As-ContentBreak.csproj", "{67AA12B5-93D4-A656-88A1-7A7B282D37E0}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {67AA12B5-93D4-A656-88A1-7A7B282D37E0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {67AA12B5-93D4-A656-88A1-7A7B282D37E0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {67AA12B5-93D4-A656-88A1-7A7B282D37E0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {67AA12B5-93D4-A656-88A1-7A7B282D37E0}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {25F4098B-3A96-4CD7-B2F9-BE2BFC5E8ABF}
+ EndGlobalSection
+EndGlobal
diff --git a/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Data/Input.md b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Data/Input.md
new file mode 100644
index 00000000..6ba58585
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Data/Input.md
@@ -0,0 +1,71 @@
+# A tour of the C\# language
+
+C\# (pronounced "See Sharp") is a modern, object\-oriented, and type\-safe programming language. C\# enables developers to build many types of secure and robust applications that run in .NET. C\# has its roots in the C family of languages and will be immediately familiar to C, C\+\+, Java, and JavaScript programmers. This tour provides an overview of the major components of the language in C\# 11 and earlier. If you want to explore the language through interactive examples, try the [introduction to C#](https://learn.microsoft.com/en-us/dotnet/csharp/tour-of-csharp/tutorials/) tutorials.
+
+Several C\# features help create robust and durable applications. [Garbage collection](https://learn.microsoft.com/en-us/dotnet/standard/garbage-collection/) automatically reclaims memory occupied by unreachable unused objects. [Nullable types](https://learn.microsoft.com/en-us/dotnet/csharp/nullable-references) guard against variables that don't refer to allocated objects. [Exception handling](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/exceptions/) provides a structured and extensible approach to error detection and recovery. [Lambda expressions](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/lambda-expressions) support functional programming techniques. [Language Integrated Query (LINQ)](https://learn.microsoft.com/en-us/dotnet/csharp/linq/) syntax creates a common pattern for working with data from any source. Language support for [asynchronous operations](https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/) provides syntax for building distributed systems. C\# has a [unified type system](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/types/). All C\# types, including primitive types such as `int` and `double`, inherit from a single root `object` type. All types share a set of common operations. Values of any type can be stored, transported, and operated upon in a consistent manner. Furthermore, C\# supports both user\-defined [reference types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types) and [value types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-types). C\# allows dynamic allocation of objects and in\-line storage of lightweight structures. C\# supports generic methods and types, which provide increased type safety and performance. C\# provides iterators, which enable implementers of collection classes to define custom behaviors for client code.
+
+# Hello world
+
+The "Hello, World" program is traditionally used to introduce a programming language. Here it is in C\#:
+```
+using System;
+class Hello
+{
+ static void Main()
+ {
+ Console.WriteLine("Hello, World");
+ }
+}
+```
+
+
+The "Hello, World" program starts with a `using` directive that references the `System` namespace. Namespaces provide a hierarchical means of organizing C\# programs and libraries. A `using` directive that references a given namespace enables unqualified use of the types that are members of that namespace. Because of the `using` directive, the program can use Console.WriteLine as shorthand for System.Console.WriteLine.
+
+The Hello `class` declared by the "Hello, World" program has a single member, the method named `Main`. The `Main` method is declared with the static modifier. By convention, a static method named `Main` serves as the entry point of a C\# program.
+
+The output of the program is produced by the `WriteLine` method of the `Console` class in the `System` namespace. This class is provided by the standard class libraries, which, by default, are automatically referenced by the compiler.
+
+# Types and variables
+
+A *type* defines the structure and behavior of any data in C\#. The declaration of a type may include its members, base type, interfaces it implements, and operations permitted for that type. A *variable* is a label that refers to an instance of a specific type.
+
+There are two kinds of types in C\#:
+
+1. Value types
+
+1. Reference types.
+
+## Value types
+
+C\#'s value types are further divided into *simple types*, *enum types*, *struct types*, *nullable value types*, and *tuple value types*.
+|Value types|Details|
+|:---|:---|
+|[Simple types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-types)|[Signed integral](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/integral-numeric-types), [unsigned integral](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/integral-numeric-types), [unicode characters](https://learn.microsoft.com/en-us/dotnet/standard/base-types/character-encoding-introduction), [IEEE binary floating-point](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/floating-point-numeric-types), [High-precision decimal floating-point](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/floating-point-numeric-types), and boolean. |
+|[Enum types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/enum)|User\-defined types of the form `enum E {...}`. An `enum` type is a distinct type with named constants. Every `enum` type has an underlying type, which must be one of the eight integral types. The set of values of an `enum` type is the same as the set of values of the underlying type.|
+|[Struct types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/struct)|User\-defined types of the form `struct S {...}`|
+|[Nullable value types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/nullable-value-types)|Extensions of all other value types with a `null` value|
+|[Tuple value types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/value-tuples)|User\-defined types of the form `(T1, T2, ...)`|
+
+
+## Reference types
+|Reference types|Details|
+|:---|:---|
+|[Class types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/class) |Ultimate base class of all other types: object. Unicode strings: string, which represents a sequence of UTF\-16 code units. User\-defined types of the form class C {...}|
+|[Interface types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/interface) |User\-defined types of the form interface I {...}|
+|[Array types](https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/arrays/) |Single\-dimensional, multi\-dimensional, and jagged. For example: int\[], int\[,], and int\[]\[] |
+|[Delegate types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/reference-types) |User\-defined types of the form delegate int D(...) |
+
+
+C\# programs use *type declarations* to create new types. A type declaration specifies the name and the members of the new type. Six of C\#'s categories of types are user\-definable: class types, struct types, interface types, enum types, delegate types, and tuple value types. You can also declare `record` types, either `record struct`, or `record class`. Record types have compiler\-synthesized members. You use records primarily for storing values, with minimal associated behavior.
+
+- A `class` type defines a data structure that contains data members (fields) and function members (methods, properties, and others). Class types support single inheritance and polymorphism, mechanisms whereby derived classes can extend and specialize base classes.
+
+- A `struct` type is similar to a class type in that it represents a structure with data members and function members. However, unlike classes, structs are value types and don't typically require heap allocation. Struct types don't support user\-specified inheritance, and all struct types implicitly inherit from type `object`.
+
+- An `interface` type defines a contract as a named set of public members. A `class` or `struct` that implements an `interface` must provide implementations of the interface's members. An `interface` may inherit from multiple base interfaces, and a `class` or `struct` may implement multiple interfaces.
+
+- A `delegate` type represents references to methods with a particular parameter list and return type. Delegates make it possible to treat methods as entities that can be assigned to variables and passed as parameters. Delegates are analogous to function types provided by functional languages. They're also similar to the concept of function pointers found in some other languages. Unlike function pointers, delegates are object\-oriented and type\-safe.
+
+---
+
+You can explore more about C\# in this [tutorials](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/tutorials/classes).
\ No newline at end of file
diff --git a/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Output/.gitkeep b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Output/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Program.cs b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Program.cs
new file mode 100644
index 00000000..1259d64c
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Program.cs
@@ -0,0 +1,27 @@
+
+using Syncfusion.Presentation;
+using System.IO;
+
+namespace Encoding_as_Word
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Create load options.
+ LoadOptions loadOptions = new LoadOptions();
+ // Specify the format type as Markdown.
+ loadOptions.FormatType = FormatType.Markdown;
+ // Initialize Markdown import settings for the LoadOptions instance.
+ loadOptions.MdImportSettings = new Syncfusion.Office.Markdown.MdImportSettings();
+ // Set UseThematicBreakAsContentBreak to split slides based on thematic breaks.
+ loadOptions.MdImportSettings.UseThematicBreakAsContentBreak = true;
+ // Open the Markdown file with load options.
+ using (IPresentation presentation = Presentation.Open(Path.GetFullPath("Data/Input.md"), loadOptions))
+ {
+ // Save as a PowerPoint document.
+ presentation.Save(Path.GetFullPath("Output/MarkdownToPPTX.pptx"));
+ }
+ }
+ }
+}
diff --git a/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Use-Thematic-Break-As-ContentBreak.csproj b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Use-Thematic-Break-As-ContentBreak.csproj
new file mode 100644
index 00000000..e2089d2d
--- /dev/null
+++ b/Markdown-to-PPTX-Conversion/Use-Thematic-Break-As-ContentBreak/.NET/Use-Thematic-Break-As-ContentBreak/Use-Thematic-Break-As-ContentBreak.csproj
@@ -0,0 +1,22 @@
+
+
+
+ Exe
+ net8.0
+ Use_Thematic_Break_As_ContentBreak
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown.sln b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown.sln
new file mode 100644
index 00000000..93a2527a
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37516.0 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Convert-PPTX-to-Markdown", "Convert-PPTX-to-Markdown\Convert-PPTX-to-Markdown.csproj", "{AD3814FD-74A5-67E5-D9C2-3E081499F0E5}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {AD3814FD-74A5-67E5-D9C2-3E081499F0E5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AD3814FD-74A5-67E5-D9C2-3E081499F0E5}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AD3814FD-74A5-67E5-D9C2-3E081499F0E5}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {AD3814FD-74A5-67E5-D9C2-3E081499F0E5}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {1290B141-2CB5-4195-99EF-1A20748B27B5}
+ EndGlobalSection
+EndGlobal
diff --git a/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Convert-PPTX-to-Markdown.csproj b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Convert-PPTX-to-Markdown.csproj
new file mode 100644
index 00000000..7c720408
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Convert-PPTX-to-Markdown.csproj
@@ -0,0 +1,23 @@
+
+
+
+ Exe
+ net8.0
+ Convert_PPTX_to_Markdown
+ enable
+ enable
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Data/Input.pptx b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Data/Input.pptx
new file mode 100644
index 00000000..531cfb14
Binary files /dev/null and b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Data/Input.pptx differ
diff --git a/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Output/.gitkeep b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Output/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Program.cs b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Program.cs
new file mode 100644
index 00000000..51e7a07b
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Convert-PPTX-to-Markdown/.NET/Convert-PPTX-to-Markdown/Program.cs
@@ -0,0 +1,17 @@
+using Syncfusion.Presentation;
+
+namespace Convert_PPTX_to_Markdown
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ //Open an existing Presentation document.
+ using (IPresentation presentation = Presentation.Open("Data/Input.pptx"))
+ {
+ //Save the PowerPoint Presentation as a Markdown file.
+ presentation.Save("Output/PPTXtoMd.md");
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image.sln b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image.sln
new file mode 100644
index 00000000..a37db013
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.31911.196
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Customize-image", "Customize-image\Customize-image.csproj", "{C17B90BC-F559-456B-B189-90B53FF6CDD4}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {C17B90BC-F559-456B-B189-90B53FF6CDD4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C17B90BC-F559-456B-B189-90B53FF6CDD4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C17B90BC-F559-456B-B189-90B53FF6CDD4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C17B90BC-F559-456B-B189-90B53FF6CDD4}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {EF357FC6-E9E5-4E3C-B932-43F727BE1DE4}
+ EndGlobalSection
+EndGlobal
diff --git a/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Customize-image.csproj b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Customize-image.csproj
new file mode 100644
index 00000000..4220a9cd
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Customize-image.csproj
@@ -0,0 +1,22 @@
+
+
+
+ Exe
+ net8.0
+ Customize_image
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Data/Input.pptx b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Data/Input.pptx
new file mode 100644
index 00000000..531cfb14
Binary files /dev/null and b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Data/Input.pptx differ
diff --git a/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Output/.gitkeep b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Output/.gitkeep
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Output/.gitkeep
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Program.cs b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Program.cs
new file mode 100644
index 00000000..430e04c7
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Customize-image-path/.NET/Customize-image/Program.cs
@@ -0,0 +1,30 @@
+using Syncfusion.Office.Markdown;
+using Syncfusion.Presentation;
+using System.IO;
+
+namespace Customize_image
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Open an existing Presentation document.
+ using (IPresentation presentation = Presentation.Open("../../../Data/Input.pptx"))
+ {
+ // Hook the event to customize the image.
+ presentation.MdSaveOptions.ImageNodeVisited += SaveImage;
+ // Save the PowerPoint Presentation as a Markdown file.
+ presentation.Save(@"../../../Output/Output.md");
+ }
+ }
+ static void SaveImage(object sender, MdImageNodeVisitedEventArgs args)
+ {
+ string imagepath = @"../../../Output/Image.png";
+ //Save the image stream as a file.
+ using (FileStream fileStreamOutput = File.Create(imagepath))
+ args.ImageStream.CopyTo(fileStreamOutput);
+ //Set the URI to be used for the image in the output Markdown.
+ args.Uri = imagepath;
+ }
+ }
+}
\ No newline at end of file
diff --git a/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document.sln b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document.sln
new file mode 100644
index 00000000..6b6b46c1
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37516.0 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Get-Markdown-document", "Get-Markdown-document\Get-Markdown-document.csproj", "{B592EDD9-200E-4224-80DD-673BADEE3DA7}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {B592EDD9-200E-4224-80DD-673BADEE3DA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B592EDD9-200E-4224-80DD-673BADEE3DA7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B592EDD9-200E-4224-80DD-673BADEE3DA7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B592EDD9-200E-4224-80DD-673BADEE3DA7}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {678FC67A-2791-4D11-9BEC-0D2B184B8EB3}
+ EndGlobalSection
+EndGlobal
diff --git a/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Data/Input.pptx b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Data/Input.pptx
new file mode 100644
index 00000000..531cfb14
Binary files /dev/null and b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Data/Input.pptx differ
diff --git a/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Get-Markdown-document.csproj b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Get-Markdown-document.csproj
new file mode 100644
index 00000000..a46f606c
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Get-Markdown-document.csproj
@@ -0,0 +1,22 @@
+
+
+
+ Exe
+ net8.0
+ Get_Markdown_document
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Output/.gitkeep b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Output/.gitkeep
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Output/.gitkeep
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Program.cs b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Program.cs
new file mode 100644
index 00000000..7db422f8
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Get-Markdown-document/.NET/Get-Markdown-document/Program.cs
@@ -0,0 +1,24 @@
+using Syncfusion.Office.Markdown;
+using Syncfusion.Presentation;
+using System.IO;
+using System.Text;
+
+namespace Get_Markdown_document
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ //Open an existing Presentation document.
+ using (IPresentation presentation = Presentation.Open(Path.GetFullPath("Data/Input.pptx")))
+ {
+ //Convert the PowerPoint Presentation to Markdown.
+ MarkdownDocument markdownDocument = presentation.GetMarkdownDocument();
+ //Save or process the Markdown document as needed.
+ markdownDocument.Save(Path.GetFullPath("Output/Output.md"));
+ //Dispose the Markdown document.
+ markdownDocument.Dispose();
+ }
+ }
+ }
+}
diff --git a/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding.sln b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding.sln
new file mode 100644
index 00000000..8be4c66b
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.14.37516.0 d17.14
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Encoding", "Encoding\Encoding.csproj", "{1905B2BD-0757-F899-972F-6998EA0D625F}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1905B2BD-0757-F899-972F-6998EA0D625F}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {21749EFC-1C6F-41D6-AE88-E86132E6A03C}
+ EndGlobalSection
+EndGlobal
diff --git a/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Data/Input.pptx b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Data/Input.pptx
new file mode 100644
index 00000000..531cfb14
Binary files /dev/null and b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Data/Input.pptx differ
diff --git a/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Encoding.csproj b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Encoding.csproj
new file mode 100644
index 00000000..9f0ec982
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Encoding.csproj
@@ -0,0 +1,22 @@
+
+
+
+ Exe
+ net8.0
+ Encoding
+
+
+
+
+
+
+
+
+ Always
+
+
+ Always
+
+
+
+
diff --git a/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Output/.gitkeep b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Output/.gitkeep
new file mode 100644
index 00000000..5f282702
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Output/.gitkeep
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Program.cs b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Program.cs
new file mode 100644
index 00000000..c1886872
--- /dev/null
+++ b/PPTX-to-Markdown-Conversion/Save-Options-Encoding/.NET/Encoding/Program.cs
@@ -0,0 +1,20 @@
+using Syncfusion.Presentation;
+using System.Text;
+
+namespace Encoding_as_PDF
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ // Open an existing Presentation document.
+ using (IPresentation presentation = Presentation.Open("Input.pptx"))
+ {
+ // Set the encoding for the Markdown file.
+ presentation.MdSaveOptions.Encoding = Encoding.ASCII;
+ // Save the PowerPoint Presentation as a Markdown file.
+ presentation.Save("Output.md");
+ }
+ }
+ }
+}