diff --git a/Web API/Web-API-Project.slnx b/Web API/Web-API-Project.slnx
new file mode 100644
index 0000000..17d6ab9
--- /dev/null
+++ b/Web API/Web-API-Project.slnx
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Web API/Web-API-Project/Controllers/PdfController.cs b/Web API/Web-API-Project/Controllers/PdfController.cs
new file mode 100644
index 0000000..9b769cc
--- /dev/null
+++ b/Web API/Web-API-Project/Controllers/PdfController.cs
@@ -0,0 +1,40 @@
+using Microsoft.AspNetCore.Mvc;
+using Syncfusion.Drawing;
+using Syncfusion.HtmlConverter;
+using Syncfusion.Pdf;
+
+namespace Web_API_Project.Controllers
+{
+ [ApiController]
+ [Route("[controller]")]
+ public class PdfController : ControllerBase
+ {
+
+ private readonly ILogger _logger;
+
+ public PdfController(ILogger logger)
+ {
+ _logger = logger;
+ }
+
+ [HttpGet("/api/Pdf")]
+ public IActionResult ConvertHTMLtoPDF()
+ {
+ //Initialize HTML to PDF converter.
+ HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter();
+ BlinkConverterSettings blinkConverterSettings = new BlinkConverterSettings();
+ //Set Blink viewport size.
+ blinkConverterSettings.ViewPortSize = new Size(1280, 0);
+ //Assign Blink converter settings to HTML converter.
+ htmlConverter.ConverterSettings = blinkConverterSettings;
+ //Convert URL to PDF document.
+ PdfDocument document = htmlConverter.Convert("https://www.syncfusion.com");
+ //Create memory stream.
+ MemoryStream stream = new MemoryStream();
+ //Save the document to memory stream.
+ document.Save(stream);
+ stream.Position = 0;
+ return File(stream, "application/pdf", "Output.pdf");
+ }
+ }
+}
diff --git a/Web API/Web-API-Project/Controllers/WeatherForecastController.cs b/Web API/Web-API-Project/Controllers/WeatherForecastController.cs
new file mode 100644
index 0000000..1c629f8
--- /dev/null
+++ b/Web API/Web-API-Project/Controllers/WeatherForecastController.cs
@@ -0,0 +1,21 @@
+using Microsoft.AspNetCore.Mvc;
+using Syncfusion.Drawing;
+using Syncfusion.Pdf;
+using Syncfusion.Pdf.Graphics;
+using Syncfusion.Pdf.Grid;
+
+namespace Web_API_Project.Controllers
+{
+ [ApiController]
+ [Route("[controller]")]
+ public class WeatherForecastController : ControllerBase
+ {
+
+ private readonly ILogger _logger;
+
+ public WeatherForecastController(ILogger logger)
+ {
+ _logger = logger;
+ }
+ }
+}
diff --git a/Web API/Web-API-Project/Program.cs b/Web API/Web-API-Project/Program.cs
new file mode 100644
index 0000000..4407d70
--- /dev/null
+++ b/Web API/Web-API-Project/Program.cs
@@ -0,0 +1,24 @@
+var builder = WebApplication.CreateBuilder(args);
+// Add services to the container.
+
+builder.Services.AddControllers();
+// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
+builder.Services.AddEndpointsApiExplorer();
+builder.Services.AddSwaggerGen();
+
+var app = builder.Build();
+
+// Configure the HTTP request pipeline.
+if (app.Environment.IsDevelopment())
+{
+ app.UseSwagger();
+ app.UseSwaggerUI();
+}
+
+app.UseHttpsRedirection();
+
+app.UseAuthorization();
+
+app.MapControllers();
+
+app.Run();
diff --git a/Web API/Web-API-Project/Properties/launchSettings.json b/Web API/Web-API-Project/Properties/launchSettings.json
new file mode 100644
index 0000000..522ffd7
--- /dev/null
+++ b/Web API/Web-API-Project/Properties/launchSettings.json
@@ -0,0 +1,41 @@
+{
+ "$schema": "http://json.schemastore.org/launchsettings.json",
+ "iisSettings": {
+ "windowsAuthentication": false,
+ "anonymousAuthentication": true,
+ "iisExpress": {
+ "applicationUrl": "http://localhost:9493",
+ "sslPort": 44373
+ }
+ },
+ "profiles": {
+ "http": {
+ "commandName": "Project",
+ "dotnetRunMessages": true,
+ "launchBrowser": true,
+ "launchUrl": "swagger",
+ "applicationUrl": "http://localhost:5288",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ },
+ "https": {
+ "commandName": "Project",
+ "dotnetRunMessages": true,
+ "launchBrowser": true,
+ "launchUrl": "swagger",
+ "applicationUrl": "https://localhost:7289;http://localhost:5288",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ },
+ "IIS Express": {
+ "commandName": "IISExpress",
+ "launchBrowser": true,
+ "launchUrl": "swagger",
+ "environmentVariables": {
+ "ASPNETCORE_ENVIRONMENT": "Development"
+ }
+ }
+ }
+}
diff --git a/Web API/Web-API-Project/WeatherForecast.cs b/Web API/Web-API-Project/WeatherForecast.cs
new file mode 100644
index 0000000..4ce1884
--- /dev/null
+++ b/Web API/Web-API-Project/WeatherForecast.cs
@@ -0,0 +1,13 @@
+namespace Web_API_Project
+{
+ public class WeatherForecast
+ {
+ public DateOnly Date { get; set; }
+
+ public int TemperatureC { get; set; }
+
+ public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
+
+ public string? Summary { get; set; }
+ }
+}
diff --git a/Web API/Web-API-Project/Web-API-Project.csproj b/Web API/Web-API-Project/Web-API-Project.csproj
new file mode 100644
index 0000000..4233f99
--- /dev/null
+++ b/Web API/Web-API-Project/Web-API-Project.csproj
@@ -0,0 +1,15 @@
+
+
+
+ net8.0
+ enable
+ enable
+ Web_API_Project
+
+
+
+
+
+
+
+
diff --git a/Web API/Web-API-Project/Web-API-Project.csproj.user b/Web API/Web-API-Project/Web-API-Project.csproj.user
new file mode 100644
index 0000000..9ff5820
--- /dev/null
+++ b/Web API/Web-API-Project/Web-API-Project.csproj.user
@@ -0,0 +1,6 @@
+
+
+
+ https
+
+
\ No newline at end of file
diff --git a/Web API/Web-API-Project/Web-API-Project.http b/Web API/Web-API-Project/Web-API-Project.http
new file mode 100644
index 0000000..d2935c7
--- /dev/null
+++ b/Web API/Web-API-Project/Web-API-Project.http
@@ -0,0 +1,6 @@
+@Web_API_Project_HostAddress = http://localhost:5288
+
+GET {{Web_API_Project_HostAddress}}/weatherforecast/
+Accept: application/json
+
+###
diff --git a/Web API/Web-API-Project/appsettings.Development.json b/Web API/Web-API-Project/appsettings.Development.json
new file mode 100644
index 0000000..0c208ae
--- /dev/null
+++ b/Web API/Web-API-Project/appsettings.Development.json
@@ -0,0 +1,8 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ }
+}
diff --git a/Web API/Web-API-Project/appsettings.json b/Web API/Web-API-Project/appsettings.json
new file mode 100644
index 0000000..10f68b8
--- /dev/null
+++ b/Web API/Web-API-Project/appsettings.json
@@ -0,0 +1,9 @@
+{
+ "Logging": {
+ "LogLevel": {
+ "Default": "Information",
+ "Microsoft.AspNetCore": "Warning"
+ }
+ },
+ "AllowedHosts": "*"
+}