Hi makumbi,
Refer below sample. Using ITextSharp i have created the example.
HTML
<asp:FileUpload runat="server" ID="fuUpload" AllowMultiple="true" />
<asp:Button Text="Upload Merge" runat="server" OnClick="OnMerge" />
Namespaces
C#
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.IO;
using System.Net;
using System.Net.Mail;
VB.Net
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports System
Imports System.IO
Imports System.Net
Imports System.Net.Mail
Code
C#
protected void OnMerge(object sender, EventArgs e)
{
if (fuUpload.HasFiles)
{
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 10f);
using (MemoryStream memoryStream = new MemoryStream())
{
PdfWriter writer = PdfWriter.GetInstance(pdfDoc, memoryStream);
pdfDoc.Open();
foreach (HttpPostedFile file in fuUpload.PostedFiles)
{
Image img = Image.GetInstance(file.InputStream);
pdfDoc.Add(img);
}
pdfDoc.Close();
byte[] bytes = memoryStream.ToArray();
memoryStream.Close();
MailMessage mm = new MailMessage("sender@gmail.com", "reciever@gmail.com");
mm.Subject = "Merged PDF";
mm.Body = "Merged PDF Attachment";
mm.Attachments.Add(new Attachment(new MemoryStream(bytes), "Merged.pdf"));
mm.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient();
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
NetworkCredential NetworkCred = new NetworkCredential();
NetworkCred.UserName = "sender@gmail.com";
NetworkCred.Password = "password";
smtp.UseDefaultCredentials = true;
smtp.Credentials = NetworkCred;
smtp.Port = 587;
smtp.Send(mm);
}
}
}
VB.Net
Protected Sub OnMerge(ByVal sender As Object, ByVal e As EventArgs)
If fuUpload.HasFiles Then
Dim pdfDoc As Document = New Document(PageSize.A4, 10.0F, 10.0F, 10.0F, 10.0F)
Using memoryStream As MemoryStream = New MemoryStream()
Dim writer As PdfWriter = PdfWriter.GetInstance(pdfDoc, memoryStream)
pdfDoc.Open()
For Each file As HttpPostedFile In fuUpload.PostedFiles
Dim img As Image = Image.GetInstance(file.InputStream)
pdfDoc.Add(img)
Next
pdfDoc.Close()
Dim bytes As Byte() = memoryStream.ToArray()
memoryStream.Close()
Dim mm As MailMessage = New MailMessage("sender@gmail.com", "reciever@gmail.com")
mm.Subject = "Merged PDF"
mm.Body = "Merged PDF Attachment"
mm.Attachments.Add(New Attachment(New MemoryStream(bytes), "Merged.pdf"))
mm.IsBodyHtml = True
Dim smtp As SmtpClient = New SmtpClient()
smtp.Host = "smtp.gmail.com"
smtp.EnableSsl = True
Dim NetworkCred As NetworkCredential = New NetworkCredential()
NetworkCred.UserName = "sender@gmail.com"
NetworkCred.Password = "password"
smtp.UseDefaultCredentials = True
smtp.Credentials = NetworkCred
smtp.Port = 587
smtp.Send(mm)
End Using
End If
End Sub
Screenshot
Pdf in Email
![](https://i.imgur.com/wSCJRz5.jpg)