首页 vb6 设置打印机纸张类型,以及打印方向

vb6 设置打印机纸张类型,以及打印方向

举报
开通vip

vb6 设置打印机纸张类型,以及打印方向vb6 设置打印机纸张类型,以及打印方向 Printer 对象常数 打印机颜色模式 常数 值 描述 vbPRCMMonochrome 1 单色输出 vbPRCMColor 2 彩色输出 双面打印 常数 值 描述 vbPRDPSimplex 1 单面打印 vbPRDPHorizontal 2 双面水平打印 vbPRDPVertical 3 双面垂直打印 打印方向 常数 值 描述 vbPRORPortrait 1 文档打印以纸的窄边作顶部 vbPRORLandscape 2 文档打印以纸的宽边作...

vb6 设置打印机纸张类型,以及打印方向
vb6 设置打印机纸张类型,以及打印方向 Printer 对象常数 打印机颜色模式 常数 值 描述 vbPRCMMonochrome 1 单色输出 vbPRCMColor 2 彩色输出 双面打印 常数 值 描述 vbPRDPSimplex 1 单面打印 vbPRDPHorizontal 2 双面水平打印 vbPRDPVertical 3 双面垂直打印 打印方向 常数 值 描述 vbPRORPortrait 1 文档打印以纸的窄边作顶部 vbPRORLandscape 2 文档打印以纸的宽边作顶部 打印质量 常数 值 描述 vbPRPQDraft -1 草稿打印质量 vbPRPQLow -2 低级打印质量 vbPRPQMedium -3 中等打印质量 vbPRPQHigh -4 高级打印质量 PaperBin 属性 常数 值 描述 vbPRBNUpper 1 从上层纸盒进纸 vbPRBNLower 2 从下层纸盒进纸 vbPRBNMiddle 3 从中间纸盒进纸 vbPRBNManual 4 等待手动插入每页纸 vbPRBNEnvelope 5 从信封进纸器进纸 vbPRBNEnvManual 6 从信封进纸器进纸;但要等待手动插入 vbPRBNAuto 7 (缺省方式)从当前缺省纸盒进纸 vbPRBNTractor 8 从拖拉进纸器供纸 vbPRBNSmallFmt 9 从小型进纸器进纸 vbPRBNLargeFmt 10 从大型纸盒进纸 vbPRBNLargeCapacity 11 从大容量进纸器进纸 vbPRBNCassette 14 从附加的卡式纸盒进纸 PaperSize 属性 常数 值 描述 vbPRPSLetter 1 信笺, 8 1/2 x 11 英寸 vbPRPSLetterSmall 2 +A611 小型信笺, 8 1/2 x 11 英寸 vbPRPSTabloid 3 小型报, 11 x 17 英寸 vbPRPSLedger 4 分类帐, 17 x 11 英寸 vbPRPSLegal 5 法律文件, 8 1/2 x 14 英寸 vbPRPSStatement 6 声明 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf ,5 1/2 x 8 1/2 英寸 vbPRPSExecutive 7 行政文件,7 1/2 x 10 1/2 英寸 vbPRPSA3 8 A3, 297 x 420 mm vbPRPSA4 9 A4, 210 x 297 mm vbPRPSA4Small 10 A4小号, 210 x 297 mm vbPRPSA5 11 A5, 148 x 210 mm vbPRPSB4 12 B4, 250 x 354 mm vbPRPSB5 13 B5, 182 x 257 mm vbPRPSFolio 14 对开本, 8 1/2 x 13 英寸 vbPRPSQuarto 15 四开本, 215 x 275 mm vbPRPS1&H14 16 10 x 14 英寸 vbPRPS11x17 17 11 x 17 英寸 vbPRPSNote 18 便条,8 1/2 x 11 英寸 vbPRPSEnv9 19 #9 信封, 3 7/8 x 8 7/8 英寸 vbPRPSEnv10 20 #10 信封, 4 1/8 x 9 1/2 英寸 vbPRPSEnv11 21 #11 信封, 4 1/2 x 10 3/8 英寸 4 1/2 x 11 英寸 vbPRPSEnv12 22 #12 信封, vbPRPSEnv14 23 #14 信封, 5 x 11 1/2 英寸 vbPRPSCSheet 24 C 尺寸工作单 vbPRPSDSheet 25 D 尺寸工作单 vbPRPSESheet 26 E 尺寸工作单 vbPRPSEnvDL 27 DL 型信封, 110 x 220 mm vbPRPSEnvC3 29 C3 型信封, 324 x 458 mm vbPRPSEnvC4 30 C4 型信封, 229 x 324 mm vbPRPSEnvC5 28 C5 型信封, 162 x 229 mm vbPRPSEnvC6 31 C6 型信封, 114 x 162 mm vbPRPSEnvC65 32 C65 型信封,114 x 229 mm vbPRPSEnvB4 33 B4 型信封, 250 x 353 mm vbPRPSEnvB5 34 B5 型信封,176 x 250 mm vbPRPSEnvB6 35 B6 型信封, 176 x 125 mm vbPRPSEnvItaly 36 信封, 110 x 230 mm vbPRPSEnvMonarch 37 信封大王, 3 7/8 x 7 1/2 英寸 vbPRPSEnvPersonal 38 信封, 3 5/8 x 6 1/2 英寸 vbPRPSFanfoldUS 39 U.S. 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 复写簿, 14 7/8 x 11 英寸 vbPRPSFanfoldStdGerman 40 德国标准复写簿, 8 1/2 x 12 英寸 vbPRPSFanfoldLglGerman 41 德国法律复写簿, 8 1/2 x 13 英寸 vbPRPSUser 256 用户定义 vb6 设置打印机纸张类型,以及打印方向[转]2008-08-08 18:02:13| 分类: vc 学习 | 标签:无 |字号大中小 订阅 . 这段时间在做一个报 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 系统,其中在批量打印的时候需要自动设置打印纸张和打印方向,这就 整了半天,终于整出来一个打印模块,直接控制打印需要在打印前控制打印机,对其进行设置. 机对其进行设置 '------------------------------------------------------------------------------- - ' 版本号 : Ver1.0 ' 功能 : 设置打印机纸张类型,以及打印方向 '------------------------------------------------------------------------------- - Option Explicit Private Const CCHDEVICENAME = 32 Private Const CCHFORMNAME = 32 '控制打印机权限 Private Const STANDARD_RIGHTS_REQUIRED = &HF0000 Private Const PRINTER_ACCESS_ADMINISTER = &H4 Private Const PRINTER_ACCESS_USE = &H8 Private Const PRINTER_ALL_ACCESS = PRINTER_ACCESS_USE 'Constants used to make changes to the values contained in the DevMode Private Const DM_MODIFY = 8 Private Const DM_IN_BUFFER = DM_MODIFY Private Const DM_COPY = 2 Private Const DM_OUT_BUFFER = DM_COPY Private Const DM_DUPLEX = &H1000& '打印机送纸方向 Private Const DMDUP_SIMPLEX = 1 Private Const DMDUP_VERTICAL = 2 Private Const DMDUP_HORIZONTAL = 3 Private Const DM_ORIENTATION = &H1& Private Const DM_PAPERSIZE = &H2& Private Type DEVMODE dmDeviceName As String * CCHDEVICENAME dmSpecVersion As Integer dmDriverVersion As Integer dmSize As Integer dmDriverExtra As Integer dmFields As Long dmOrientation As Integer dmPaperSize As Integer dmPaperLength As Integer dmPaperWidth As Integer dmScale As Integer dmCopies As Integer dmDefaultSource As Integer dmPrintQuality As Integer dmColor As Integer dmDuplex As Integer dmYResolution As Integer dmTTOption As Integer dmCollate As Integer dmFormName As String * CCHFORMNAME dmLogPixels As Integer dmBitsPerPel As Long dmPelsWidth As Long dmPelsHeight As Long dmDisplayFlags As Long dmDisplayFrequency As Long dmICMMethod As Long ' // 仅供Win95 dmICMIntent As Long ' // 仅供Win95 dmMediaType As Long ' // 仅供Win95 dmDitherType As Long ' // 仅供Win95 dmReserved1 As Long ' // 仅供Win95 dmReserved2 As Long ' // 仅供Win95 End Type '打印机使用初始化结构体 Private Type PRINTER_DEFAULTS pDataType As String pDevMode As Long DesiredAccess As Long End Type Enum PageDirection 纵向打印 = 1 横向打印 = 2 End Enum '打印机控制API Private Declare Function OpenPrinter Lib "winspool.drv" Alias _ "OpenPrinterA" (ByVal pPrinterName As String, _ phPrinter As Long, _ pDefault As PRINTER_DEFAULTS) As Long Private Declare Function SetPrinter Lib "winspool.drv" Alias _ "SetPrinterA" (ByVal hPrinter As Long, _ ByVal Level As Long, _ pPrinter As Any, _ ByVal Command As Long) As Long Private Declare Function GetPrinter Lib "winspool.drv" Alias _ "GetPrinterA" (ByVal hPrinter As Long, ByVal Level As Long, _ pPrinter As Any, _ ByVal cbBuf As Long, _ pcbNeeded As Long) As Long Private Declare Sub CopyMemory Lib "kernel32" Alias _ "RtlMoveMemory" (hpvDest As Any, _ hpvSource As Any, _ ByVal cbCopy As Long) Private Declare Function ClosePrinter Lib "winspool.drv" (ByVal hPrinter As Long) As Long Private Declare Function DocumentProperties Lib "winspool.drv" Alias _ "DocumentPropertiesA" (ByVal hWnd As Long, _ ByVal hPrinter As Long, _ ByVal pDeviceName As String, _ ByVal pDevModeOutput As Any, _ ByVal pDevModeInput As Any, _ ByVal fMode As Long) As Long '-------------------------------------------------------------------------------- ' 程序: SetPrintStyle ' 描述: 控制打印机设置打印机进纸类型,以及打印方向 ' 参数: orientationConsts (PageDirection) 打印方向,1=纵向打印,2=横向打印 ' Int_PaperSize (Integer = 9) 默认打印A4,A3=8,A5=11,B4=12,B5=13 '-------------------------------------------------------------------------------- Public Function SetPrintStyle(OrientationConsts As PageDirection, _ Optional ByVal Int_PaperSize As Integer = 9) As Boolean Dim PrinterHandle As Long Dim PrinterName As String Dim pd As PRINTER_DEFAULTS Dim MyDevMode As DEVMODE Dim Result As Long Dim Needed As Long Dim pFullDevMode As Long Dim pi2_buffer() As Long PrinterName = Printer.DeviceName If PrinterName = "" Then Exit Function End If pd.pDataType = vbNullString pd.pDevMode = 0& pd.DesiredAccess = PRINTER_ALL_ACCESS Result = OpenPrinter(PrinterName, PrinterHandle, pd) If Result = 0 Then Exit Function Result = GetPrinter(PrinterHandle, 2, ByVal 0&, 0, Needed) ReDim pi2_buffer((Needed \ 4)) Result = GetPrinter(PrinterHandle, 2, pi2_buffer(0), Needed, Needed) If Result = 0 Then Exit Function pFullDevMode = pi2_buffer(7) Call CopyMemory(MyDevMode, ByVal pFullDevMode, Len(MyDevMode)) MyDevMode.dmFormName = orientationConsts MyDevMode.dmOrientation = orientationConsts MyDevMode.dmFields = DM_ORIENTATION MyDevMode.dmFields = MyDevMode.dmFields or DM_PAPERSIZE MyDevMode.dmPaperSize = Int_PaperSize Call CopyMemory(ByVal pFullDevMode, MyDevMode, Len(MyDevMode)) Result = DocumentProperties(0&, _ PrinterHandle, PrinterName, _ ByVal pFullDevMode, _ ByVal pFullDevMode, _ DM_IN_BUFFER or DM_OUT_BUFFER) Result = SetPrinter(PrinterHandle, 2, pi2_buffer(0), 0&) Call ClosePrinter(PrinterHandle) Erase pi2_buffer SetPrintStyle = True End Function 我已经说过多遍关于这个问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 了 如果想自定义纸张的话就用这个。 Printer.PaperSize = 256 '设置纸张为自定义纸张 Printer.PaperHeight = 9.3 * 567 '设置纸张的高度 Printer.PaperWidth = 18.9 * 567 '设置纸张的宽度 Printer.Orientation = ddOPortrait '设置纸张是横向还是竖向打印,此项为横向打印。 对我有用[0] 丢个板砖[0] 引用 举报 管理 TOP 精华推荐:讨论:浅谈winsock ConnectionRequest事件 dbcontrols (自己) 等 级: 2 8 #2楼 得分:0回复于:2002-02-08 08:19:33Dim m_PaperSize As String Private Enum PrinterOrientationConstants OrientPortrait = 1 OrientLandscape = 2 End Enum Private Type DEVMODE dmDeviceName As String * 32 dmSpecVersion As Integer dmDriverVersion As Integer dmSize As Integer dmDriverExtra As Integer dmFields As Long dmOrientation As Integer dmPaperSize As Integer dmPaperLength As Integer dmPaperWidth As Integer dmScale As Integer dmCopies As Integer dmDefaultSource As Integer dmPrintQuality As Integer dmColor As Integer dmDuplex As Integer dmYResolution As Integer dmTTOption As Integer dmCollate As Integer dmFormName As String * 32 dmUnusedPadding As Integer dmBitsPerPel As Integer dmPelsWidth As Long dmPelsHeight As Long dmDisplayFlags As Long dmDisplayFrequency As Long End Type Private Type PRINTER_DEFAULTS pDataType As String pDevMode As Long DesiredAccess As Long End Type Private Type PRINTER_INFO_2 pServerName As Long pPrinterName As Long pShareName As Long pPortName As Long pDriverName As Long pComment As Long pLocation As Long pDevMode As Long pSepFile As Long pPrintProcessor As Long pDataType As Long pParameters As Long pSecurityDescriptor As Long Attributes As Long Priority As Long DefaultPriority As Long StartTime As Long UntilTime As Long Status As Long cJobs As Long AveragePPM As Long End Type Private Const DMPAPER_A2 = 66 Private Const DMPAPER_A3 = 8 Private Const DMPAPER_A4 = 9 Private Const DMPAPER_A5 = 11 Private Const DMPAPER_B4 = 12 Private Const DMPAPER_B5 = 13 Private Const DMPAPER_USER = 256 Private Const DM_IN_BUFFER As Long = 8 Private Const DM_OUT_BUFFER As Long = 2 Private Const DM_ORIENTATION As Long = &H1 Private Const DM_PAPERSIZE = &H2& Private Const PRINTER_ACCESS_ADMINISTER As Long = &H4 Private Const PRINTER_ACCESS_USE As Long = &H8 Private Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000 Private Const PRINTER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED Or PRINTER_ACCESS_ADMINISTER Or PRINTER_ACCESS_USE) Private Declare Sub CopyMemory Lib "kernel32 " Alias "RtlMoveMemory " (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long) Private Declare Function OpenPrinter Lib "winspool.drv " Alias "OpenPrinterA " (ByVal pPrinterName As String, phPrinter As Long, pDefault As Any) As Long Private Declare Function ClosePrinter Lib "winspool.drv " (ByVal hPrinter As Long) As Long Private Declare Function DocumentProperties Lib "winspool.drv " Alias "DocumentPropertiesA " (ByVal hwnd As Long, ByVal hPrinter As Long, ByVal pDeviceName As String, pDevModeOutput As Any, pDevModeInput As Any, ByVal fMode As Long) As Long Private Declare Function GetPrinter Lib "winspool.drv " Alias "GetPrinterA " (ByVal hPrinter As Long, ByVal Level As Long, pPrinter As Any, ByVal cbBuf As Long, pcbNeeded As Long) As Long Private Declare Function SetPrinter Lib "winspool.drv " Alias "SetPrinterA " (ByVal hPrinter As Long, ByVal Level As Long, pPrinter As Any, ByVal Command As Long) As Long Private Function SetDefaultPrinterOrientation(ByVal eOrientation As _ PrinterOrientationConstants) As Boolean Dim bDevMode() As Byte Dim bPrinterInfo2() As Byte Dim hPrinter As Long Dim lResult As Long Dim nSize As Long Dim sPrnName As String Dim dm As DEVMODE Dim pd As PRINTER_DEFAULTS Dim pi2 As PRINTER_INFO_2 ' 获取默认打印机的设备名称 sPrnName = Printer.DeviceName ' 由于要调用SetPrinter,所以 ' 如果是在NT下就要求PRINTER_ALL_ACCESS pd.DesiredAccess = PRINTER_ALL_ACCESS ' 获取打印机句柄 If OpenPrinter(sPrnName, hPrinter, pd) Then ' 获取PRINTER_INFO_2结构要求的字节数 Call GetPrinter(hPrinter, 2&, 0&, 0&, nSize) ReDim bPrinterInfo2(1 To nSize) As Byte lResult = GetPrinter(hPrinter, 2, bPrinterInfo2(1), nSize, nSize) Call CopyMemory(pi2, bPrinterInfo2(1), Len(pi2)) nSize = DocumentProperties(0&, hPrinter, sPrnName, 0&, 0&, 0) ReDim bDevMode(1 To nSize) If pi2.pDevMode Then Call CopyMemory(bDevMode(1), ByVal pi2.pDevMode, Len(dm)) Else Call DocumentProperties(0&, hPrinter, sPrnName, bDevMode(1), 0&, DM_OUT_BUFFER) End If Call CopyMemory(dm, bDevMode(1), Len(dm)) With dm ' 设置新的走向 .dmOrientation = eOrientation .dmFields = DM_ORIENTATION Select Case UCase(PaperSize) Case "A2 " .dmPaperSize = DMPAPER_A2 ' 将纸张大小设为A5,请自行更改所需大小 Case "A3 " .dmPaperSize = DMPAPER_A3 Case "A4 " .dmPaperSize = DMPAPER_A4 Case "A5 " .dmPaperSize = DMPAPER_A5 Case "B4 " .dmPaperSize = DMPAPER_B4 Case "B5 " .dmPaperSize = DMPAPER_B5 Case "自定义 " .dmPaperSize = DMPAPER_USER End Select .dmFields = DM_PAPERSIZE ' 必须,否则无法设置纸张大小 End With Call CopyMemory(bDevMode(1), dm, Len(dm)) Call DocumentProperties(0&, hPrinter, sPrnName, _ bDevMode(1), bDevMode(1), DM_IN_BUFFER Or _ DM_OUT_BUFFER) pi2.pDevMode = VarPtr(bDevMode(1)) lResult = SetPrinter(hPrinter, 2, pi2, 0&) Call ClosePrinter(hPrinter) SetDefaultPrinterOrientation = True Else SetDefaultPrinterOrientation = False End If 对我有用[0] 丢个板砖[0] 引用 举报 管理 TOP 精华推荐:【塞北雪貂】我这十年之回忆录 northlights (北极之光) 等 级: #3楼 得分:0回复于:2002-02-08 14:27:10MSDN 对我有用[0] 丢个板砖[0] 引用 举报 管理 TOP 精华推荐:VB变态应用活动:我最近写的 FlashBit。 xxlroad (土八路) 等 级: #4楼 得分:0回复于:2002-02-08 17:11:35收 对我有用[0] 丢个板砖[0] 引用 举报 管理 TOP 精华推荐:【评选】版内活动:挖掘VB潜能, 征集变态应用 lihonggen0 (李洪根,MS MVP,标准 答案 八年级地理上册填图题岩土工程勘察试题省略号的作用及举例应急救援安全知识车间5s试题及答案 ) 等 级: 6 更多勋章 #5楼 得分:0回复于:2002-03-01 14:08:50Option Explicit Public Enum PrinterOrientationConstants OrientPortrait = 1 OrientLandscape = 2 End Enum Private Type DEVMODE dmDeviceName As String * 32 dmSpecVersion As Integer dmDriverVersion As Integer dmSize As Integer dmDriverExtra As Integer dmFields As Long dmOrientation As Integer dmPaperSize As Integer dmPaperLength As Integer dmPaperWidth As Integer dmScale As Integer dmCopies As Integer dmDefaultSource As Integer dmPrintQuality As Integer dmColor As Integer dmDuplex As Integer dmYResolution As Integer dmTTOption As Integer dmCollate As Integer dmFormName As String * 32 dmUnusedPadding As Integer dmBitsPerPel As Integer dmPelsWidth As Long dmPelsHeight As Long dmDisplayFlags As Long dmDisplayFrequency As Long End Type Private Type PRINTER_DEFAULTS pDatatype As String pDevMode As Long DesiredAccess As Long End Type Private Type PRINTER_INFO_2 pServerName As Long pPrinterName As Long pShareName As Long pPortName As Long pDriverName As Long pComment As Long pLocation As Long pDevMode As Long pSepFile As Long pPrintProcessor As Long pDatatype As Long pParameters As Long pSecurityDescriptor As Long Attributes As Long Priority As Long DefaultPriority As Long StartTime As Long UntilTime As Long Status As Long cJobs As Long AveragePPM As Long End Type '******************* ' ' iDmpaper值 纸张 ' ' 11 A5 ' ' 13 B5 ' '******************* ' Private Const DM_IN_BUFFER As Long = 8 Private Const DM_OUT_BUFFER As Long = 2 Private Const DM_ORIENTATION As Long = &H1 Private Const DM_PAPERSIZE = &H2& Private Const PRINTER_ACCESS_ADMINISTER As Long = &H4 Private Const PRINTER_ACCESS_USE As Long = &H8 Private Const STANDARD_RIGHTS_REQUIRED As Long = &HF0000 Private Const PRINTER_ALL_ACCESS = (STANDARD_RIGHTS_REQUIRED _ Or _ PRINTER_ACCESS_ADMINISTER Or PRINTER_ACCESS_USE) Private Declare Sub CopyMemory Lib "kernel32 " Alias _ "RtlMoveMemory " _ (hpvDest As Any, hpvSource As Any, ByVal _ cbCopy As Long) Private Declare Function OpenPrinter Lib "winspool.drv " Alias _ "OpenPrinterA " (ByVal pPrinterName As String, phPrinter As _ Long, pDefault As Any) As Long Private Declare Function ClosePrinter Lib "winspool.drv " _ (ByVal hPrinter As Long) As Long Private Declare Function DocumentProperties Lib "winspool.drv " _ Alias "DocumentPropertiesA " (ByVal hwnd As Long, ByVal hPrinter _ As Long, _ ByVal pDeviceName As String, pDevModeOutput As _ Any, _ pDevModeInput As Any, _ ByVal fMode As Long) As Long Private Declare Function GetPrinter Lib "winspool.drv " _ Alias "GetPrinterA " (ByVal hPrinter As Long, ByVal Level As Long, _ pPrinter As Any, ByVal cbBuf As Long, pcbNeeded As Long) As _ Long Private Declare Function SetPrinter Lib "winspool.drv " _ Alias "SetPrinterA " (ByVal hPrinter As Long, ByVal Level As Long, _ pPrinter As Any, ByVal Command As Long) As Long '在打印或预览之前直接调用SetDefaultPrinterOrientation 打印走向常数。注意:红色 注释部分用于改变纸张的大小。 Function SetDefaultPrinterOrientation(ByVal eOrientation As _ PrinterOrientationConstants, iDmpaper As Integer) As Boolean Dim bDevMode() As Byte Dim bPrinterInfo2() As Byte Dim hPrinter As Long Dim lResult As Long Dim nSize As Long Dim sPrnName As String Dim dm As DEVMODE Dim olddm As DEVMODE Dim pd As PRINTER_DEFAULTS Dim pi2 As PRINTER_INFO_2 ' 获取默认打印机的设备名称 sPrnName = Printer.DeviceName ' 由于要调用SetPrinter,所以 ' 如果是在NT下就要求PRINTER_ALL_ACCESS pd.DesiredAccess = PRINTER_ALL_ACCESS ' 获取打印机句柄 If OpenPrinter(sPrnName, hPrinter, pd) Then ' 获取PRINTER_INFO_2结构要求的字节数 Call GetPrinter(hPrinter, 2&, 0&, 0&, nSize) ReDim bPrinterInfo2(1 To nSize) As Byte lResult = GetPrinter(hPrinter, 2, bPrinterInfo2(1), nSize, nSize) Call CopyMemory(pi2, bPrinterInfo2(1), Len(pi2)) nSize = DocumentProperties(0&, hPrinter, sPrnName, 0&, 0&, 0) ReDim bDevMode(1 To nSize) If pi2.pDevMode Then Call CopyMemory(bDevMode(1), ByVal pi2.pDevMode, Len(dm)) Else Call DocumentProperties(0&, hPrinter, sPrnName, bDevMode(1), 0&, DM_OUT_BUFFER) End If Call CopyMemory(dm, bDevMode(1), Len(dm)) Call CopyMemory(olddm, bDevMode(1), Len(olddm)) With dm ' 设置新的走向 .dmOrientation = eOrientation .dmFields = DM_ORIENTATION .dmPaperSize = iDmpaper '将纸张大小设为 iDmpaper,请自行更改所需大小 ' .dmPaperLength = iDmpaperLength ' .dmPaperWidth = iDmpaperWidth .dmFields = DM_PAPERSIZE '必须,否则无法设置纸张 大小 End With Call CopyMemory(bDevMode(1), dm, Len(dm)) Call DocumentProperties(0&, hPrinter, sPrnName, _ bDevMode(1), bDevMode(1), DM_IN_BUFFER Or _ DM_OUT_BUFFER) pi2.pDevMode = VarPtr(bDevMode(1)) lResult = SetPrinter(hPrinter, 2, pi2, 0&) Call ClosePrinter(hPrinter) SetDefaultPrinterOrientation = True Else SetDefaultPrinterOrientation = False End If End Function
本文档为【vb6 设置打印机纸张类型,以及打印方向】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_105949
暂无简介~
格式:doc
大小:60KB
软件:Word
页数:24
分类:
上传时间:2017-10-13
浏览量:137