Microsoft Print to PDF的纸张大小问题

问题——2023.11已解决

在word打印选项页面设置纸张大小为信纸,在“打印机属性->高级”中也设置纸张规格为信纸

但是导出的PDF文档大小依然是A4

解决方案——来自评论区

「Word选项」,在「高级」一栏中的「打印」类里,取消「缩放内容以适应A4或8.5x11”纸张大小」的勾选即可。注意是取消勾选哦!

Acknowledgement:评论区大佬GWJ96

在VB.NET中,如果你想要使用Microsoft Print to PDF功能将文档转换成PDF并指定特定的保存路径,你可以通过`System.Printing.PrintQueue`和`System.Drawing.Printing.PrintDocument`类来实现。以下是一个基本的步骤: 1. 首先,你需要添加对`System.Printing`和`System.Drawing.Printing`命名空间的引用。 ```vb.net Imports System.Printing Imports System.Drawing.Printing ``` 2. 创建一个PrintDocument对象,并设置其属性,比如纸张大小、打印范围等。 ```vb.net Dim printDoc As New Printing.PrintDocument() printDoc.DefaultPageSettings = New Printing.PageSettings() printDoc.DefaultPageSettings.Landscape = True ' 如果需要 landscape 方式打印 printDoc.DefaultPageSettings.PaperSize = New Printing.PaperSize("A4") ' 设置纸张类型 ``` 3. 添加一个事件处理器来处理PrintDocument对象的PrintPage事件,这将在每次页面打印前被触发。 ```vb.net Private Sub printDoc_PrintPage(sender As Object, e As Printing.PrintPageEventArgs) Handles printDoc.PrintPage ' 在这里绘制你的内容,例如图形、文本等 End Sub ``` 4. 初始化PrintQueue对象,指向你的打印机,然后创建一个SaveFileDialog让用户选择保存位置。 ```vb.net Dim saveFileDialog As New SaveFileDialog() saveFileDialog.Filter = "PDF files (*.pdf)|*.pdf" If saveFileDialog.ShowDialog() = DialogResult.OK Then Dim filePath As String = saveFileDialog.FileName Dim printerName As String = "YourPrinterName" ' 替换为你实际打印机的名称 Using job As New Printing.PrintJob(printerName, "Exporting to PDF", Nothing) job.Document = printDoc job.Queue高峰时间 = 0 job.Priority = Printing.JobPriority.Normal job.Send() job.WaitForNoMoreEvents(Printing.JobWaitReason.UserRequest) job.Complete(True) ' 完成打印任务 Dim pdfConverter As New PdfSharp.Xps.Pdf.XpsConverterDocument(printDoc) pdfConverter.Save(filePath) End Using End If ``` 5. 当用户点击“保存”按钮时,会弹出文件保存对话框,选择路径后开始将打印任务转换为PDF并保存。 注意:`PdfSharp`库用于将打印文档转换为PDF,如果项目中尚未包含这个库,记得安装它。同时,确保系统的权限允许打印操作。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值