
正文
vb.net虚拟打印机 虚拟机虚拟打印
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
在VB中如何设置虚拟打印机为缺省打印机
如果你安装有 office 在【控制面板】-【打印机和传真】中会有vb.net虚拟打印机:Microsoft Office Document Image Writervb.net虚拟打印机,右键点击后点击“设置为默认打印机”即可。
相关问答
Q1: VB代码如何实现将word文档转换成PDF文档?
1、首先你在网上下载word转换成PDF格式的软件,如我的是dopdf-v7,或者是wordtopdftool,
2、安装完成后,打开word文档点打印,选择安装的转换虚拟打印机打印,我的如下图所示
3、点击打印保存桌面即可
希望能帮到你,祝你工作愉快~如有需要软件请联系腾讯号378823078
Q2: vb.net 导出PDF
利用DataWindow.net在 vb.net 下导出PDF格式文件
利用datawindow.net,导出PDF文件,实现前提:
1.安装Acrobat Distiller虚拟打印机,注意要用datawindow.net提供的打印驱动,在c:\program files\sybase\datawindow.net2.0\driver中,在文章最后,我会提供一个静态安装虚拟打印机的批处理文件,方便安装。
2.安装Ghostscript 7.05 ,在网上找,免费的。
3.导出PDF文件前,一要指定虚拟打印机名,其次导出格式为PDF(Export.PDF.Method=Distill!),另外还要指定 PDF.Distill.CustomPostScript=Yes。
具体代码如下:
''' summary
''' 导出文件
''' /summary
''' param name="sender"/param
''' param name="e"/param
''' remarks/remarks
Private Sub btnExport_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExport.Click
Try
Dim strFilename, strPrinter As String
Dim saveDg As New SaveFileDialog
strPrinter = Me.dwPrint.Describe("DataWindow.Print.PrinterName")
saveDg.FileName = Me.dwPrint.Tag.ToString
saveDg.Filter = "Pdf文件|*.pdf|Excel文件|*.xls|所有文件|*.*"
If saveDg.ShowDialog = Windows.Forms.DialogResult.OK Then
strFilename = saveDg.FileName
If strFilename.IndexOf(".pdf") 0 Then
Me.dwPrint.Modify("DataWindow.Print.PrinterName='Acrobat Distiller'")
Me.dwPrint.Modify("DataWindow.Export.PDF.Method=Distill!")
Me.dwPrint.Modify("DataWindow.Export.PDF.Distill.CustomPostScript=Yes")
Me.dwPrint.SaveAs(strFilename, Sybase.DataWindow.FileSaveAsType.Pdf, True)
ElseIf strFilename.IndexOf(".xls") 0 Then
Me.dwPrint.SaveAs(strFilename, Sybase.DataWindow.FileSaveAsType.Excel, True)
End If
Me.dwPrint.Modify("DataWindow.Print.PrinterName='" + strPrinter + "'")
MessageBox.Show("导出成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
4 批处理文件(实现静默安装)
Q3: 想把vb.net中的界面以打印word文档的样子打印,能保存成work文档也行,该怎么弄
没装打印机驱动或是默认打印机是Microsoft Office document image writter,那个是用来把文稿转换成图片的虚拟打印机,就会变成另存为tiff图片
Q4: vb中,用 Open LPT1 For Output As #1 连接不上虚拟打印机 怎么处理,提示文件未找到!
我们编程时,如果在程序中加入“打印”功能会使程序更加完善,更加专业。下面,我提供几种编写打印程序的方法以供大家参考。
1. 采用Visual Basic提供的简单打印函数PrintForm方法
应用程序窗体的PrintForm方法时Visual Basic把当前窗体的位图送到打印机。该方法的优点在于它几乎不需要任何编程但也有很大缺陷。最为突出的是当低分辨率图形在高分辨率打印机上打印时其结果令人无法满意会产生锯齿。
代码如下:
Private Sub Command1_Click '用PrintForm打印
Me.PrintForm '打印窗体的可见区域
End Sub
2. 用Printer对象
要想产生复杂的打印输出编程较为烦琐。Printer对象代表系统缺省的打印机Printer对象支持许多由窗体和图形框所支持的属性和方法三种对象都有画线和画方框。应用程序可用以下代码在Printer对象上画出1平方英寸的方框。注意打印机以twips来测量距离。每英寸有1440个twips。
Printer.Line2144021440 -Step14401440 B
打印机、从窗体和图形框都有Circle、PaintPicture、Print、Pset、TextHeight、TextWidth方法。使用这些方法应用程序可以为打印机生成高分辨率输出。
打印文本直接用Print方法,见下列代码:
Printer.Print "HelloChina ComputerWorld" '打印字符串
Printer对象还有一些窗体和图形框都没有方法
NewPage告诉打印机程序对当前输出页的发送已经结束Printer对象应开始新的一页。
EndDoc告诉VB程序创建文档结束VB应将它发送到物理打印机上打印。
KillDoc取消当前打印作业。应用程序应该终止由EndDoc和KillDoc所设定的每个打印作业。
Zoom属性用于定义打印输出的缩放因子。
Copies属性用于定义打印的副本数目。
3. 如果你在编程时用到了RichTextBox控件那么你可以使用该控件的SelPrint 方法来打印
代码如下:
Private Sub Command3_Click 'SelPrint方法
CommonDialog1.Flags=cdlPDReturnDC+
cdlPDNoPageNums
If RTF1.SelLength = 0 Then 'RTF1为窗体的RichTextBox控制
CommonDialog1.Flags = CommonDialog1.Flags+ cdlPDAllPages
Else
CommonDialog1.Flags = CommonDialog1.Flags+ cdlPDSelection
End If
CommonDialog1.CancelError = True
On Error Resume Next
CommonDialog1.ShowPrinter
If Err.Number = cdlCancel Then Exit Sub
If Err.Number 0 Then
Beep
MsgBox "Error printing file." vbCrLf + Err.Description vbOKOnly +vbExclamation "Printing Error"
Exit Sub
End If
Printer.Print ""
RTF1.SelPrint CommonDialog1.hDC '打印RTF1控件的可见区域
End Sub
上面代码先进行打进设置再进行打印。如果不需要设置采用下面代码更为简单
RTF1.SelPrint Printer.hDC '打印RTF1控件的可见区域
4.可以在VB中调用Word 97提供的OLE自动化服务利用Word 97强大的打印功能来完成VB打印
代码如下:
Private Sub Command4_Click '调用Word打印
Dim objWord As Object
Const CLASSOBJECT = "Word.Application"
On Error GoTo objError
Set objWord = CreateObjectCLASSOBJECT
objWord.Visible = True
objWord.Documents.Add
With objWord
.ActiveDocument.Paragraphs.Last.Range.Bold = False
.ActiveDocument.Paragraphs.Last.Range.Font.Size =20
.ActiveDocument.Paragraphs.Last.Range.Font.Name = "黑体"
.ActiveDocument.Paragraphs.Last.Range.Font.ColorIndex==4
.ActiveDocument.Paragraphs.Last.Range.Text = "我是计算机世界读者"
End With
Clipboard.Clear
Clipboard.SetText "通过剪切板向WORD传送数据"
objWord.Selection.Paste
objWord.PrintPreview = True '预览方式
'objWord.PrintOut'执行打印
'objWord.Quit'退出Word
Exit Sub
objError
If Err 429 Then
MsgBox Str$Err Error$
Set objWord = Nothing '不能创建Word对象则退出
Exit Sub
Else
Resume Next
End If
End Sub
Q5: 用vb怎么编写一个虚拟打印机程序??
只要你能在picturebox上或者form上熟练地绘图和打印文字,就可以随时打印
printer对象vb.net虚拟打印机的绘图\打印文字和上面的方法是模一样的
只不过最后加一个enddoc输往打印机
朋友vb.net虚拟打印机,说话友好些嘛vb.net虚拟打印机,人不知不为过啦
如果确实要实现虚拟打印机,那么要用到虚拟驱动器技术,这不是VB等能实现的,要用C语言编写vxd驱动才行。
确实如果你想练习编写打印机程序,系统没有安装一个打印机程序时,printer对象用不了,这时用一种变通的办法,你去“添加打印机”对话框中随便添加一个打印机,不管什么型号的都可以,然后就可以在VB里使用Printer对象了。Windows有Spooling(假脱机打印)技术,VB是不知道是否有打印机连接的,这是不是你所谓的“虚拟打印机”呢vb.net虚拟打印机?不过想用Printer对象一定要这么做,不然用不了
还不明白直接留言给vb.net虚拟打印机我
vb.net虚拟打印机的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于虚拟机虚拟打印、vb.net虚拟打印机的信息别忘了在本站进行查找喔。






