這是我想出來的最好的:有沒有更好的方法從PrintDocument獲取頁面數量?
public static int GetPageCount(PrintDocument printDocument)
{
printDocument.PrinterSettings.PrintFileName = Path.GetTempFileName();
printDocument.PrinterSettings.PrintToFile = true;
int count = 0;
printDocument.PrintController = new StandardPrintController();
printDocument.PrintPage += (sender, e) => count++;
printDocument.Print();
File.Delete(printDocument.PrinterSettings.PrintFileName);
return count;
}
有沒有更好的方式來做到這一點? (這實際上是相當緩慢)
不具有的PrintDocument本身。您需要知道您想要打印的文件的頁面數量,通過線路數量和您將使用的邊距以及每頁所需的行數量等。 – Wildhorn 2010-08-27 18:30:32