Examples


Top  Previous  Next


Below are a few examples on how to use Smart Print Control in your VB applications to print your documents.

For sample code that demonstrates the use of all Smart Print Control features, please refer to the VB demo project supplied with the control. Other sample code or projects may be available on the VBGold web site.

Tip: Before dropping Smart Print Control on your VB form, set the form font to "Tahoma" or "Verdana" (or any other true-type font). This will ensure that the control will use this font as the default font for all of its font properties. Otherwise, it will use the form's default font (MS Sans Serif) which does not have a good appearance when large font sizes are used, because it is not a true-type font.



red_bullet Example 1: Printing a simple text document with all data supplied from code, using the default control properties  


'Set document title  
SPrinter1.DocTitle = "Smart Print Control Demo"  
 
'Set document title font size  
SPrinter1.DocTitleFont.Size = 16  
 
'Set document text (body)  
SPrinter1.DocText = "    Smart Print Control provides great " _  
"flexibility in printing your documents, by allowing you to query " _  
"all printers attached to the system, select a printer, specify " _  
"print quality, paper size, orientation, paper bin, print margins, " _  
"line spacing, etc. Take a look at the great features of Smart Print Control."  
 
'Set document header  
SPrinter1.DocHeader = "Smart Print Control Document Header"  
 
'Set document footer  
SPrinter1.DocFooter = "Smart Print Control Document Footer"  
 
'Send document to the default system printer  
SPrinter1.PrintDoc  
 



red_bullet Example 2: Printing a text document with title, header and footer supplied from code, while document body is read from a file, using default control properties  


'Set document title  
SPrinter1.DocTitle = "Retrieving Document Body From A File"  
 
'Set document title font  
SPrinter1.DocTitleFont.Size = 16  
 
'Tell the control to retrieve only the document text (body) from a file  
'Other document data (title, header, footer) are supplied from code  
SPrinter1.AllDataFromFile = False  
 
'Specify the file name  
'The file can have any extension but must be a text file  
SPrinter1.FileName = "C:\MyFolder\MyFile.txt"  
 
'Set document header  
SPrinter1.DocHeader = "Sample Document Header"  
 
'Set document footer  
SPrinter1.DocFooter = "Sample Document Footer"  
 
'Send document to default system printer  
SPrinter1.PrintDoc  
 



red_bullet Example 3: Printing a text document with all data supplied from a text file, and adjusting some properties like the paper size, print quality, line spacing etc.  


'Set document title font size  
SPrinter1.DocTitleFont.Size = 16  
 
'Set document body font size  
SPrinter1.DocTextFont.Size = 12  
 
'Tell the control to retrieve all document data from a file  
'IMPORTANT: See the file format details  
SPrinter1.AllDataFromFile = True  
 
'Specify the file name  
'The file can have any extension but must be a text file  
SPrinter1.FileName = "C:\MyFolder\MyFile.txt"  
 
'Set the line spacing to 1.5 lines  
SPrinter1.LineSpacing = spLineSpacingOneHalf  
 
'Print a separating line below header and above footer  
SPrinter1.LineBelowHeader = True  
SPrinter1.LineAboveFooter = True  
 
'Print the system date / time in the footer  
SPrinter1.IncludeDateTime = True  
 
'Print page numbers  
SPrinter1.PrintPageNumber = True  
 
'Set the print quality  
SPrinter1.PrintQuality = spQualityHigh  
 
'Set the paper size to 'Letter' size  
SPrinter1.PaperSize = spPaperLetter  
 
'Send document to default system printer  
SPrinter1.PrintDoc  
 



red_bullet Example 4: Printing a text document to a printer other than the default system printer, with all data supplied from a text file  


'Query physical printer devices attached to the system  
'This will also retrieve any logical printers (such as FAX printer  
'driver, PDF printer driver, etc.)  
'The method returns a variant array (string) containing the names of  
'the printers found  
PrnNames = SPrinter1.GetPrinters  
 
'This will print the printer names to the debug window. You can use it  
'to populate a combo box with the names of printers found so the user  
'can choose the printer to use  
'For x = 0 To UBound(PrnNames)  
'    Debug.Print PrnNames(x)  
'Next  
 
'Set document title font size  
SPrinter1.DocTitleFont.Size = 16  
 
'Set document body font  
SPrinter1.DocTextFont.Size = 12  
 
'Tell the control to retrieve all document data from a file  
'IMPORTANT: See the file format details  
SPrinter1.AllDataFromFile = True  
 
'Specify the file name  
'The file can have any extension but must be a text file  
SPrinter1.FileName = "C:\MyFolder\MyFile.txt"  
 
'Set the line spacing to 1.5 lines  
SPrinter1.LineSpacing = spLineSpacingOneHalf  
 
'Print a separating line below header and above footer  
SPrinter1.LineBelowHeader = True  
SPrinter1.LineAboveFooter = True  
 
'Print the system date / time in the footer  
SPrinter1.IncludeDateTime = True  
 
'Send document to the first printer found (the printer is passed by  
'its name as argument)  
MyPrinter = PrnNames(0)  
SPrinter1.PrintDoc(MyPrinter)  
 



red_bullet Example 5: Printing an RTF (Rich Text Format) document from an RTF file using just a single line of code  


[A]  
'Print the RTF file using default settings for margines, paper size, paper bin, etc.  
SPrinter1.PrintRTFFile "C:\MyRTFFile.rtf"  
 
[B]  
'Print the RTF file with custom margin settings (margin values are in Twips)  
SPrinter1.PrintRTFFile "C:\MyRTFFile.rtf", 1720, 2880, 1720, 2880  
 
[C]  
'Print the RTF file using custom printer settings (paper size, paper bin, orientation, etc.)  
SPrinter1.PrintRTFFile "C:\MyRTFFile.rtf", , , , , spOrientationLandscape, spPaperA4  
 



red_bullet Example 6: Printing an RTF (Rich Text Format) document from the data in an RTF text box using just a single line of code  


[A]  
'Print the RTF document using default settings for margines, paper size, paper bin, etc.  
'RTF data are read from our RTF text box using the TextRTF property and is passed  
'to the PrintRTFData method argument  
SPrinter1.PrintRTFData From1.RichTextBox1.TextRTF  
 
[B]  
'Print the RTF document with custom margin settings (margin values are in Twips)  
SPrinter1.PrintRTFFile From1.RichTextBox1.TextRTF, 1720, 2880, 1720, 2880  
 
[C]  
'Print the RTF document using custom printer settings (paper size, paper bin,  
'orientation, etc.)  
SPrinter1.PrintRTFFile From1.RichTextBox1.TextRTF, , , , , spOrientationPortrait, spPaperLetter  
 
 


red_bullet Example 7: Printing HTML documents (files) using just a single line of code  


'Print the HTML document (file) by just sepcifying the file name  
'The document will be printed exactly as you see it in your web browser  
'(including text, images, etc.)  
'For more details, see the PrintHTMLFile method  
SPrinter1.PrintHTMLFile "C:\MyHTMLFile.htm"