Net-informations.com
SiteMap  | About    

How to convert text file to pdf

pdf - Portable Document Format

Portable Document Format (PDF) is a universally accepted document formats. It prevents formatting errors from cropping up due to text file incompatibilities, making PDFs is an official documents like resumes and important documentations. Converting from a Text file to PDF is an easy task. We can use Pdfsharp open source library for creating and manipulating PDF documents programmatically from .Net supported languages. From the following steps you can easily convert a text file to a PDF format document.

You can freely download the Assemblies version from the following link: Download PDFsharp Assemblies

After download the zip file, extract it and add the reference to your VB.NET project

pdf assembly files

If you want to know the step by step tutorial on how to create your first pdf file programmatically, follow the link : How to create PDF file programmatically

Steps to create PDF file programmatically.

First step you should Imports the necessary namespaces.

Imports PdfSharp Imports PdfSharp.Drawing Imports PdfSharp.Pdf

In order to read from a text file, you should create a Text Reader Object.

Dim readFile As System.IO.TextReader = New StreamReader("testfile.txt")

Then you have to create a PDF Object for creating your new PDF file.

Dim pdf As PdfDocument = New PdfDocument

and create the page.

Dim pdfPage As PdfPage = pdf.AddPage

Also initialize the Graphics and Font

Dim graph As XGraphics = XGraphics.FromPdfPage(pdfPage) Dim font As XFont = New XFont("Verdana", 20, XFontStyle.Regular)

Now you can read from the text file and write the content to the PDF Object.

line = readFile.ReadLine() graph.DrawString(line, font, XBrushes.Black,New XRect(40, yPoint, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft)

In the above code we set X as 40 pixels from the left side and Y set as "yPoint", because after write the each line yPoint will increment 40 pixels line spacs then only you will get a good line space.

yPoint = yPoint + 40

When you finish reading and writing, then you can save the PDF Object.

pdf.Save("yourflename.pdf")

You can include the path when you specify the file name.

Then close the Reader Object.

readFile.Close() readFile = Nothing

After save the file , you can double click and open the pdf file. Then you can see the content in PDF file same as in Text file.

convert text file to pdf file

The following program shows how to generate a PDF formatted file from TXT file content.




Imports System.IO
Imports PdfSharp
Imports PdfSharp.Drawing
Imports PdfSharp.Pdf

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Try
            Dim line As String
            Dim readFile As System.IO.TextReader = New StreamReader("Text.txt")
            Dim yPoint As Integer = 0

            Dim pdf As PdfDocument = New PdfDocument
            pdf.Info.Title = "Text File to PDF"
            Dim pdfPage As PdfPage = pdf.AddPage
            Dim graph As XGraphics = XGraphics.FromPdfPage(pdfPage)
            Dim font As XFont = New XFont("Verdana", 20, XFontStyle.Regular)


            While True
                line = readFile.ReadLine()
                If line Is Nothing Then
                    Exit While
                Else
                    graph.DrawString(line, font, XBrushes.Black, _
                    New XRect(40, yPoint, pdfPage.Width.Point, pdfPage.Height.Point), XStringFormats.TopLeft)
                    yPoint = yPoint + 40
                End If
            End While


            Dim pdfFilename As String = "txttopdf.pdf"
            pdf.Save(pdfFilename)
            readFile.Close()
            readFile = Nothing
            Process.Start(pdfFilename)
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub
End Class






net-informations.com (C) 2017    Founded by raps mk
All Rights Reserved. All other trademarks are property of their respective owners.