ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
ネットワークプリンターでのプログラム印刷は、様々なソフトウェアアプリケーションで共通のタスクである。 デスクトップ、モバイルアプリケーション、ウェブサービスのいずれを構築する場合でも、ドキュメントをネットワークプリンターに直接送信する機能は、ソフトウェアの使いやすさと効率を大幅に向上させます。 この記事では、C#(シーシャープ)を使ってネットワークプリンターで印刷する方法を探ります。 IronPrint から Iron Software.
を使用してドキュメントを印刷するための新規プロジェクトを作成します。 IronPrint.
インストール IronPrint を新しいプロジェクトに加える。
ドキュメントの印刷に使用できるネットワークプリンターのリスト。
を使用してPDF文書を印刷します。 IronPrint.
を使用してPDF文書を印刷します。 IronPrint ダイアログ付き。
コーディングに入る前に、環境が正しくセットアップされていることを確認しよう。 C#(シーシャープ)でネットワークプリンターに印刷するには、以下のものが必要です:
C#(シーシャープ)アプリケーションを実行するマシンからネットワークプリンターにアクセスできることを確認してください。
プリンターのネットワークアドレス (IPアドレスまたはネットワークプリンタ名).
必要なプリンタドライバがインストールされていること。
実装の詳細に飛び込む前に、IronPrint の始め方を知っておこう:
インストール:IronPrintはNuGetパッケージマネージャで簡単にインストールできます。 をご覧ください。 NuGetページ をクリックし、インストール手順に従ってください。
ドキュメント:ドキュメント**:以下を参照のこと。 公式ドキュメント をご覧ください。
互換性とサポート:IronPrintは、様々な環境とプロジェクトタイプに幅広い互換性とサポートを提供します:
それでは、IronPrint を使って印刷する方法を次の例で見てみましょう。
using IronPrint;
// Configure printer setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 220;
printSettings.NumberOfCopies = 10;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings);
using IronPrint;
// Configure printer setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 220;
printSettings.NumberOfCopies = 10;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings);
Imports IronPrint
' Configure printer setting
Private printSettings As New PrintSettings()
printSettings.Dpi = 220
printSettings.NumberOfCopies = 10
printSettings.PaperOrientation = PaperOrientation.Portrait
' Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings)
C#(シーシャープ)のSystem.Printing
名前空間には、開発者がプリンター、印刷キュー、印刷サーバー、印刷ジョブをプログラムで操作できるようにするクラスとインターフェースが含まれています。 この名前空間内の主要なクラスとインターフェイスには、以下のものがある:
PrintQueue`:システムに接続されたプリンタまたは印刷デバイスを表す。
PrintServer`:ネットワーク上のプリントサーバを表す。
PrintSystemJobInfo`:印刷ジョブのステータスやプロパティなどの情報を提供する。
PrintTicket`:用紙サイズ、向き、印刷品質などの印刷ジョブの設定を表す。
System.Printingを始めよう:コードに入る前に、
System.Printing` を使って印刷がどのように機能するかについて基本的な理解をしておこう:
PrintQueue
の選択:印刷に使用したいプリンタを表す PrintQueue
オブジェクトを特定する必要があります。
PrintTicket
設定:オプションとして、PrintTicket
オブジェクトを構成して、用紙サイズ、向き、部数などの印刷設定を指定することができます。
**ドキュメントの印刷最後に、印刷する文書を選択した PrintQueue
に送ります。
System.Printingによる文書印刷の実装では、
System.Printing` を使って文書を印刷する手順を、以下の例で説明しよう:
ソースコードはこちら:
using System;
using System.IO;
using System.Printing;
class Program
{
static void Main(string[] args)
{
// Specify the path to the document to be printed on the local printer
string documentPath = "path/to/your/document.pdf";
// Instantiate a Printer Server object representing the local print server
using (PrintServer printServer = new PrintServer())
{
// Get the default PrintQueue from the PrintServer default
PrintQueue defaultPrintQueue = printServer.DefaultPrintQueue;
// Create a PrintTicket object to specify print settings (optional)
PrintTicket printTicket = new PrintTicket();
// Configure print settings, e.g., number of copies, paper size, orientation
printTicket.CopyCount = 1;
// Print the document to the default PrintQueue with the specified PrintTicket
defaultPrintQueue.AddJob("MyPrintJob", documentPath, false, printTicket);
}
Console.WriteLine("Document sent to print queue.");
}
}
using System;
using System.IO;
using System.Printing;
class Program
{
static void Main(string[] args)
{
// Specify the path to the document to be printed on the local printer
string documentPath = "path/to/your/document.pdf";
// Instantiate a Printer Server object representing the local print server
using (PrintServer printServer = new PrintServer())
{
// Get the default PrintQueue from the PrintServer default
PrintQueue defaultPrintQueue = printServer.DefaultPrintQueue;
// Create a PrintTicket object to specify print settings (optional)
PrintTicket printTicket = new PrintTicket();
// Configure print settings, e.g., number of copies, paper size, orientation
printTicket.CopyCount = 1;
// Print the document to the default PrintQueue with the specified PrintTicket
defaultPrintQueue.AddJob("MyPrintJob", documentPath, false, printTicket);
}
Console.WriteLine("Document sent to print queue.");
}
}
Imports System
Imports System.IO
Imports System.Printing
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Specify the path to the document to be printed on the local printer
Dim documentPath As String = "path/to/your/document.pdf"
' Instantiate a Printer Server object representing the local print server
Using printServer As New PrintServer()
' Get the default PrintQueue from the PrintServer default
Dim defaultPrintQueue As PrintQueue = printServer.DefaultPrintQueue
' Create a PrintTicket object to specify print settings (optional)
Dim printTicket As New PrintTicket()
' Configure print settings, e.g., number of copies, paper size, orientation
printTicket.CopyCount = 1
' Print the document to the default PrintQueue with the specified PrintTicket
defaultPrintQueue.AddJob("MyPrintJob", documentPath, False, printTicket)
End Using
Console.WriteLine("Document sent to print queue.")
End Sub
End Class
System.Printing
の比較この表はIronPrintとSystem.Printing
の機能と特徴を簡単に説明したもので、開発者が特定の要件とプラットフォームターゲットに基づいて十分な情報を得た上で意思決定するのに役立つ。
以下のようにVisual Studioでコンソール・アプリケーションを作成する。
プロジェクト名と場所を指定してください。
.NETバージョンを選択してください。
これでプロジェクトは作成され、さらなるコーディングの準備が整った。
以下のようにVisual StudioパッケージマネージャからIronPrintをインストールしてください。
IronPrintは以下のコマンドでもインストールできます:
Install-Package IronPrint
IronPrintを使用してプリンタ名をリストアップするには、以下のコードを使用してください:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Get printer names using printer drivers
List<string> printersName = Printer.GetPrinterNames();
foreach (var printer in printersName)
{
Console.WriteLine(printer);
}
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Get printer names using printer drivers
List<string> printersName = Printer.GetPrinterNames();
foreach (var printer in printersName)
{
Console.WriteLine(printer);
}
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Get printer names using printer drivers
Dim printersName As List(Of String) = Printer.GetPrinterNames()
For Each printer In printersName
Console.WriteLine(printer)
Next printer
End Sub
End Class
End Namespace
利用可能なプリンタドライバをすべて取得するには、Printer.GetPrinterNames
を使用します。
以下のコードを使用すると、ドキュメントを無音で印刷できます:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print the document silently
Printer.Print("sample.pdf");
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print the document silently
Printer.Print("sample.pdf");
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Print the document silently
Printer.Print("sample.pdf")
End Sub
End Class
End Namespace
実行後、出力に示すように、ドキュメントが印刷キューに追加される。
以下のコードを使って、ダイアログのあるドキュメントを印刷してください:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print with Dialog
Printer.ShowPrintDialog("sample.pdf");
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Print with Dialog
Printer.ShowPrintDialog("sample.pdf");
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Print with Dialog
Printer.ShowPrintDialog("sample.pdf")
End Sub
End Class
End Namespace
IronPrintの ShowPrintDialog
を使って、ダイアログを使って印刷することができます。
IronPrintでは、高度な設定で文書を印刷することができます。 以下のプロパティをサポートしている:
PaperSize
:プリンターが使用する用紙の寸法を指定します。
PaperOrientation
:Automatic、Portrait、Landscapeなどの用紙の向きを定義します。
DPI`:印刷解像度を1インチあたりのドット数で設定します。 デフォルト値は300で、商業印刷でよく使われる。 実際のDPIはプリンターの能力によって制限される場合があります。
NumberOfCopies
:ドキュメントに対して印刷する同一コピーの数を示します。
PrinterName
:印刷タスク用に指定されたプリンタの名前を指定します。
PaperMargins
:印刷時の余白をミリメートル単位で決定します。
Grayscale
:グレースケールで印刷するかどうかを決定するブール値。 デフォルトはfalseです。
では、コード例を見てみよう:
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Configure custom print setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the required document
Printer.Print("sample.pdf", printSettings);
}
}
using IronPrint;
namespace IronPrintDemo;
public class Program
{
public static void Main()
{
// Configure custom print setting
PrintSettings printSettings = new PrintSettings();
printSettings.Dpi = 150;
printSettings.NumberOfCopies = 2;
printSettings.PaperOrientation = PaperOrientation.Portrait;
// Print the required document
Printer.Print("sample.pdf", printSettings);
}
}
Imports IronPrint
Namespace IronPrintDemo
Public Class Program
Public Shared Sub Main()
' Configure custom print setting
Dim printSettings As New PrintSettings()
printSettings.Dpi = 150
printSettings.NumberOfCopies = 2
printSettings.PaperOrientation = PaperOrientation.Portrait
' Print the required document
Printer.Print("sample.pdf", printSettings)
End Sub
End Class
End Namespace
必要な名前空間IronPrint をインポートすることからコードは始まります。
IronPrintDemo`名前空間の中に、Programというクラスがpublicとして宣言されている。
Mainメソッドはプログラムのエントリー・ポイントとなる。
Mainメソッド内:
printSettingsという名前の
PrintSettings` オブジェクトは、カスタム印刷設定を構成するためにインスタンス化されます。
printSettings`のDpiプロパティは150に設定されており、1インチあたり150ドットの印刷解像度を示している。
printSettingsの
NumberOfCopies`プロパティは2に設定され、同じドキュメントが2部印刷されることを指定します。
の
PaperOrientationプロパティは
PaperOrientation.Portrait`に設定され、ドキュメントが縦向きに印刷されることを示します。printSettings
がある。 (カスタム印刷設定). このメソッドは、おそらく指定された設定を使用して印刷プロセスを処理する。IronPrint から Iron Software はエンタープライズ・ライブラリであり、実行にはライセンスが必要です。 IronPrintのライセンスキーを追加することで、プロジェクトは制限や透かしなしで実行できるようになります。 ライセンス購入はこちら または、30日間の無料トライアル・キーにサインアップしてください。 これ.
ライセンスキーを取得したら、そのキーをアプリケーションのappSettings.jsonファイルに配置する必要があります。
{
"IronPrint.License.LicenseKey": "IRONPRINT.KEY"
}
これは、制限や透かしなしで文書を印刷します。
まとめると、IronPrintとSystem.Printing
にはそれぞれ長所があり、異なるシナリオに適している。 IronPrint(IronPrint)は、シンプルさと多用途性に重点を置いた合理化されたクロスプラットフォーム・ソリューションを提供し、システム・プリンティング(System.Printing)は、特にWindowsベースのアプリケーションに対して、ネイティブな統合ときめ細かなコントロールを提供する。 開発者は、C#(シーシャープ)プロジェクトでこれらの印刷ライブラリのいずれかを選択する際に、特定の要件とプラットフォームターゲットを考慮する必要があります。
IronPrintは、ユーザーフレンドリーなAPIを提供し、様々なプラットフォームやプロジェクトタイプに幅広い互換性を持たせることで、.NETアプリケーション内のドキュメント印刷を簡素化します。この記事で説明するステップに従うことで、.NETプロジェクトに印刷機能をシームレスに統合し、使いやすさと生産性を向上させることができます。 IronPrintの可能性を追求し、アプリケーション内で効率的なドキュメント印刷の世界を解き放ちましょう。
9つの .NET API製品 オフィス文書用