翻譯|使用教程|編輯:吉煒煒|2025-04-02 13:57:40.643|閱讀 87 次
概述:Excel 文檔的常規打印操作十分簡單。然而,一旦涉及特殊打印需求,情況就會變得比較麻煩。文將介紹如何使用 Spire.XLS for .NET 在 C# 中通過頁面設置對 Excel 打印選項進行設置,以及如何將 Excel 文檔發送到打印機。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Excel 文檔的常規打印操作十分簡單。然而,一旦涉及特殊打印需求,情況就會變得比較麻煩。比如,僅打印工作表中的選定區域,在每一頁重復打印標題行,或是將工作表調整至一頁內打印,都需要一些特定的設置與操作。本文將介紹如何使用 Spire.XLS for .NET 在 C# 中通過頁面設置對 Excel 打印選項進行設置,以及如何將 Excel 文檔發送到打印機。
首先,您需要將 Spire.XLS for .NET 包含的 DLL 文件作為引用添加到您的 .NET 項目中。DLL 文件可以從下載,也可以通過 安裝。
Excel 的頁面設置功能提供了多種選項,用于控制工作表的打印方式。比如,是否打印批注、是否打印網格線,以及指定要打印的單元格區域等。Spire.XLS 提供了 PageSetup 對象來設置這些 Excel 打印選項。具體步驟如下:
安裝 Spire.XLS for .NET
PM> Install-Package Spire.XLS
C# 通過頁面設置設置 Excel 打印選項
using Spire.Xls;
namespace PrintOptions
{
class Program
{
static void Main(string[] args)
{
// 創建workbook對象
Workbook workbook = new Workbook();
// 加載Excel文檔
workbook.LoadFromFile("測試.xlsx");
// 獲取第一張工作表
Worksheet worksheet = workbook.Worksheets[0];
// 獲取PageSetup對象
PageSetup pageSetup = worksheet.PageSetup;
// 設置頁邊距
pageSetup.TopMargin = 0.3;
pageSetup.BottomMargin = 0.3;
pageSetup.LeftMargin = 0.3;
pageSetup.RightMargin = 0.3;
// 指定打印區域
pageSetup.PrintArea = "A1:F7";
// 指定標題行
pageSetup.PrintTitleRows = "$1:$2";
// 允許打印行/列標題
pageSetup.IsPrintHeadings = true;
// 允許打印網格線
pageSetup.IsPrintGridlines = true;
// 允許打印顯示在工作表上的注釋
pageSetup.PrintComments = PrintCommentType.InPlace;
// 設置打印質量(dpi)
pageSetup.PrintQuality = 300;
// 允許以黑白模式打印工作表
pageSetup.BlackAndWhite = true;
// 設置打印順序
pageSetup.Order = OrderType.OverThenDown;
// 將工作表打印到一頁紙上
pageSetup.IsFitToPage = true;
// 保存結果文檔
workbook.SaveToFile("頁面打印選項.xlsx", ExcelVersion.Version2016);
}
}
}
打印對話框可讓用戶選擇特定打印任務的選項。例如,用戶可以指定要使用的打印機。以下是使用 Spire.XLS for .NET 將 Excel 文檔發送到打印對話框的步驟:
C# 使用打印對話框打印 Excel 文檔
using System;
using Spire.Xls;
using System.Drawing.Printing;
using System.Windows.Forms;
namespace PrintExcelUsingPrintDialog
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
// 創建workbook對象
Workbook workbook = new Workbook();
// 加載Excel文檔
workbook.LoadFromFile("測試.xlsx");
// 將工作表打印到一頁紙上
PageSetup pageSetup = workbook.Worksheets[0].PageSetup;
pageSetup.IsFitToPage = true;
// 創建PrintDialog對象
PrintDialog dialog = new PrintDialog();
// 指定打印機設置
dialog.AllowCurrentPage = true;
dialog.AllowSomePages = true;
dialog.AllowSelection = true;
dialog.UseEXDialog = true;
dialog.PrinterSettings.Duplex = Duplex.Simplex;
// 將打印對話框應用到工作簿
workbook.PrintDialog = dialog;
// 創建PrintDocument對象
PrintDocument printDocument = workbook.PrintDocument;
// 調用打印對話框
if (dialog.ShowDialog() == DialogResult.OK)
{
printDocument.Print();
}
}
}
}
如果不想看到打印對話框或打印過程,可以將 Excel 文檔靜默地打印到指定的打印機。具體步驟如下:
————————————————————————————————————————
關于慧都科技:
慧都科技是專注軟件工程、智能制造、石油工程三大行業的數字化解決方案服務商。在軟件工程領域,我們提供開發控件、研發管理、代碼開發、部署運維等軟件開發全鏈路所需的產品,提供正版授權采購、技術選型、個性化維保等服務,幫助客戶實現技術合規、降本增效與風險可控。慧都科技E-iceblue的官方授權代理商,提供E-iceblue系列產品免費試用,咨詢,正版銷售等于一體的專業化服務。E-iceblue是國產文檔處理領域的優秀產品,支持國產化信創,幫助企業高效構建文檔處理的應用程序。
歡迎下載|體驗更多E-iceblue產品
獲取更多信息請咨詢 ;技術交流Q群(1041253375)
C# 靜默打印 Excel 文檔
using Spire.Xls;
using System.Drawing.Printing;
namespace SilentlyPrint
{
class Program
{
static void Main(string[] args)
{
// 創建Workbook對象
Workbook workbook = new Workbook();
// 加載Excel文檔
workbook.LoadFromFile("測試.xlsx");
// 將工作表打印到一頁紙上
PageSetup pageSetup = workbook.Worksheets[0].PageSetup;
pageSetup.IsFitToPage = true;
// 將打印控制器設置為StandardPrintController,防止顯示打印過程
workbook.PrintDocument.PrintController = new StandardPrintController();
// 從工作簿中獲取打印機設置
PrinterSettings settings = workbook.PrintDocument.PrinterSettings;
// 指定打印機名稱、雙面打印模式和打印頁數
settings.PrinterName = "HP LaserJet P1007";
settings.Duplex = Duplex.Simplex;
settings.FromPage = 1;
settings.ToPage = 3;
// 打印工作簿
workbook.PrintDocument.Print();
}
}
}
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都網