- Home
- Testimonials
- Purchase
- Developer Tools
- Desktop Utilities
- Download
- Support
- Blog
- Company
The PDFDoc Scout SDK product has been acquired by Lionsoft company in January, 2011 and not available on our web-site anymore.
NEW: pdf generator for Web Developers: PDF Generator SDK for Javascript: click here to read more details...
For 3rd party C# open-source PDF generation library? Check the blog article: .NET Bear, Do You Know Any Free PDF Generation Libraries For Use In Commercial Applications?
Check our commercial products for PDF format:
PDF Extractor SDK - extract tables, text, structured data from PDF files in your apps
PDF Renderer SDK - render PDF files to PNG, BMP, TIFF images in your apps
PDF To HTML SDK - convert PDF to HTML with images and formatting preserved
Transforming XML using XSLT and PDFDoc Scout into PDF document using PDFDoc Scout library and Visual Basic .NET
How to convert XML into PDF using XSLT template transformation in Visual Basic .NET
See also XML to PDF example for VBScript (Visual Basic 6) here
See also XML to PDF example for Visual C# .NET here
This example describes how to transform XML into PDF in Visual Basic .NET using XSLT (.xsl) template and PDFDoc Scout library
Source XML data (simpsons.xml):
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="Simpsons.xsl"?>
<Simpsons>
<FamilyMember>Homer Jay Simpson</FamilyMember>
<FamilyMember>Marjorie Marge Simpson (Bouvier)</FamilyMember>
<FamilyMember>Bartholomew Jojo Bart Simpson</FamilyMember>
<FamilyMember>Lisa Marie Simpson</FamilyMember>
<FamilyMember>Margaret Maggie Simpson</FamilyMember>
<ExtendedFamilyMember>Abraham Jay Simpson</ExtendedFamilyMember>
<ExtendedFamilyMember>Mona J. Simpson</ExtendedFamilyMember>
<ExtendedFamilyMember>Jacqueline Ingrid Bouvier</ExtendedFamilyMember>
<ExtendedFamilyMember>Clancy Bouvier</ExtendedFamilyMember>
<ExtendedFamilyMember>Patricia "Patty" Bouvier</ExtendedFamilyMember>
</Simpsons>
XSLT template (simpsons.xsl):
<?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="FamilyMember">
<p><b><u><xsl:value-of select="."/></u></b></p>
</xsl:template>
<xsl:template match="ExtendedFamilyMember">
<p><i><xsl:value-of select="."/></i></p>
</xsl:template>
<xsl:template match="/">
<html>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Produced PDF document (XML2HTML.pdf generated from source Simpsons.xml XML data)

Code of Form1.vb
<font color="black" face="Courier New" size="2"><font color="#0000ff">Imports</font> System.IO<br> <font color="#0000ff">Imports</font> System.Xml<br> <font color="#0000ff">Imports</font> System.Xml.XPath<br> <font color="#0000ff">Imports</font> System.Xml.Xsl<br> <br> <font color="#0000ff">Public</font> <font color="#0000ff">Class</font> Form1<br> <br> <font color="#0000ff">Private</font> <font color="#0000ff">Sub</font> btnXMLToPDF_Click(<font color="#0000ff">ByVal</font> sender <font color="#0000ff">As</font> System.<font color="#0000ff">Object</font>, <font color="#0000ff">ByVal</font> e <font color="#0000ff">As</font> System.EventArgs) <font color="#0000ff">Handles</font> btnXMLToPDF.Click<br> <font color="#008000">' Transform XML using XSLT and get HTML code</font><br> <font color="#008000">' then create PDF document from produced HTML code</font><br> <br> <font color="#0000ff">Dim</font> PDFDoc <font color="#0000ff">As</font> <font color="#0000ff">New</font> PDFDocScout.PDFDocument()<br> PDFDoc.InitLibrary(<font color="#a31515">"demo"</font>, <font color="#a31515">"demo"</font>)<br> PDFDoc.OutputFileName = <font color="#a31515">"XML2HTML.pdf"</font><br> PDFDoc.AutoOpenGeneratedPDF = <font color="#0000ff">True</font><br> <br> PDFDoc.BeginDocument()<br> <br> <font color="#008000">' load source XML document</font><br> <font color="#0000ff">Dim</font> xmlDoc <font color="#0000ff">As</font> <font color="#0000ff">New</font> XmlDocument()<br> xmlDoc.Load(boxXML.Text)<br> <br> <font color="#0000ff">Dim</font> xslt <font color="#0000ff">As</font> <font color="#0000ff">New</font> XslCompiledTransform()<br> xslt.Load(boxXSLT.Text)<br> <br> <font color="#008000">' create XML doc to store result of transformation</font><br> <font color="#0000ff">Dim</font> objResultXML <font color="#0000ff">As</font> <font color="#0000ff">New</font> XmlDocument()<br> <br> <font color="#008000">'Transform the XML using XLST into HTML (produced HTML is written to writer object)</font><br> <font color="#0000ff">Dim</font> writer <font color="#0000ff">As</font> <font color="#0000ff">New</font> StringWriter()<br> xslt.Transform(<font color="#0000ff">New</font> XPathDocument(boxXML.Text), <font color="#0000ff">Nothing</font>, writer)<br> writer.Close()<br> <br> <font color="#008000">' convert produced HTML code into PDF</font><br> PDFDoc.Page.AddHTMLBox(writer.ToString(), 0, 0, PDFDoc.Page.Width, PDFDoc.Page.Height, <font color="#0000ff">True</font>)<br> <br> PDFDoc.EndDocument()<br> <font color="#008000">' close PDF document generation</font><br> <font color="#0000ff">End</font> <font color="#0000ff">Sub</font><br> <font color="#0000ff">End</font> <font color="#0000ff">Class</font></font>
Filed in:
PDFDoc Scout SDK
Tutorials:


