冰蓝科技
|
028-81705109
|
|
微信扫一扫
|

Spire.Cloud 纯前端文档控件

Spire.Office 7.3.2已发布。本次更新带来了一些新功能。例如:Spire.Email实现了LinkedResource接口支持给邮件添加图片;Spire.Presentation支持创建“地图”图表和修改图表源数据的数字格式;Spire.PDF支持填充XFA图片域;Spire.XLS支持转换Excel到PDF时设置内容适应页面宽度的功能。此外,该版本还修复了大量已知的问题。

该版本涵盖了最新版的Spire.Doc,Spire.PDF,Spire.XLS,Spire.Email,Spire.DocViewer, Spire.PDFViewer,Spire.Presentation,Spire.Spreadsheet, Spire.OfficeViewer, Spire.Barcode, Spire.DataExport。

版本信息如下:

获取Spire.Office 7.3.2请点击:

https://www.e-iceblue.cn/Downloads/Spire-Office-NET.html


Spire.Email

新功能:


Spire.Presentation

新功能:

问题修复:


Spire.XLS

新功能:

问题修复:


Spire.Doc


Spire.PDF

新功能:

问题修复:

Spire.XLS 12.3.8已发布。该版本支持转换Excel到PDF时设置内容适应页面宽度的功能,此外还修复了打印Excel时分页不正确等已知问题。详情请阅读以下内容。

新功能:

问题修复:


获取Spire.XLS 12.3.8请点击:

https://www.e-iceblue.cn/Downloads/Spire-XLS-NET.html

Spire.Office for Java 5.3.2已发布。本次更新带来了一些新的功能,比如:Spire.XLS for Java支持为图表分类轴设置文本方向以及对Table进行排序,还支持支持创建瀑布图、Pareto直方图、直方图、箱形图、树状图、旭日图、漏斗图,并且增强了Excel到PDF、Excel到图片的转换功能;Spire.PDF for Java支持将PDF转换为灰度文档,还增强了PDF到PDFA1B的转换功能。此外还修复了其它一些已知问题,详情请阅读以下内容。

获取Spire.Office for Java 5.3.2请点击:

https://www.e-iceblue.cn/Downloads/Spire-Office-JAVA.html


Spire.XLS for Java

新功能:

问题修复:


Spire.PDF for Java

新功能:

问题修复:


Spire.Doc for Java

问题修复:


Spire.Presentation for Java

问题修复:

通过将彩色 PDF 文档转为灰色调、无彩色效果页面的文档,可实现缩小文档大小的目的。本文,将通过调用 Spire.PDF for Java 提供的 PdfGrayConverter.toGrayPdf() 方法介绍实现将 PDF 转为灰度的方法。以下是详细步骤。

安装 Spire.PDF for Java

首先,您需要在 Java 程序中添加 Spire.Pdf.jar 文件作为依赖项。JAR 文件可以从此链接下载。 如果您使用 Maven,则可以将以下代码添加到项目的 pom.xml 文件中,从而在应用程序中导入 JAR 文件。

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.pdf</artifactId>
        <version>11.11.11</version>
    </dependency>
</dependencies>

将 PDF 转为灰度

实现转换时,可通过以下步骤完成:

  • Java
import com.spire.pdf.conversion.*;

public class ToGrayPDF {
    public static void main(String[] args) {
        //创建一个PdfGrayConverter实例并加载PDF文档
        PdfGrayConverter converter = new PdfGrayConverter("Booklet.pdf");

        //将彩色PDF转换为灰度
        converter.toGrayPdf("ToGray.pdf");
        converter.dispose();
    }
}

Java 将 PDF 转为灰度

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。

Spire.PDF 8.3.9已发布。该版本支持填充XFA图片域,并修复了获取 PDF 表单域失败等已知问题。详情请阅读以下内容。

新功能:

问题修复:


获取Spire.PDF 8.3.9请点击:

https://www.e-iceblue.cn/Downloads/Spire-PDF-NET.html

使用C#打印PDF文档

在C#中打印PDF文档无需依赖Adobe Acrobat。通过Spire.PDF,开发者可以轻松将强大的打印功能集成到应用程序中。该库提供了一种流畅的编程方法,能够管理从简单打印任务到高级功能(如双面打印和静默打印)的一切需求。无论您需要打印单页还是多页文档,Spire.PDF都能确保精确性和高效性。

本文将探讨如何使用Spire.PDF for .NET 在C# 应用程序中打印PDF自定义打印设置以及解决常见问题。

最佳C# .NET PDF打印库

在C#中打印PDF时,有多种库可供选择,但Spire.PDF因其功能强大且对开发者友好而脱颖而出。Spire.PDF提供以下优势:

  • 全面的PDF操作能力
  • 简单而强大的打印功能
  • 无需依赖Adobe Acrobat
  • 支持WPF, WinForms和Console应用程序
  • 丰富的打印设置自定义选项

该库处理了PDF渲染和打印机通信的所有底层复杂性,使开发者能够专注于业务逻辑的实现,而无需纠结于打印机API。

首先,通过NuGet包管理器安装Spire.PDF for .NET库:

Install-Package Spire.PDF

或者,您也可以从我们的官方网站直接下载Spire.PDF,并在项目中引用DLL文件。

C#中打印PDF的基础操作:直接打印PDF到默认打印机

现在,让我们从最简单的场景开始:将PDF文档打印到系统的默认打印机。Spire.PDF使这一过程变得非常简单:

using Spire.Pdf;

namespace PrintWithDefaultPrinter
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个 PdfDocument 对象
            PdfDocument doc = new PdfDocument();

            // 加载一个 PDF 文件
            doc.LoadFromFile("C:/Users/Administrator/Desktop/Input.pdf");

            // 打印到默认打印机
            doc.Print();

            // 清理资源
            doc.Dispose();
        }
    }
}

这个基础示例展示了核心工作流程:

  1. 创建 PdfDocument实例
  2. 加载现有的PDF文件
  3. 调用 Print() 方法将文档发送至默认打印机
  4. 清理资源

这种简洁的方法非常适合只需快速打印文档而无需特殊要求的场景。

Spire.PDF的高级打印设置

虽然基础打印方法适用于简单情况,但大多数实际应用需要对打印过程进行更多控制。Spire.PDF 通过其PrintSettings属性提供了丰富的打印自定义选项。

1. 指定打印机名称

您可以指定目标打印机名称,而非使用默认打印机:

doc.PrintSettings.PrinterName = "您的打印机名称";

2. 设置打印页面范围

对于大型文档,您可能只需打印特定页面。使用 SelectPageRange() 定义起始页和结束页:

doc.PrintSettings.SelectPageRange(1, 5); //打印第1至第5页

若需打印非连续页面,可使用 SelectSomePages()

doc.PrintSettings.SelectSomePages(new int[]{ 1, 3, 5, 7 });

3. 调整打印份数

需要多份打印?设置 Copies属性即可:

doc.PrintSettings.Copies = 2;

4. 启用双面打印

双面打印可以节省纸张,常用于专业文档。首先检查打印机是否支持:

if (doc.PrintSettings.CanDuplex)
{
    doc.PrintSettings.Duplex = Duplex.Default;
}

5. 黑白(灰度)打印

对于无需彩色的文档,可以强制使用灰度打印:

doc.PrintSettings.Color = false;

6. 静默打印(隐藏对话框和进程)

在自动化工作流中,通常需要无需用户交互的打印:

doc.PrintSettings.PrintController = new StandardPrintController();

此设置会抑制所有打印对话框,使打印过程完全静默。请谨慎使用,因为它移除了用户确认或调整设置的能力。

7. 将不同页面打印到不同纸盒

支持多纸盒的高级打印机可以自动处理复杂文档组装:

// 注册纸张设置事件处理器
doc.PrintSettings.PaperSettings += delegate (object sender, PdfPaperSettingsEventArgs e)
{
    // 第1-10页使用纸盒1
    if (1 <= e.CurrentPaper && e.CurrentPaper <= 10)
    {
        e.CurrentPaperSource = e.PaperSources[0];
    }
    // 第10页之后使用纸盒2
    else
    {
        e.CurrentPaperSource = e.PaperSources[1];
    }
};

此功能适用于专业文档制作,例如封面、插页或章节分隔页可以自动打印在不同纸张上。

8. 每张纸上打印多页

通过在一张纸上排列多页PDF来优化纸张使用。SelectMultiPageLayout() 方法允许指定页面排列的行列布局:

doc.PrintSettings.SelectMultiPageLayout(2, 2); // 每张纸打印4页(2行×2列)

结论

在C#中通过编程打印PDF文档,既不需要依赖Adobe Acrobat,也无需调用复杂的打印机API。借助Spire.PDF,仅需几行代码即可实现从基础打印到专业级输出的所有功能。该库在隐藏复杂性的同时,仍能提供精细化的控制能力。

无论您正在构建文档管理系统、报表工具,还是任何需要PDF打印功能的应用程序,Spire.PDF都能提供一套兼顾易用性与强大特性的完整解决方案。立即探索其功能,彻底革新您的PDF打印工作流程!

常见问题解答

Q1:如何在C#中打印PDF且不依赖Adobe?

使用Spire.PDF的 Print() 方法,直接将文档发送至打印机即可。

Q2:能否将PDF打印到网络打印机?

可以。只要打印机已正确安装到系统中,您即可通过名称指定网络打印机(操作方式与本地打印机相同)。

Q3:如何在WPF或WinForms中打印PDF?

本文提供的代码片段可无缝适用于WPF和WinForms应用程序。在WPF中,建议添加打印机选择对话框以提升用户体验。

Q4:如何通过C#编程提升PDF打印质量?

通过PrinterResolutionKind属性设置打印机分辨率可控制打印质量。如需高质量输出,请使用:

doc.PrintSettings.PrinterResolutionKind = PdfPrinterResolutionKind.High;

Spire.PDF支持以下分辨率选项:

  • Low (低质量)
  • Medium (标准质量)
  • High (最佳质量)
  • Custom (需额外设置DPI)

注意 :实际输出效果取决于打印机硬件能力。如需照片级打印,请确保打印机支持高DPI(如1200×1200)并使用高质量纸张。对于色彩敏感文档,可结合doc.PrintSettings.Color = true设置。

申请临时License

如果您需要去除生成文档中的评估提示或解除功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。

Spire.Doc for Java 5.3.16已发布。该版本增强了Word到PDF、Word 到HTML的转换功能。此外还修复了更新目录时应用程序抛出“StackOverflowError”等已知问题。详情请阅读以下内容。

问题修复:


获取Spire.Doc for Java 5.3.16请点击:

https://www.e-iceblue.cn/Downloads/Spire-Doc-JAVA.html

Spire.XLS for Java 5.3.3已发布。该版本支持为图表分类轴设置文本方向以及对Table进行排序,还增强了Excel到图片、Excel到PDF的转换功能。此外,还修复了附加富文本时程序抛出“NullPointerException”等已知问题。详情请阅读以下内容:

新功能:

问题修复:


下载Spire.XLS for Java 5.3.3请点击:

https://www.e-iceblue.cn/Downloads/Spire-XLS-JAVA.html

Spire.Presentation for Java 5.3.2已发布。该版本增强了PPTX文件到图片以及形状到图片的转换功能。详情请阅读以下内容。

问题修复:


获取Spire.Presentation for Java 5.3.2请点击:

https://www.e-iceblue.cn/Downloads/Spire-Presentation-JAVA.html

带有 .rtf 文件扩展名的文件是一种富文本(Rich Text Format)格式文件,可以被大多数的文字处理程序打开,也很方便编辑。但在日常工作中,如果需要共享和打印文档,建议将 RTF 转换为 PDF 进行进一步处理。本文,将通过 C# 及 VB.NET 程序向您展示如何使用 Spire.Doc for .NET 将 RTF 转换为 PDF。

安装 Spire.Doc for .NET

首先,您需要添加 Spire.Doc for .NET 包中包含的 DLL 文件作为 .NET 项目中的引用。DLL 文件可以从 此链接 下载或通过 NuGet 安装。

PM> Install-Package Spire.Doc

将 RTF 转为 PDF

Spire.Doc for .NET 提供了方法可直接用于加载 RTF 文档,并通过以下步骤将 RTF 转为 PDF:

  • C#
  • VB.NET
using Spire.Doc;

namespace RTFtoPDF
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建Document类的实例
            Document doc = new Document();

            //加载RTF文档
            doc.LoadFromFile("https://cdn.e-iceblue.cn/sample.rtf", FileFormat.Rtf);

            //保存为PDF格式
            doc.SaveToFile("RTFtoPDF.pdf", FileFormat.PDF);
        }
    }
}
Imports Spire.Doc

Namespace RTFtoPDF
	Class Program
		Private Shared Sub Main(args As String())
			'创建Document类的实例
			Dim doc As New Document()

			'加载RTF文档
			doc.LoadFromFile("https://cdn.e-iceblue.cn/sample.rtf", FileFormat.Rtf)

			'保存为PDF格式
			doc.SaveToFile("RTFtoPDF.pdf", FileFormat.PDF)
		End Sub
	End Class
End Namespace

C#/VB.NET 将 RTF 转为 PDF

申请临时 License

如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请 该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。 获取有效期 30 天的临时许可证。