Hi,
You will need to add namespace for printer http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.powerpacks.printing.compatibility.vb6.printer.aspx
It should be something like below:
Code for setting type of paper:
Dim ppd As New PrintPreviewDialog()
Dim pd As New PrintDocument()
Dim pd1 As New PrintDialog()
AddHandler pd.PrintPage, AddressOf pdoc_PrintPage
pd.DefaultPageSettings.Landscape = True
pd1.Document = pd
pd1.ShowDialog()
ppd.Document = pd
ppd.ShowDialog()
To print the allowed paper siezes:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colPrinters = objWMIService.ExecQuery _
("Select * From Win32_Printer where DeviceName = 'EPSON AL-C1900 Advanced' ")
For Each objPrinter in colPrinters
objPrinter.PaperSize = "Legal"
objPrinter.Put
Next
To Change Paper size:
code:
--------------------------------------------------
Printer.PaperSize = 258 'equivalent to A2 paper size
-------------------------------------------------------
or
code:
-------------------------------------------------
Printer.PaperSize = PrinterObjectConstants.vbPRPSUser
Printer.Width = 20000
Printer.Height = 20000
------------------------------------------------------
Finally to print form: use form.printform
Regards,
Megha