Download and convert image to PDF
Download and convert image to PDF
This article shows how to download an image on a web page as a PDF document. The image (JPG, PNG or any other raster format) to PDF conversion is done on the fly. Download a free trial of PDFKit.NET to try the image to PDF converter to convert JPG (or any other raster format) to PDF and more.
This article shows how to download an image on a web page as a PDF document. The image to PDF conversion is done on the fly.
ASPX page
The aspx page is extremely simple. Basically it consists of an img element and a ActionLink element as shown in the following code snippet.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Index</title>
</head>
<body>
<div>
<img src="../image.png" />
<br />
@Html.ActionLink("Click here!", "Convert")
</div>
</body>
</html>
Code-behind file
The code-behind file consists of just the OnClick handler. It creates a document, adds a page that has the same size as the image, adds an image shape to the page and then streams the PDF document to the client.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using TallComponents.PDF;
using TallComponents.PDF.Shapes;
using System.Web.Mvc;
using System.IO;
namespace ImageToPDFWeb.Controllers
{
public class PDFController : Controller
{
public ActionResult Index()
{
//show the index page to the client
return View();
}
public FileStreamResult Convert()
{
//Create a new PDF document and add the image as an overlay to a page
Document document = new Document();
ImageShape image = new ImageShape(
Server.MapPath(@"..\image.png"));
Page page = new Page(image.Width, image.Height);
page.Overlay.Add(image);
document.Pages.Add(page);
//since we don't write to disk, write the pdf to a memory stream and return it as a pdf
MemoryStream ms = new MemoryStream();
document.Write(ms);
ms.Flush();
ms.Position = 0;
return File(ms, "application/pdf");
}
}
}