C# ile Ağ Yazıcısında Nasıl Yazdırılır
Ağ yazıcılarında programlı baskı alma, çeşitli yazılım uygulamaları arasında yaygın bir görevdir. Masanustu, mobil uygulama ya da web hizmeti geliştiriyor olun, belgeleri dogrudan bir ag yazicisine gonderme yetenegi yaziliminizin kullanilabilirligini ve verimliligini buyuk olcude artirabilir. Bu makalede, C# ve IronPrint kullanarak bir ağ yazıcısına nasıl baskı yapacağımızı inceleyeceğiz. Bu, Iron Software tarafından sağlanmaktadır.
How to Print with Network Printer in C
- Belgeleri Yazdırmak için IronPrint kullanarak Yeni bir proje oluşturun.
- Yeni bir projeye IronPrint kurun.
- Belgeleri yazdirma icin uygun olan ag yazicilarini listeleyin.
- IronPrint kullanarak PDF belgeleri yazdirin.
- PDF belgelerini IronPrint ile Diyalog kullanarak yazdirin.
- Print ayarları ile İleri Düzey Baskı.
Ortamın Kurulması
Kodlama kısmına geçmeden önce, ortamımızın doğru bir şekilde ayarlandığından emin olalım. C#'ta bir ağ yazıcısına yazdırmak için aşağıdakilere ihtiyaçınız var:
- C# uygulamanızın çalışacağı makineden bir ağ yazıcısının erişilebilir olduğundan emin olun.
- Yazicinin ag adresi (IP adresi veya ag yazicisi adi).
- Makineye gerekli yazıcı sürücüsü/sürücüleri yüklendi. Eğer gerekliyse yazıcılar veya sürücüleri yüklemek için yönetici ayrıcalıkları.
IronPrint
Uygulama detaylarına girmeden önce, IronPrint ile nasıl başlayacağımızı öğrenelim:
- Kurulum: IronPrint, NuGet Paket Yöneticisi aracılığıyla kolayca kurulabilir. Basitçe NuGet sayfasını ziyaret edin ve kurulum talimatlarını izleyin.
- Dokümantasyon: Hızlı başlangıç rehberi ve kapsamlı API referansı için resmi dokümanlara başvurun.
Uyumluluk ve Destek: IronPrint, çeşitli ortamlar ve proje türleri arasında geniş uyumluluk ve destek sunar:
.NET Sürüm Desteği: IronPrint, C#, VB.NET ve F#'ı destekler, .NET 8, 7, 6, 5 ve Core 3.1+ dahil. Isletim Sistemleri ve Ortamlar: IronPrint, Windows (7+), macOS (10+), iOS (11+) ve Android API 21+ (v5 "Lollipop") ile uyumludur. Proje Türleri: Mobil (Xamarin, MAUI, Avalonia), masaüstü (WPF, MAUI, Windows Avalonia) veya konsol uygulamaları geliştiriyor olsanız da, IronPrint ile ihtiyaçınız olan her şeye sahipsiniz.
Şimdi aşağıdaki örnekle IronPrint ile nasıl yazdırılacağını görelim.
using IronPrint;
namespace IronPrintDemo
{
class Program
{
static void Main(string[] args)
{
// 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;
namespace IronPrintDemo
{
class Program
{
static void Main(string[] args)
{
// 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
Namespace IronPrintDemo
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Configure printer setting
Dim printSettings As New PrintSettings()
printSettings.Dpi = 220
printSettings.NumberOfCopies = 10
printSettings.PaperOrientation = PaperOrientation.Portrait
' Print the document
Printer.Print("awesomeIronPrint.pdf", printSettings)
End Sub
End Class
End Namespace
System.Printing
C# dilindeki System.Printing ad alani, geliştiricilerin yazicilar, yazici kulupleri, yazici sunuculari ve yazdirma isleriyle programli olarak etkilesim kurmasini saglayan siniflar ve arayuzler icerir. Bu ad alanındaki bazı anahtar sınıflar ve arabirimler şunlardır:
PrintQueue: Sisteme bagli bir yazici veya yazdirma cihazini temsil eder.PrintServer: Ag uzerindeki bir yazici sunucusunu temsil eder.PrintSystemJobInfo: Durumu ve özellikleri gibi bir yazdirma isi hakkinda bilgi saglar.PrintTicket: Kagit boyutu, yonlendirme ve baski kalitesi dahil olmak üzere bir yazdirma isi icin ayarlari temsil eder.
System.Printing ile Başlarken: Koda dalmadan once, System.Printing ile yazdirmanin nasıl calistigi hakkinda temel bir anlayisa sahip oldugumuzdan emin olalim:
PrintQueueSecimi: Yazdirma icin kullanmak istediginiz yaziciyi temsil edenPrintQueuenesnesini tanimlamaniz gerekir.PrintTicketYapılandırmasi: Istek uzerine, kagit boyutu, yonlendirme ve kopya sayisi gibi yazdirma ayarlarini belirtmek icinPrintTicketnesnesini yapılandırabilirsiniz.- Doküman Yazdirma: Son olarak, secili
PrintQueue'e yazdirmak icin dokümani gonderirsiniz.
Doküman Yazdirma Uygulama System.Printing: Simdi, System.Printing kullanarak bir dokümani yazdirma surecini asagida göstermis oldugumuz örnekle inceleyelim:
İşte kaynak kodu:
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
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
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
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
IronPrint Vs System.Printing

Bu tablo, IronPrint ve System.Printing'nin özelliklerini ve özelliklerini hizli bir genel bakis saglar, geliştiricilerin spesifik gereksinimlerine ve platform hedeflerine dayali olarak bilgili kararlar alabilmesini saglar.
Adım 1: IronPrint kullanarak Belgeleri Yazdırmak için Yeni Bir Proje Oluşturun
Visual Studio'da aşağıda gösterildiği gibi bir konsol uygulaması oluşturun.

Proje adı ve konumunu sağlayın.

.NET sürümünü seçin.

Simdi proje oluşturuldu ve daha fazla kodlama icin hazır.
Adım 2: Yeni bir projeye IronPrint yükleyin
IronPrint'i aşağıda gösterildiği gibi Visual Studio Paket Yöneticisi'nden yükleyin.

IronPrint, aşağıdaki komut kullanılarak da yüklenebilir:
Install-Package IronPrint
Adım 3: Belgeleri yazdırmak için kullanılabilir ağ yazıcılarını listeleyin
IronPrint kullanarak yazici isimlerini listelemek icin asagidaki kodu kullanin:
using System;
using System.Collections.Generic;
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 System;
using System.Collections.Generic;
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 System
Imports System.Collections.Generic
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
Kod Açıklaması
- Tüm mevcut yazıcı sürücülerini almak için
Printer.GetPrinterNameskullanın. Console.WriteLine'i kullanarak adları yazdırın.
Çıktı

Adım 4: IronPrint kullanarak PDF belgesini yazdırın
Belgeyi sessizce yazdırmak için aşağıdaki kodu kullanın:
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
Yürütme işleminden sonra, belge çıktı olarak gösterildiği gibi yazdırma kuyruğuna eklenir.
Çıktı

Adım 5: IronPrint ile Diyalog Kullanarak PDF Belgesini Yazdırma
Aşağıdaki kodu kullanarak belgeyi diyalogla yazdırın:
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
Kod Açıklaması
- IronPrint'den
ShowPrintDialog'i kullanarak Dialog ile yazdirabiliriz. - Diyalog açıldığında, belgeyi yazdırmak için gereken yazıcıyı seçin.
Çıktı

Adım 6: Yazdırma ayarları ile Gelişmiş Yazdırma
Gelişmiş ayarlarla belge yazdırma IronPrint içerisinde desteklenir. Su Özellikleri destekler:
PaperSize: Yazıcı tarafından kullanılan kağıt boyutlarını belirtir.PaperOrientation: Kağıdın yönünü tanımlar, örneğin Otomatik, Dikey veya Yatay.DPI: Inç başına düşen nokta cinsinden istenen baskı çözünürlüğünü ayarlar. Varsayılan değer 300'dür ve genellikle ticari baskıda kullanılır. Gerçek DPI, yazıcının yetenekleri tarafından sınırlandırılabilir.NumberOfCopies: Bir belge için yazdırılacak aynı kopya sayısını belirtir.PrinterName: Baskı işlemleri için atanan yazıcının adını belirtir.PaperMargins: Milimetre olarak ölçülen baskıdaki marjları belirler.Grayscale: Grinin tonlarında yazdırılıp yazdırılmayacağını belirten bir boolean değeri. Varsayılan değer yanlıştır.
Şimdi bir kod örneğine bakalım:
using IronPrint;
namespace IronPrintDemo
{
public class Program
{
public static void Main()
{
// Configure custom print settings
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 settings
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 settings
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
Kod Açıklaması
- Kod, yazdırma için gerekli sınıfları ve metodları içeren gerekli IronPrint isim alanını içe aktararak başlıyor.
IronPrintDemoad alani içinde, Program adında bir sınıf kamuya açık olarak ilan edilmiştir.- Main metodu, programın giriş noktası olarak hizmet eder.
- Main yöntemi içerisinde:
PrintSettingsadlı birprintSettingsnesnesi, özel yazdırma ayarlarını yapılandırmak için başlatılır.printSettings'unDpiözelliği 150'ye ayarlanır, bu da 150 nokta başına yazdırma çözünürlüğünü belirtir.printSettings'inNumberOfCopiesözelliği 2'ye ayarlanır, bu da belgenin iki aynı kopyasının yazdirilacagini belirtir.printSettings'inPaperOrientationözelliğiPaperOrientation.Portraitolarak ayarlanır, bu da belgenin dikey yönlendirmeyle yazdirilacagini belirtir.
- Son olarak,
Printer.Printmetodu, yazdirilacak belge adi (örneğin 'sample.pdf') veprintSettings(özel baskı ayarları) ile çağrilir. Bu metot, belirtilen ayarları kullanarak baskı işlemini gerçekleştirir.
Çıktı

Lisans
IronPrint, Iron Software tarafından üretilmiş bir enterprise kütüphanesi olup çalışması için lisans gerektirmektedir. IronPrint lisans anahtarını eklemek, projeyi kısıtlamalar veya filigranlar olmadan çalıştırır. Buradan lisans satın alın ya da ücretsiz 30 günlük deneme anahtarı için buraya kayıt olun.
Lisans anahtarı alındıktan sonra, uygulamanın appSettings.json dosyasına yerleştirilmelidir.
{
"IronPrint.License.LicenseKey": "IRONPRINT.KEY"
}
Bu, belgelerin kısıtlama ve filigran olmadan yazdırılmasını sağlar.
Sonuç
Özetle, IronPrint ve System.Printing her biri kendi güçlü yönlerine sahiptir ve farklı senaryolar için uygundur. IronPrint, basitlik ve çok yönlülük üzerine odaklanarak düzenli ve platformlar arası bir çözüm sunarken, System.Printing, özellikle Windows tabanlı uygulamalar için kontrol ve yerel entegrasyon teklif eder. Geliştiriciler, C# projeleri için bu yazdırma kütüphaneleri arasında seçim yaparken özel gereksinimlerini ve platform hedeflerini göz önünde bulundurmalıdır.
IronPrint, .NET uygulamaları içinde belge baskısını kullanıcı dostu API sağlayarak ve çeşitli platformlar ve proje türleri arasında kapsamlı uyumluluk sunarak basitleştirir. Bu makalede belirtilen adımları takip ederek, .NET projelerinize baskı işlevselliği sorunsuz bir şekilde entegre edebilir, kullanılabilirliğini ve verimliliğini artırabilirsiniz. IronPrint ile olasılıkları keşfedin ve uygulamalarınız içinde etkin belge baskısını mümkün kılın.
Sıkça Sorulan Sorular
C# kullanarak ağ yazıcısına nasıl yazdırabilirim?
IronPrint'i kullanarak C# içinde ağ yazıcısına belgeler yazdırabilirsiniz. Belgeyi doğrudan bir ağ yazıcısına göndermek için belgeleri programlı bir şekilde işleyen yöntemler sunar.
C# içinde ağ yazıcısına yazdırmayı ayarlamak için adımlar nelerdir?
Önce bir ağ yazıcısına ve adresine erişiminizin olduğundan emin olun. Gerekli sürücüleri ve IronPrint’i NuGet Paket Yöneticisi üzerinden yükleyin. Daha sonra yazdırma işlerini yönetmek ve göndermek için IronPrint yöntemlerini kullanın.
C# projemde IronPrint'i nasıl yüklerim?
IronPrint’i Visual Studio’da NuGet Paket Yöneticisi’ni kullanarak veya Paket Yöneticisi Konsolunda Install-Package IronPrint komutunu çalıştırarak yükleyebilirsiniz.
IronPrint ile uyumlu .NET sürümleri nelerdir?
IronPrint, C#, VB.NET ve F#'i destekler ve .NET 8, 7, 6, 5 ve Core 3.1+ ile uyumludur.
IronPrint farklı işletim sistemlerinde kullanılabilir mi?
Evet, IronPrint Windows (7+), macOS (10+), iOS (11+) ve Android API 21+ (v5 'Lollipop') ile uyumludur.
IronPrint, C#'taki System.Printing ile nasıl karşılaştırılır?
IronPrint, basitliğe odaklanan çapraz platform bir çözüm sunarken, System.Printing Windows tabanlı uygulamalar için yerel entegrasyon ve kontrol sağlar.
IronPrint kullanarak ağ yazıcılarının listesini nasıl alabilirim?
IronPrint içinde, mevcut yazıcı sürücülerinin listesini döndüren Printer.GetPrinterNames() metodunu kullanabilirsiniz.
IronPrint ile hangi ileri düzey yazdırma seçenekleri mevcuttur?
IronPrint, Kağıt Boyutu, Kağıt Yönlendirme, DPI, Kopya Sayısı, Yazıcı Adı, Kağıt Kenar Boşlukları ve Gri Tonlama dahil olmak üzere gelişmiş ayarları destekler.
IronPrint için hangi lisans seçenekleri mevcuttur?
IronPrint lisansları satın alınabilir veya Iron Software web sitesinden ücretsiz 30 günlük deneme için kayıt olabilirsiniz. Lisans anahtarı, uygulamanızın appSettings.json dosyasına yerleştirilir.
IronPrint'i komut satırı üzerinden kurmak için hangi komut kullanılır?
IronPrint'i komut satırı üzerinden kurmak için Install-Package IronPrint komutunu kullanın.



