PDF ファイルを実在するプリンターに送信し印刷することは、私たちの日常生活で最も一般的なタスクの1つです。たとえば、契約書、請求書、履歴書を紙に印刷して、デバイスを使用せずにそれらを表示できるようにする必要がある場合があります。この記事では、Spire.PDF for .NET を使用して C# および VB.NET で PDF ドキュメントを印刷する方法を、次の7つの例とともに示します。
- デフォルトのプリンタで PDF を印刷する
- 指定したプリンタで選択したページを印刷する
- Microsoft XPS ドキュメントライターを使用して PDF を XPS に印刷する
- PDF をサイレントに印刷
- 両面印刷モードで PDF を印刷
- PDFをグレースケールで印刷
- さまざまなページ範囲をさまざまなトレイに印刷する
Spire.PDF for .NET をインストールします
まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。PM> Install-Package Spire.PDF
デフォルトのプリンタで PDF を印刷する
以下は、Spire.PDF for .NET を使用して C# および VB.NET の既定のプリンターで PDF ドキュメントを印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PdfDocument.Print() メソッドを呼び出して、デフォルトのプリンターでドキュメントを直接印刷します。
- C#
- VB.NET
using Spire.Pdf;
namespace PrintWithDefaultPrinter
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルをロードする
doc.LoadFromFile(@"C: \Users\Administrator\Desktop\sample.pdf");
//デフォルトのプリンタで印刷する
doc.Print();
}
}
}
Imports Spire.Pdf
Namespace PrintWithDefaultPrinter
Class Program
Shared Sub Main(ByVal args() As String)
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFファイルをロードする
doc.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")
'デフォルトのプリンタで印刷する
doc.Print()
End Sub
End Class
End Namespace
指定したプリンタで選択したページを印刷する
以下は、Spire.PDF for .NET を使用して C# および VB.NET で指定されたプリンターで PDF ドキュメントを印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PrintSettings.PrinterName プロパティを使用してプリンター名を指定します。
- PrintSettings.SelectSomePages() メソッドまたは PrintSettings.SelectPageRange() メソッドを使用して、印刷する不連続ページまたは連続ページを選択します。
- PdfDocument.Print() メソッドを呼び出して、印刷を実行します。
- C#
- VB.NET
using Spire.Pdf;
namespace PrintWithSpecifiedPrinter
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルをロードする
doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pdf");
//プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル";
//印刷するページ範囲を選択する
doc.PrintSettings.SelectPageRange(1, 5);
//印刷する不連続ページを選択する
//doc.PrintSettings.SelectSomePages(new int[] { 1, 3, 5, 7 });
//ドキュメントを印刷する
doc.Print();
}
}
}
Imports Spire.Pdf
Namespace PrintWithSpecifiedPrinter
Class Program
Shared Sub Main(ByVal args() As String)
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFファイルをロードする
doc.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")
'プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル"
'印刷するページ範囲を選択する
doc.PrintSettings.SelectPageRange(1, 5)
'印刷する不連続ページを選択する
'doc.PrintSettings.SelectSomePages(new int[] { 1, 3, 5, 7 });
'ドキュメントを印刷する
doc.Print()
End Sub
End Class
End Namespace
Microsoft XPS ドキュメントライターを使用して PDF を XPS に印刷する
以下は、C# および VB.NET で Microsoft XPS ドキュメントライターを使用して PDF を XPS に印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PrintSettings.PrinterName プロパティを使用して、プリンター名を Microsoft XPSDocumentWriter に設定します。
- PrintSettings.PrintToFile() メソッドを使用して、印刷ファイルのパスと名前を設定します。
- PdfDocument.Print() メソッドを使用して印刷を実行します。
- C#
- VB.NET
using Spire.Pdf;
namespace PrintPdfToXps
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFドキュメントをロードする
doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pdf");
//プリンター名をMicrosoftXPSドキュメントライターに設定する
doc.PrintSettings.PrinterName = "Microsoft XPS ドキュメントライター";
//印刷ファイルのパスと名前を設定する
doc.PrintSettings.PrintToFile("PrintToXps.xps");
//Execute printing
doc.Print();
}
}
}
Imports Spire.Pdf
Namespace PrintPdfToXps
Class Program
Shared Sub Main(ByVal args() As String)
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFドキュメントをロードする
doc.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")
'プリンター名をMicrosoftXPSドキュメントライターに設定する
doc.PrintSettings.PrinterName = "Microsoft XPS ドキュメントライター"
'印刷ファイルのパスと名前を設定する
doc.PrintSettings.PrintToFile("PrintToXps.xps")
'Execute printing
doc.Print()
End Sub
End Class
End Namespace
PDF をサイレントに印刷
以下は、Spire.PDF for .NET を使用して C# および VB.NET で PDF ドキュメントをサイレント印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PrintSettings.PrinterName プロパティを使用してプリンター名を指定します。
- PrintSettings.PrintController プロパティの値を StandardPrintController クラスのインスタンスに設定します。これにより、印刷プロセスが表示されなくなります。
- PdfDocument.Print()メソッドを使用して印刷を実行します。
- C#
- VB.NET
using Spire.Pdf;
using System.Drawing.Printing;
namespace PrintPdfSilently
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルをロードする
doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pdf");
//プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル";
//サイレント印刷する
doc.PrintSettings.PrintController = new StandardPrintController();
//ドキュメントを印刷する
doc.Print();
}
}
}
Imports Spire.Pdf
Imports System.Drawing.Printing
Namespace PrintPdfSilently
Class Program
Shared Sub Main(ByVal args() As String)
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFファイルをロードする
doc.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")
'プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル"
'サイレント印刷する
doc.PrintSettings.PrintController = New StandardPrintController()
'ドキュメントを印刷する
doc.Print()
End Sub
End Class
End Namespace
両面印刷モードで PDF を印刷
以下は、Spire.PDF for .NET を使用して C# および VB.NET で両面印刷モードで PDF ドキュメントを印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PrintSettings.PrinterName プロパティを使用してプリンター名を指定します。
- PrintSettings.CanDuplex プロパティを使用して、プリンタが両面印刷をサポートしているかどうかを確認します。はいの場合、PrintSettings.Duplex プロパティを Duplex.Defatult に設定します。
- PdfDocument.Print() メソッドを使用して印刷を実行します。
- C#
- VB.NET
using Spire.Pdf;
using System.Drawing.Printing;
namespace PrintInDuplexMode
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルをロードする
doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pdf");
//プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル";
//プリンタが両面印刷をサポートしているかどうかを確認する
if (doc.PrintSettings.CanDuplex)
{
//両面印刷モードに設定する
doc.PrintSettings.Duplex = Duplex.Default;
//ドキュメントを印刷する
doc.Print();
}
}
}
}
Imports Spire.Pdf
Imports System.Drawing.Printing
Namespace PrintInDuplexMode
Class Program
static void Main(string() args)
{
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFファイルをロードする
doc.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")
'プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル"
'プリンタが両面印刷をサポートしているかどうかを確認する
if (doc.PrintSettings.CanDuplex)
{
'両面印刷モードに設定する
doc.PrintSettings.Duplex = Duplex.Default
'ドキュメントを印刷する
doc.Print()
}
}
End Class
End Namespace
PDF をグレースケールで印刷
以下は、Spire.PDF for .NET を使用して C# および VB.NET でグレースケールで PDF ドキュメントを印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PrintSettings.PrinterName プロパティを使用してプリンター名を指定します。
- PrintSettings.Color プロパティを false に設定すると、カラー PDF が白黒で印刷されます。
- PdfDocument.Print() メソッドを使用して印刷を実行します。
- C#
- VB.NET
using Spire.Pdf;
namespace PrintInGrayscale
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルをロードする
doc.LoadFromFile(@"C: \Users\Administrator\Desktop\sample.pdf");
//プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル";
//白黒で印刷する
doc.PrintSettings.Color = false;
//ドキュメントを印刷する
doc.Print();
}
}
}
Imports Spire.Pdf
Namespace PrintInGrayscale
Class Program
Shared Sub Main(ByVal args() As String)
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFファイルをロードする
doc.LoadFromFile("C: \Users\Administrator\Desktop\sample.pdf")
'プリンター名を指定する
doc.PrintSettings.PrinterName = "サンプルタイトル"
'白黒で印刷する
doc.PrintSettings.Color = False
'ドキュメントを印刷する
doc.Print()
End Sub
End Class
End Namespace
さまざまなページ範囲をさまざまなトレイに印刷する
以下は、Spire.PDF for .NET を使用して、C# および VB.NET のさまざまなトレイにさまざまなページ範囲を印刷する手順です。
- PdfDocument オブジェクトを作成します。
- PdfDocument.LoadFromFile() メソッドを使用して PDF ファイルをロードします。
- PrintSettings.PaperSettings イベントを、用紙設定イベントのデータを提供するカスタムデリゲートに登録します。
- トレイ1とトレイ2の給紙元を設定します。
- PdfDocument.Print() メソッドを使用して印刷を実行します。
- C#
- VB.NET
using Spire.Pdf;
using Spire.Pdf.Print;
namespace PrintToDifferentTrays
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルをロードする
doc.LoadFromFile(@"C:\Users\Administrator\Desktop\sample.pdf");
//用紙設定イベントを処理するデリゲートにPaperSettingsイベントを登録する
doc.PrintSettings.PaperSettings += delegate (object sender, PdfPaperSettingsEventArgs e)
{
// トレイ1の給紙元を1〜10ページに設定する
if (1 <= e.CurrentPaper && e.CurrentPaper <= 10)
{
e.CurrentPaperSource = e.PaperSources[0];
}
//トレイ2の給紙元を残りのページに設定する
else
{
e.CurrentPaperSource = e.PaperSources[1];
}
};
//ドキュメントを印刷する
doc.Print();
}
}
}
Imports Spire.Pdf
Imports Spire.Pdf.Print
Namespace PrintToDifferentTrays
Class Program
Shared Sub Main(ByVal args() As String)
'PdfDocumentオブジェクトを作成する
Dim doc As PdfDocument = New PdfDocument()
'PDFファイルをロードする
doc.LoadFromFile("C:\Users\Administrator\Desktop\sample.pdf")
'用紙設定イベントを処理するデリゲートにPaperSettingsイベントを登録する
doc.PrintSettings.PaperSettings Function delegate(ByVal sender As Object, ByVal e As PdfPaperSettingsEventArgs) As +=
' トレイ1の給紙元を1〜10ページに設定する
If 1 <= e.CurrentPaper And e.CurrentPaper <= 10 Then
e.CurrentPaperSource = e.PaperSources(0)
End If
'トレイ2の給紙元を残りのページに設定する
else
{
e.CurrentPaperSource = e.PaperSources(1)
}
End Function
'ドキュメントを印刷する
doc.Print()
End Sub
End Class
End Namespace
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。