IRONSOFTWAREHOME
VIDEOLAR

Barcoder'dan IronBarcode'a Geçiş

Curtis Chau
Curtis Chau
Updated: 8 Haziran 2026

Bu kılavuz, .NET geliştiricileri için Barcoder'dan IronBarcode'a tam göç yolunu kapsar. Göç, iki paketi birleştirir, kodlayıcı-işleyici hattını tek bir yöntem çağrısıyla değiştirir ve tüm format-spesifik ad alanı ithalatlarını — using Barcoder.Code128, using Barcoder.Qr, using Barcoder.DataMatrix — tek bir using IronBarCode; içinde toplar. IBarcode türü ve ImageRenderer / ImageRendererOptions türleri tamamen kaldırılmıştır. Okuma, yanına ikinci bir kütüphane eklemenize neden olan eksik bir yetenekse, BarcodeReader.Read() ile IronBarcode doğal olarak okuma yapar.

Barcoder'dan Neden Geçiş Yapılmalı

Barcoder'dan IronBarcode'a geçen ekipler bu tetikleyicileri rapor eder:

Okuma Gereksinimi Eklendi: Barcoder, sadece üretim yapabilen bir kütüphane olup herhangi bir kod çözme yeteneğine sahip değildir. Bir uygulamanın gelen barkodları doğrulaması, taranmış belgeleri işlemesi veya yüklenen PDF'lerden barkodları okuması gerektiğinde,Barcoderbir yol sunmaz. Okuma için ikinci bir kütüphane eklemek, kod tabanını ikiye böler; iki NuGet bağımlılığı, bakımını yapmak için iki API ve izlemek için iki sürüm geçmişi oluşturur. IronBarcode, hem üretimi hem de okuma işlemlerini aynı paketle yönetir.

.NET Framework Uyumluluğu Kırıldı: Barcoder.Renderer.Image .NET Framework desteğini kaldırdı. .NET Framework 4.x üzerinde hizmet veya masaüstü uygulamaları çalıştıran ekipler, rutin bağımlılık bakımı sırasında görüntüleyici paketlerini güncellediklerinde bir yapı hatası ile karşılaşır. IronBarcode, farklı hedefler için koşullu paketleme olmadan .NET Framework 4.6.2'den .NET 9'a kadar destekler.

Paket Sürüm Sapması: Barcoder ve Barcoder.Renderer.Image bağımsız olarak sürümlenen NuGet paketleridir. Bağımlılık yeniden yüklemesi sırasında birini diğerini güncellemek, uyumsuzluklar tanıtabilir. Birden çok projeye sahip depolarda, her projenin her resimleyicisinin tutarlı sürümlerinin sağlanması, ekip büyüklüğü ile artan bir koordinasyon yüküdür.

Birden Fazla Format Ekleniyor: Code128 ile başlayan ve sonra QR, ardından DataMatrix ekleyen bir proje, her format için yeni bir isim alanı ithalatı ekleyip, farklı yöntem parametrelerine sahip bir kodlayıcı sınıfını öğrenmelidir. IronBarcode, BarcodeEncoding enum'u kullanır — bir format eklemek, mevcut bir çağrıya tek kelimelik bir değişikliktir. Yeni bir isim alanı yok, yeni sınıf yok, farklı yöntem imzası yok.

MAUI ve Bulut Dağıtım Gereksinimleri: Barcoder, MAUI, Docker, AWS Lambda veya Azure dağıtımları için destek dokümantasyonu sağlamaz. Çapraz platform mobil uygulamaları veya sunucusuz barkod işleme boru hatları oluşturan ekipler, Barcoder'ın belgelediği hedeflerin bu senaryoları kapsamadığını bulur.

Temel Sorun

Barcoder, format seçimini isim alanı ithalatlarına bağlar ve her çıkış işlemi için bir görüntüleyici boru hattını zorunlu kılar. Formatları veya çıkış türlerini değiştirmek, kodun yapısal değişikliklerini gerektirir:

// Barcoder: 3 namespaces, encoder-specific class, renderer pipeline, stream management
using Barcoder;
using Barcoder.Code128;
using Barcoder.Renderers;

IBarcode barcode = Code128Encoder.Encode("PRODUCT-12345", false);

var renderer = new ImageRenderer(new ImageRendererOptions
{
    ImageFormat = ImageFormat.Png,
    PixelSize = 2,
    BarHeightFor1DBarcode = 50
});

using var stream = File.OpenWrite("barcode.png");
renderer.Render(barcode, stream);

IronBarcode aynı işlemi tek zincirli bir çağrı olarak ifade eder:

// IronBarcode: 1 namespace, 1 method, 1 output call
using IronBarCode;

BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128)
    .SaveAsPng("barcode.png");

IronBarcode vs Barcoder: Özellik Karşılaştırması

ÖzellikBarcoderIronBarcode
Gerekli NuGet paketleri2 minimum (Barcoder + Barcoder.Renderer.Image)1 (IronBarcode)
Barkod oluşturmaEvetEvet
Barkod okuma / kod çözmeHayırEvet
Format başına kodlayıcı sınıflarEvet — Code128Encoder, QrEncoder, DataMatrixEncoder, vb.Hayır — BarcodeEncoding enum
Format başına isim alanı ithalatlarıEvet — Barcoder.Code128, Barcoder.Qr, Barcoder.DataMatrixHayır — sadece using IronBarCode
Sonuç nesnesindeki çıkış yöntemleriHayır — IBarcode kaydetme yöntemlerine sahip değilEvet — GeneratedBarcode ile SaveAsPng, ToPngBinaryData, ToStream vardır
PDF okumaHayırEvet — BarcodeReader.Read(path)
Logolu QRHayırEvet — .AddBrandLogo(path)
.NET Framework desteğiGörüntü işleme paketinde bırakıldı.NET Framework 4.6.2+
.NET 9 desteğiBelirsiz / sınırlı etkinlikEvet
MAUI desteğiHayırEvet — iOS, Android, Windows, macOS
Docker / Azure / AWS LambdaBelgelenmemişEvet
LisansMIT (açık kaynak)Commercial — Lite $999, Plus $1,499, Professional $2,399, Unlimited $4,799
ReadingSpeed kontrolüHayırEvet — ReadingSpeed enum
Çoklu barkod algılamaHayırEvet — ExpectMultipleBarcodes seçeneği

Hızlı Başlangıç: Barcoder'dan IronBarcode'a Geçiş

Adım 1: NuGet Paketini Değiştirin

Projeden tümBarcoderpaketlerini kaldırın:

dotnet remove package Barcoder
dotnet remove package Barcoder.Renderer.Image
SHELL

SVG renderer da eklediyseniz:

dotnet remove package Barcoder.Renderer.Svg
SHELL

IronBarcode'u kurun:

dotnet add package IronBarcode
SHELL

Adım 2: Ad Alanlarını Güncelleyin

Projede bulunan her dosyadan tüm using Barcoder.* ifadelerini kaldırın:

// Remove all of these
using Barcoder;
using Barcoder.Code128;
using Barcoder.Qr;
using Barcoder.DataMatrix;
using Barcoder.Renderers;
using Barcoder.Ean;
using Barcoder.Pdf417;
// ... and any other Barcoder.* namespaces in your project

Tümünü tek bir using direktifiyle değiştirin:

using IronBarCode;

Adım 3: Lisansa İzin Verin

Lisans başlatma kodunu uygulama başlangıcına ekleyin — Program.cs, Startup.cs veya MauiProgram.cs:

IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

Ücretsiz bir deneme anahtarı ironsoftware.com adresinde mevcuttur.

Kod Göç Örnekleri

Code128 Oluşturma

Barcoder Yaklaşımı:

using Barcoder;
using Barcoder.Code128;
using Barcoder.Renderers;

IBarcode barcode = Code128Encoder.Encode("PRODUCT-12345", false);

var renderer = new ImageRenderer(new ImageRendererOptions
{
    ImageFormat = ImageFormat.Png,
    PixelSize = 2,
    BarHeightFor1DBarcode = 50
});

using var stream = File.OpenWrite("barcode.png");
renderer.Render(barcode, stream);

IronBarcode Yaklaşımı:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128)
    .SaveAsPng("barcode.png");

Code128Encoder, ImageRenderer, ImageRendererOptions ve akış yönetimi tamamen kaldırılmıştır. Format, birleşik BarcodeWriter sınıfında BarcodeEncoding.Code128 olarak belirtilmiştir. Çıkış yöntemleri doğrudan döndürülen GeneratedBarcode nesnesi üzerinde bulunur. IronBarcode barkod oluşturma belgesi stil, kenar boşluğu ve renk özelleştirmelerini kapsar.

QR Kod Oluşturma

Barcoder Yaklaşımı:

using Barcoder;
using Barcoder.Qr;
using Barcoder.Renderers;

IBarcode barcode = QrEncoder.Encode("https://example.com", ErrorCorrectionLevel.M);

var renderer = new ImageRenderer(new ImageRendererOptions
{
    ImageFormat = ImageFormat.Png,
    PixelSize = 4
});

using var stream = File.OpenWrite("qr.png");
renderer.Render(barcode, stream);

IronBarcode Yaklaşımı:

using IronBarCode;

QRCodeWriter.CreateQrCode("https://example.com", 500)
    .SaveAsPng("qr.png");

CreateQrCode için ikinci parametre, piksel cinsinden çıktı boyutudur. Hata düzeltme seviyesi, ihtiyaca göre yapılandırılabilen mantıklı bir varsayılan değerdir. IronBarcode, Barcoder'da mümkün olmayan bir işlemi de destekler — QR kod merkezinde bir marka logosu ekleme:

using IronBarCode;

QRCodeWriter.CreateQrCode("https://example.com", 500)
    .AddBrandLogo("logo.png")
    .SaveAsPng("qr-branded.png");

DataMatrix Oluşturma

Barcoder Yaklaşımı:

using Barcoder;
using Barcoder.DataMatrix;
using Barcoder.Renderers;

IBarcode barcode = DataMatrixEncoder.Encode("ITEM-XYZ-001");

var renderer = new ImageRenderer(new ImageRendererOptions
{
    ImageFormat = ImageFormat.Png,
    PixelSize = 5
});

using var stream = File.OpenWrite("datamatrix.png");
renderer.Render(barcode, stream);

IronBarcode Yaklaşımı:

using IronBarCode;

BarcodeWriter.CreateBarcode("ITEM-XYZ-001", BarcodeEncoding.DataMatrix)
    .SaveAsPng("datamatrix.png");

Desen Code128 ile aynıdır — sadece BarcodeEncoding değeri değişir. Yeni bir ad alanı ekleme yoktur, farklı bir sınıf yoktur, farklı bir yöntem imzası yoktur.

Çıkış Boyutunu Kontrol Etme

Barcoder, barkod modül boyutunda bir ölçek çarpanı olarak PixelSize kullanır ve 1D yükseklik için BarHeightFor1DBarcode kullanılır — doğrudan genişlik/yükseklik API'si yoktur.

Barcoder Yaklaşımı:

var renderer = new ImageRenderer(new ImageRendererOptions
{
    ImageFormat = ImageFormat.Png,
    PixelSize = 3,
    BarHeightFor1DBarcode = 80
});
using var stream = File.OpenWrite("barcode.png");
renderer.Render(barcode, stream);

IronBarcode Yaklaşımı:

using IronBarCode;

BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128)
    .ResizeTo(400, 100)
    .SaveAsPng("barcode.png");

.ResizeTo(width, height) açık piksel boyutlarını alır. Aynı GeneratedBarcode nesnesindeki diğer çıkış yöntemleri ile zincir oluşturur.

Bir Dosya Yerine İkili Veri Alma

Barcoder Yaklaşımı:

using Barcoder;
using Barcoder.Code128;
using Barcoder.Renderers;

IBarcode barcode = Code128Encoder.Encode("PRODUCT-12345", false);

var renderer = new ImageRenderer(new ImageRendererOptions
{
    ImageFormat = ImageFormat.Png,
    PixelSize = 2
});

using var ms = new MemoryStream();
renderer.Render(barcode, ms);
byte[] pngBytes = ms.ToArray();

IronBarcode Yaklaşımı:

using IronBarCode;

byte[] pngBytes = BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128)
    .ToPngBinaryData();

MemoryStream ve ToArray() deseni, GeneratedBarcode üzerinde tek bir zincirleme yöntem çağrısıyla değiştirilmiştir.

Barkodları Okuma (Net-Yeni Özellik)

Barcoder'ın bir okuma API'si yoktur. Daha önce okumak için ikinci bir kütüphane eklediyseniz, kaldırabilirsiniz. IronBarcode, dosyalar, bayt dizileri, akışlar ve PDF'lerden okuma yapar ve bu işlem için kullanılan paketle aynıdır.

IronBarcode Yaklaşımı:

using IronBarCode;

// Read from image file
var results = BarcodeReader.Read("barcode.png");
foreach (var result in results)
{
    Console.WriteLine($"Value: {result.Value}");
    Console.WriteLine($"Format: {result.Format}");
}

// Read from PDF natively — no image extraction step, no extra dependency
var pdfResults = BarcodeReader.Read("invoice.pdf");

// Read multiple barcodes from one image
var options = new BarcodeReaderOptions
{
    Speed = ReadingSpeed.Balanced,
    ExpectMultipleBarcodes = true
};
var multiResults = BarcodeReader.Read("warehouse-sheet.png", options);
foreach (var result in multiResults)
    Console.WriteLine(result.Value);

// Read from a stream directly
using var fileStream = File.OpenRead("barcode.png");
var streamResults = BarcodeReader.Read(fileStream);

IronBarcode barkod okuma belgesi, çok sayfalı PDF'leri, ilgi alanı okumasını ve performans ayarlama seçeneklerini kapsar.

SVG Çıktısı

Barcoder Yaklaşımı:

using Barcoder.Renderers;
var svgRenderer = new SvgRenderer();
using var stream = File.OpenWrite("barcode.svg");
svgRenderer.Render(barcode, stream);

IronBarcode Yaklaşımı:

using IronBarCode;

BarcodeWriter.CreateBarcode("data", BarcodeEncoding.Code128)
    .SaveAsSvg("barcode.svg");

Barcoder.Renderer.Svg paketi, tüm SVG işleme yerleri göç ettirildiğinde kaldırılabilir.

Barcoder API'den IronBarcode Eşleme Referansı

BarcoderIronBarcode
Code128Encoder.Encode("data", false)BarcodeWriter.CreateBarcode("data", BarcodeEncoding.Code128)
QrEncoder.Encode("data", ErrorCorrectionLevel.M)QRCodeWriter.CreateQrCode("data", 500)
DataMatrixEncoder.Encode("data")BarcodeWriter.CreateBarcode("data", BarcodeEncoding.DataMatrix)
new ImageRenderer(new ImageRendererOptions { ... })Gerekli değil
renderer.Render(barcode, fileStream).SaveAsPng(path)
renderer.Render(barcode, memoryStream) + ms.ToArray().ToPngBinaryData()
IBarcodeGeneratedBarcode
PixelSize = 2, BarHeightFor1DBarcode = 50.ResizeTo(width, height)
SvgRenderer + renderer.Render(barcode, stream).SaveAsSvg(path)
Okuma API'si yokBarcodeReader.Read(path / stream / bytes / pdf)
2 paket — Barcoder + Barcoder.Renderer.Image1 paket — IronBarcode
Kodlayıcı başına format ad alanı (Barcoder.Code128, Barcoder.Qr, vb.)BarcodeEncoding enum, tek ad alanı

Yaygın Göç Sorunları ve Çözümleri

Sorun 1: IBarcode Kaydetme Yöntemlerine Sahip Değil

Barcoder: Bir IBarcode değişkenini saklayan ve onu daha sonra bir işleyiciye aktaran kod, geciktirilmiş bir işleme deseni izler. IBarcode kabul eden ve renderer.Render() çağrısı yapan herhangi bir yardımcı yöntem yeniden düzenlenmelidir.

Çözüm: IBarcode tür referanslarını GeneratedBarcode ile değiştirin. GeneratedBarcode nesnesi, çıkış yöntemleriyle birlikte taşır — sonucu kaydetmesi veya serileştirmesi gereken herhangi bir yönteme iletin:

//IronBarcode— GeneratedBarcode carries output methods
using IronBarCode;

var barcode = BarcodeWriter.CreateBarcode("data", BarcodeEncoding.Code128);
SaveBarcodeToFile(barcode, "output.png");

static void SaveBarcodeToFile(GeneratedBarcode barcode, string path)
{
    barcode.SaveAsPng(path);
}
C#

Öncelikli işleme yerlerini bulmak için çözüm genelinde renderer.Render( araması yapın.

Sorun 2: PixelSize için Doğrudan Eşdeğer Yok

Barcoder: PixelSize, barkodun doğal modül boyutunda bir ölçek çarpanıdır. Çıkış boyutları içerik uzunluğuna, formata ve çarpan kombinasyonuna bağlıdır. BarHeightFor1DBarcode, 1D yüksekliğini bağımsız olarak kontrol eder. Doğrudan genişlik/yükseklik belirtimi yoktur.

Çözüm: MevcutBarcoderkodunun ürettiği gerçek piksel çıktısını ölçün ve bu değerleri .ResizeTo(width, height)'ya iletin:

BarcodeWriter.CreateBarcode("data", BarcodeEncoding.Code128)
    .ResizeTo(300, 80)
    .SaveAsPng("barcode.png");

Sorun 3: Biçim Ad Alanı İthalatları Birikir

Barcoder: Bir projede kullanılan her barkod formatı, onu kullanan her dosyaya bir using Barcoder.[Format] direktifi ekler. Code128, QR ve DataMatrix kullanan bir proje, tipik olarak dosya başına üç format-spesifik ithalata artı using Barcoder ve using Barcoder.Renderers'ya sahip olur.

Çözüm: Tüm using Barcoder ifadeleri için bir arama yapın ve bunların tamamını using IronBarCode; ile değiştirin:

grep -rn "using Barcoder" --include="*.cs" .
SHELL

Her sonuç, kaldırılacak bir satırdır, her dosya başına bir kez tekli using IronBarCode; direktifiyle değiştirilir.

Sorun 4: Paket Sürüm Senkronizasyon Hataları

Barcoder: Sadece Barcoder veya Barcoder.Renderer.Image güncellenerek yapılan derlemelerde, iki paket farklı sürüm kombinasyonlarında uyumlu olmadığında tür çözümleme hataları oluşabilir.

Çözüm: Her ikiBarcoderpaketini kaldırdıktan sonra IronBarcode yükleyin; bir paket ve bir sürüm olur. Bu kategorideki paket kilit çatışmaları ortadan kaldırılır. Derlemeye başlamadan önce .csproj dosyasında sadece tekli IronBarcode referansı bulunduğundan ve kalan Barcoder.* referanslarının kalmadığından emin olun.

Barcoder Geçiş Kontrol Listesi

Geçiş Öncesi Görevler

Kod tabanınızı inceleyin ve değişiklik yapmadan önce tümBarcoderkullanımını belirleyin:

grep -rn "using Barcoder" --include="*.cs" .
grep -rn "Code128Encoder\.Encode" --include="*.cs" .
grep -rn "QrEncoder\.Encode" --include="*.cs" .
grep -rn "DataMatrixEncoder\.Encode" --include="*.cs" .
grep -rn "ImageRenderer\|ImageRendererOptions" --include="*.cs" .
grep -rn "SvgRenderer" --include="*.cs" .
grep -rn "renderer\.Render(" --include="*.cs" .
grep -rn "IBarcode" --include="*.cs" .
grep -rn "ErrorCorrectionLevel" --include="*.cs" .
SHELL

IBarcode'ın bir değişken türü olarak saklandığı veya bir yöntem parametresi olarak geçirildiği tüm yerleri belgeleyin — bunlar, en fazla dikkat gerektiren öncelikli işleme yerleridir. Tüm PixelSize ve BarHeightFor1DBarcode değerlerini not alın ve bunlara karşılık gelen çıkış boyutlarını ölçün.

Kod Güncelleme Görevleri

  1. Barcoder NuGet paketini tüm projelerden kaldırın
  2. Barcoder.Renderer.Image NuGet paketini tüm projelerden kaldırın
  3. Barcoder.Renderer.Svg NuGet paketi mevcutsa kaldırın
  4. IronBarcode NuGet paketini yükleyin
  5. Uygulama başlangıcında IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY"; ekleyin
  6. Tüm using Barcoder.* ifadelerini using IronBarCode; ile değiştirin
  7. Code128Encoder.Encode(...)'yı BarcodeWriter.CreateBarcode(..., BarcodeEncoding.Code128) ile değiştirin
  8. QrEncoder.Encode(...)'yı QRCodeWriter.CreateQrCode(..., size) ile değiştirin
  9. DataMatrixEncoder.Encode(...)'yı BarcodeWriter.CreateBarcode(..., BarcodeEncoding.DataMatrix) ile değiştirin
  10. Tüm new ImageRenderer(new ImageRendererOptions {...})yapıları kaldırın
  11. GeneratedBarcode üzerinde renderer.Render(barcode, fileStream)'yı .SaveAsPng(path) ile değiştirin
  12. renderer.Render(barcode, memoryStream) + ms.ToArray()'yı .ToPngBinaryData() ile değiştirin
  13. SvgRenderer kullanımını .SaveAsSvg(path) ile değiştirin
  14. IBarcode tür referanslarını GeneratedBarcode ile değiştirin
  15. PixelSize / BarHeightFor1DBarcode seçeneklerini .ResizeTo(width, height) ile değiştirin

Geçiş Sonrası Testler

  • Her oluşturulan barkod biçiminin standart bir tarayıcı veya IronBarcode'un kendi okuyucusu ile doğru şekilde tarandığını doğrulayın
  • Görsel çıktı boyutlarını göç öncesi çıktıyla karşılaştırın — .ResizeTo() değerlerinin eşdeğer boyutlar ürettiğinden emin olun
  • Telefonda tarama yaparak QR kodu çıktısını test edin, hata düzeltme seviyesinin yeterli olduğunu doğrulayın
  • Projeniz SVG kullanıyorsa, tarayıcıda ve yazdırma bağlamlarında SVG çıktısının doğru şekilde görüntülendiğini doğrulayın
  • İkinci okuma kütüphanesini kaldırdıysanız, BarcodeReader.Read()'nin aynı girdiler için eşdeğer kodlanmış değerler ürettiğini doğrulayın
  • Projeniz PDF belgelerini işliyorsa PDF okuma test edin — çok sayfalı PDF'lerin tüm sayfalarını doğru şekilde okuduğunu doğrulayın
  • Sıfır Barcoder.* referansı kalan bir derleme çalıştırın — derleyici hataları, kaçırılan göç noktalarını belirtir

IronBarcode'a Geçmenin Temel Faydaları

Birleştirilmiş Paket Bağımlılığı: Tek bir NuGet paketi iki paketi (veya SVG renderer de kullanılmışsa üç paketi) değiştirir. Takip edilecek bir sürüm, izlenecek bir değişiklik günlüğü ve bağımlılık güncellemeleri sırasında çapraz paket uyumluluk sorunları yoktur. .csproj ve packages.lock.json karmaşıklığı hemen azalır.

Yerel Okuma Yeteneği: Daha önce barkod okuma için ikinci bir kütüphane gerektiren uygulamalar, IronBarcode'a konsolide edilebilir. BarcodeReader.Read() aynı API üzerinden resim dosyalarını, byte dizilerini, akışları ve PDF'leri kabul eder, çoklu barkod algılama ve okuma hız ayarı yerleşiktir.

Format Seçimi Olarak Yapılandırma: Mevcut bir projeye yeni bir barkod formatı eklemek, mevcut bir CreateBarcode çağrısındaki BarcodeEncoding enum değerine tek kelimelik bir değişikliktir. Yeni bir ad alanı ithalatı, yeni bir kodlayıcı sınıfı ve yeni bir paket yoktur. Bu, ürün gereksinimleri geliştikçe biçim genişlemesini düşük sürtünmeli hale getirir.

Açık Çıkış Boyutları: .ResizeTo(width, height), dolaylı PixelSize çarpan sistemini açık pikselleyici bir spesifikasyonla değiştirir. Kod ve çıktı arasındaki ilişki doğrudan ve tahmin edilebilir olup, barkod içerik uzunluğundan veya format özgü modül boyutlandırmasından bağımsızdır.

Genişletilmiş Platform Kapsamı: IronBarcode, .NET Framework 4.6.2'den .NET 9'a, iOS, Android, Windows ve macOS'ta MAUI dağıtımlarını ve Docker, AWS Lambda ve Azure Functions'a belgeli dağıtımı destekler. Platform gereksinimleri .NET Core'un ötesine geçen ekipler, Barcoder.Renderer.Image'ı etkileyen çerçeve destek boşluğunu yaşamazlar.

Aktif Bakım ve Gelecek Uyumluluğu: IronBarcode, belgelenmiş .NET uyumluluk zaman çizelgeleriyle düzenli güncellemeler yayınlar. Etkin sürüm kadansı, kütüphaneyi mevcut .NET sürümleriyle uyumlu tutar, son zamanlarda sınırlı sürüm etkinliği olan bir kütüphaneden beklenmeyen bir durum değildir.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez