IRONSOFTWAREHOME
IRONBARCODE KULLANARAK

IronBarcode ile C# içinde QR Kodları Nasıl Oluşturulur

Curtis Chau
Curtis Chau
Updated: 8 Mayıs 2026

IronBarcode, QRCodeWriter sınıfını kullanarak .NET geliştiricilerin verimli bir şekilde QR kodları oluşturmasını sağlar. Özel logolar, renkler, birden fazla çıktı formatı ve Windows, Linux, macOS ve mobil dahil olmak üzere çapraz platform dağıtımı desteklenir.

Bu kılavuz, üretim sistemleri için QR kodları oluşturmak amacıyla IronBarcode kullanmayı göstermektedir. IronBarcode'un API'si, .NET konvansiyonlarına uygun olarak Enterprise uygulamaları için gerekli performansı ve güvenilirliği sağlar. Kütüphane, tam belgeler sunar ve Windows, Linux, macOS ve mobil platformlarda dağıtım desteği sağlar. Tüm yeteneklerin tam bir özetini görmek için, özellikler sayfasını inceleyin. barkod hızlı başlangıç kılavuzu sizi başlatmak için anında uygulamalı örnekler sağlar.

IronBarcode Kullanarak QR Kod Oluşturmanın Faydaları Nelerdir?

IronBarcode'u Diğer Kütüphanelere Neden Tercih Etmelisiniz?

IronBarcode ile QR Kodları Nasıl Oluştururum?

Aşağıdaki bölümler SOLID prensiplerini takip eden üretime hazır kodu göstermektedir. Çeşitli QR kodu türleri oluşturmayı, özel stil uygulamayı ve güvenilir tarama performansını sağlamayı öğreneceksiniz. Kütüphanenin özellikleri, QR kodlarının ötesinde 1D ve 2D barkodlar için destek içerir. Gelişmiş senaryolar için, tam metod imzaları için API referansını inceleyin. IronBarcode'un yeteneklerini eylem halinde görmek için demoları keşfedin.

Yeni Bir Projeyi Nasıl Kurarım?

Visual Studio'yu açın ve Dosya Menüsünden Yeni Proje'yi seçin. Kurumsal dağıtımlar için otomatik kurulumlar için MSI yükleyici kılavuzunu incelemeyi düşünün. Başlangıç kılavuzu tam kurulum talimatlarını sağlar.

Console App şablonunu seçin ve İleri'yi tıklayın.

Tercih ettiğiniz proje adını (örneğin QR Code Generator) girin ve konumu belirtin. İleri yi tıklayın.

.NET sürümünü açılır listeden seçin (.NET 6.0 (Uzun dönem destek)) ve Oluştur'u tıklayın. IronBarcode, uyumluluk belgelerinde ayrıntılı olarak belirtilen tüm modern .NET sürümlerini destekler. Özel platform gereksinimleri için, Blazor entegrasyonu için kılavuza bakın.

Hangi Kurulum Yöntemleri Mevcut?

IronBarcode'u farklı iş akışlarına uygun dört yöntemden biriyle yükleyin. Kütüphanenin canlı demoları, gerçek zamanlı barkod tanıma yeteneklerini gösterir. Hızlı test için barkod hızlı başlatma örneğini keşfedin.

Visual Studio'nun Paket Yöneticisi UI'sını Kullanarak Nasıl Yüklerim?

Araçlar > NuGet Paket Yöneticisi > Çözüm için NuGet Paketlerini Yönet... e gidin

Veya Çözüm Gezgini'nde projenize sağ tıklayın ve NuGet Paketlerini Yönet... seçin

Gözat'ı tıklayın, Barcode arayın, IronBarcode seçin, projenizi seçin ve Yükle'yi tıklayın. Platforma özel kurulumlar için, NuGet paketleri kılavuzunu inceleyin. Sorun yaşarsanız, NuGet sorun giderme kılavuzuna başvurun. Kütüphane, AWS Lambda ve Azure Fonksiyonları dahil çeşitli dağıtım senaryolarını destekler.

Paket Yöneticisi Konsolunu Kullanarak Nasıl Yüklerim?

Araçlar > NuGet Paket Yöneticisi > Paket Yöneticisi Konsolu açın ve şunu çalıştırın:

PM > Install-Package BarCode

Bu, kütüphaneyi mevcut projenize yükler. Kapsayıcılı dağıtımlar için Docker kurulum kılavuzuna uyun. Lisans anahtarları kullanırken, dağıtım ortamınız için doğru yapılandırmayı sağlayın.

NuGet veya IronBarcode Web Sitesinden Nasıl İndiririm?

En son .NET barkod DLL'sini elde etmek için NuGet Galeri web sitesinden veya IronBarcode'un ana sayfasını ziyarete edin. DLL'inizi Çözüm Gezgini'nde Referans Ekle yoluyla projenize ekleyin. DLL sorunları için eksik DLL kılavuzuna bakın. Çalışma zamanı sorunlarıyla karşılaştığınızda, çalışma zamanı kopya istisna kılavuzunu inceleyin.

QR Kod Görsellerini Nasıl Oluşturur ve Özelleştiririm?

Temel Bir QR Kod Nasıl Oluştururum?

CreateQrCode yöntemini kullanarak QRCodeWriter sınıfından QR kodlar oluşturun. Tam bir örnek için C# QR kodu oluşturucu öğreticisine bakın. Kütüphane, çeşitli formatlarda barkod görüntüleri oluşturma desteği sağlar:

using IronBarCode;

// Basic QR code generation with medium error correction
var qrCode = QRCodeWriter.CreateQrCode("hello world", 500, QRCodeWriter.QrErrorCorrectionLevel.Medium, 0);
qrCode.SaveAsPng("MyQR.png");

// Generate QR code with automatic sizing and highest error correction
var autoQr = QRCodeWriter.CreateQrCode("Automatic sizing example");
autoQr.SaveAsJpeg("AutoQR.jpg");

// Production-ready QR code with validation
public GeneratedBarcode CreateValidatedQrCode(string data, int size = 600)
{
    if (string.IsNullOrWhiteSpace(data))
        throw new ArgumentException("Data cannot be empty");
    
    if (data.Length > 2953) // QR Code capacity at highest error correction
        throw new ArgumentException("Data exceeds QR code capacity");
    
    var qr = QRCodeWriter.CreateQrCode(data, size, QRCodeWriter.QrErrorCorrectionLevel.High);
    qr.VerifyQrCode(); // Verify the generated code is valid
    return qr;
}

CreateQrCode yöntemi şunları kabul eder:

  • Gerekli: Kodlanacak veriler (String veya Stream)
  • İsteğe bağlı: Grafik boyutları (varsayılan 500x500px)
  • İsteğe bağlı: hata düzeltme düzeyi (Düşük %7, Orta %15, Yüksek %25, En Yüksek %30)
  • İsteğe bağlı: QR sürüm numarası (otomatik için 0)

Yüksek performanslı parti işleme için artalan işlemleri ve özel stillendirme kullanın. Kusurlu koşullarla çalışırken, hata toleransı özelliklerini kullanın. Barkod okuma öğreticisi oluşturulan kodları doğrulama yöntemini gösterir.

QR Kodlarına Hangi Veri Türlerini Kodlayabilirim?

Üretim uygulamaları için yaygın QR kodu veri türleri, çeşitli kaynaklardan barkod oluşturma içerir. Detaylı örnekler için QR kodu oluşturma örneğine bakın. IronBarcode, uluslararası karakter kodlaması için Unicode barkodları destekler:

URL QR Kodları:

// Generate QR code for website URL
var urlQr = QRCodeWriter.CreateQrCode("___PROTECTED_URL_76___", 800);
urlQr.SetMargins(10); // Add quiet zone
urlQr.SaveAsPng("campaign-qr.png");

// Advanced URL QR code with tracking
public GeneratedBarcode CreateTrackableUrlQr(string baseUrl, Dictionary<string, string> utmParams)
{
    var uriBuilder = new UriBuilder(baseUrl);
    var query = System.Web.HttpUtility.ParseQueryString(uriBuilder.Query);
    
    foreach (var param in utmParams)
        query[param.Key] = param.Value;
    
    uriBuilder.Query = query.ToString();
    var qr = QRCodeWriter.CreateQrCode(uriBuilder.ToString(), 1000);
    return qr;
}

vCard İletişim Bilgileri:

string vCard = @"BEGIN:VCARD
VERSION:3.0
FN:John Smith
ORG:Tech Corp
TEL:+1-555-0123
EMAIL:john@example.com
END:VCARD";

var contactQr = QRCodeWriter.CreateQrCode(vCard, 600, QRCodeWriter.QrErrorCorrectionLevel.Medium);
contactQr.SaveAsPng("contact-card.png");

WiFi Konfigürasyonu:

string wifiConfig = "WIFI:T:WPA;S:NetworkName;P:Password123;;";
var wifiQr = QRCodeWriter.CreateQrCode(wifiConfig, 500);
wifiQr.SaveAsPng("wifi-config.png");

IronBarcode, uluslararası karakterler için Unicode desteğini yönetir ve Micro QR ve rMQR gibi alan sınırlı uygulamalar için formatları destekler. Özel formatlar için yeni formatlar noktasını keşfedin. Özel veri formatları ile çalışırken, kütüphane akışlardan okuyabilir ve akış olarak dışa aktarabilir ve bu sayede etkin bellek kullanımı sağlar.

Nasıl Logo Ekler ve Özel Stil Uygularım?

QR kodlarına şirket logoları eklemek için CreateQrCodeWithLogo kullanın. Tam stil seçenekleri için, özel QR kodu örneğine ve QR kodu stil kılavuzuna bakın. Kütüphane ayrıca tüm barkod türleri için genel barkod stilini de destekler:

// Create QR code with embedded logo
var qrWithLogo = QRCodeWriter.CreateQrCodeWithLogo("Hello World", "logo.png", 500);
qrWithLogo.ChangeBarCodeColor(System.Drawing.Color.DarkRed);
qrWithLogo.SaveAsPng("Logo_QR_Code.png");

// Advanced logo customization
var logo = new QRCodeLogo("company-logo.png")
{
    Width = 100,
    Height = 100,
    CornerRadius = 5
};
var advancedQr = QRCodeWriter.CreateQrCodeWithLogo("Advanced Example", logo, 600);

// Production-ready branded QR code
public GeneratedBarcode CreateBrandedQrCode(string data, string logoPath, string brandColor)
{
    var logo = new QRCodeLogo(logoPath)
    {
        Width = 80,
        Height = 80,
        CornerRadius = 10
    };
    
    var qr = QRCodeWriter.CreateQrCodeWithLogo(data, logo, 800);
    qr.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml(brandColor));
    qr.SetMargins(15);
    return qr;
}

Ek stil uygulamak için barkod özelleştirme özelliklerini uygulayın. Barkod stil özellikleri, tam özelleştirme seçenekleri sunar:

// Use HTML color codes for brand colors
qrWithLogo.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#8B0000"));
qrWithLogo.ChangeBackgroundColor(System.Drawing.Color.LightGray);
qrWithLogo.AddAnnotationTextAboveBarcode("SCAN ME");
qrWithLogo.AddAnnotationTextBelowBarcode("Company Name");

Hangi Dışa Aktarım Formatları Mevcut?

Farklı kullanım senaryoları için QR kodlarını çeşitli formatlarda kaydedin. Daha fazla bilgi için barkod kaydetme örneğine ve barkod görüntü oluşturucu kursuna bakın. Özel gereksinimler için, 1-BPP barkod görselleri oluşturma kılavuzuna bakın:

// Image formats
qrWithLogo.SaveAsJpeg("qr.jpg");
qrWithLogo.SaveAsPng("qr.png");
qrWithLogo.SaveAsGif("qr.gif");
qrWithLogo.SaveAsTiff("qr.tiff");

// Web formats
qrWithLogo.SaveAsHtmlFile("qr.html");
string dataUrl = qrWithLogo.ToDataUrl();

// Print formats
qrWithLogo.SaveAsPdf("qr.pdf");
qrWithLogo.ChangeBarcodeDpi(300);

// API formats
byte[] qrBytes = qrWithLogo.ToPngBinaryData();
var stream = qrWithLogo.ToStream();

// High-quality print export
public void ExportForPrint(GeneratedBarcode qr, string filename)
{
    qr.ChangeBarcodeDpi(600); //YüksekDPI for print
    qr.ResizeTo(2000, 2000); // Large size
    qr.SaveAsTiff(filename); // Lossless format
}
C#

PDF'ye özel işlemler için, barkodları PDF olarak oluşturma ve varolan PDF'lere barkod damgalama kılavuzlarına bakın. PDF'lerden barkod okurken, en iyi sonuçlar için PDF barkod okuyucu ayarlarını kullanın.

Web Uygulamalarında QR Kodları Nasıl Uygularım?

ASP.NET MVC uygulamaları için dosyasız veri akışı uygulayın: dosya I/O olmadan akış yaparak Kütüphane, doğrudan web entegrasyonu için barkodları HTML olarak oluşturmayı destekler:

public IActionResult GetQrCode(string data)
{
    var qr = QRCodeWriter.CreateQrCode(data, 400);
    byte[] qrBytes = qr.ToPngBinaryData();
    return File(qrBytes, "image/png", "qrcode.png");
}

// Stream directly without disk I/O
public IActionResult StreamQrCode(string content)
{
    var qr = QRCodeWriter.CreateQrCode(content, 500);
    var stream = qr.ToStream();
    return File(stream, "image/png");
}

// Generate HTML-embedded QR codes
public IActionResult GetHtmlQrCode(string data)
{
    var qr = QRCodeWriter.CreateQrCode(data, 400);
    var htmlString = qr.ToHtmlTag();
    return Content(htmlString, "text/html");
}

Blazor uygulamaları için reaktif QR kodu oluşturma uygulayın:

@page "/qrcode"
@using IronBarCode

<input @bind="qrText" placeholder="Enter text" />
<button @onclick="GenerateQr">Generate</button>

@if (!string.IsNullOrEmpty(QrCodeDataUrl))
{
    <img src="@QrCodeDataUrl" alt="QR Code" />
}

@code {
    private string qrText = "";
    private string QrCodeDataUrl = "";

    private void GenerateQr()
    {
        if (!string.IsNullOrEmpty(qrText))
        {
            var qr = QRCodeWriter.CreateQrCode(qrText, 400);
            QrCodeDataUrl = qr.ToDataUrl();
        }
    }
}

Barkodları HTML olarak dışa aktarmak için barkodu HTML olarak oluşturma kılavuzunu inceleyin. Web uygulamalarında lisans uygularken web.config lisans anahtarı kılavuzuna bakın.

QR Kod Uygulaması İçin En İyi Uygulamalar Nelerdir?

Hangi Hata Düzeltme Düzeyini Seçmeliyim?

Hata düzeltme dayanıklılığı ve kapasiteyi etkiler. Detaylı bilgi için hata düzeltme kılavuzuna bakın. Kütüphane, makine öğrenme güven eşikleri içerir ve böylece doğruluğu artırır:

DüzeyDüzeltmeKullanım Durumu
Düşük%7Temiz dijital ortamlar
Orta%15Basılı materyaller, kartvizitler
Yüksek%25Açık hava tabelaları, elle taşınan öğeler
En Yüksek%30Endüstriyel kullanım, logolar eklenmiş

QR Kodlarımın Boyutu Ne Olmalıdır?

Tarama mesafesine göre optimal boyut hesaplayın. Taramayı iyileştirmek için kenar boşluklarını ayarlama hakkında bilgi edinin. Kenar boşlukları ayarlama örneği en iyi uygulamaları gösterir:

// 1:10 ratio - 1cm QR per 10cm distance
int CalculateQrSize(double scanDistanceMeters)
{
    int sizeInCm = (int)(scanDistanceMeters * 10);
    return (int)(sizeInCm * 37.8); // Convert to pixels at 96 DPI
}

// Set appropriate margins for reliable scanning
public GeneratedBarcode CreateScanOptimizedQr(string data, int scanDistance)
{
    int size = CalculateQrSize(scanDistance);
    var qr = QRCodeWriter.CreateQrCode(data, size);
    qr.SetMargins(size / 20); // 5% margin
    return qr;
}

Mobil Uyumluluğu Nasıl Sağlarım?

Mobil tarama için barkod okuyucu ayarlarını kullanarak iyileştirin. Tanıma sorunlarıyla uğraşırken tanınmayan barkod kılavuzuna bakın:

public GeneratedBarcode CreateMobileOptimizedQr(string data)
{
    var qr = QRCodeWriter.CreateQrCode(data, 800, QRCodeWriter.QrErrorCorrectionLevel.Medium);
    qr.SetMargins(20); // Adequate quiet zone
    qr.ChangeBarCodeColor(System.Drawing.Color.Black);
    qr.ChangeBackgroundColor(System.Drawing.Color.White);
    return qr;
}

Platformlar arası mobil geliştirme için .NET MAUI barkod tarayıcı öğreticisini keşfedin. Kütüphane hem iOS hem de Android platformlarını doğal olarak destekler.## Common Integration Scenarios

Pazarlama Kampanya QR Kodları Oluşturma

Özel markalama ile izlenebilir pazarlama QR kodları uygulamak için barkod okuma hızını yönetme kılavuzuna başvurun:

public GeneratedBarcode CreateCampaignQr(string campaignId, string userId)
{
    string trackingUrl = "___PROTECTED_URL_79___";
    var qr = QRCodeWriter.CreateQrCodeWithLogo(trackingUrl, "logo.png", 1000);
    qr.ChangeBarCodeColor(System.Drawing.ColorTranslator.FromHtml("#1E3A8A"));
    qr.AddAnnotationTextAboveBarcode($"Campaign: {campaignId}");
    return qr;
}

// Batch generate campaign materials
public async Task GenerateCampaignBatch(List<string> userIds, string campaignId)
{
    var tasks = userIds.Select(async userId =>
    {
        var qr = CreateCampaignQr(campaignId, userId);
        await Task.Run(() => qr.SaveAsPng($"campaigns/{campaignId}/{userId}.png"));
    });
    
    await Task.WhenAll(tasks);
}

Ürün Etiketi QR Kodları Üretme

Envanter yönetimi için QR kodları oluşturun. Özel formatları ele almak için GS1-128 sorun giderme kılavuzuna bakın. Belirli barkod türleriyle çalışırken, Code 39 veya MSI barkodları gibi formatlara özgü kılavuzlara bakın:

public void GenerateProductLabel(Product product)
{
    var productData = new
    {
        sku = product.SKU,
        batch = product.BatchNumber,
        expiry = product.ExpiryDate.ToString("yyyy-MM-dd")
    };
    
    string json = System.Text.Json.JsonSerializer.Serialize(productData);
    var qr = QRCodeWriter.CreateQrCode(json, 400, QRCodeWriter.QrErrorCorrectionLevel.High);
    qr.AddAnnotationTextAboveBarcode(product.Name);
    qr.SaveAsPng($"labels/product-{product.SKU}.png");
}

// Generate 1-BPP labels for thermal printers
public void GenerateThermalLabel(Product product)
{
    var qr = CreateProductQr(product);
    qr.SaveAs1BitPerPixelPng($"thermal/{product.SKU}.png");
}

Özelleşmiş etiket baskısı için, 1-BPP barkod görüntüsü kılavuzunu inceleyin. Çok sayfalı belgeleri okurken, çok sayfalı GIF ve TIFF kılavuzuna bakın.

Barkod Tarama Performansını İyileştirme

Yüksek hacimli tarama uygulamaları için tarama alanlarını sınırlamak ve performansı artırmak için kırpma bölgeleri uygulayın. Okuma hızı seçenekleri, doğruluk-hız dengelemeyi kontrollü bir şekilde sunar:

// Define crop region for faster scanning
var cropRegion = new Rectangle(100, 100, 300, 300);
var options = new BarcodeReaderOptions
{
    Speed = ReadingSpeed.Faster,
    ExpectBarcodeTypes = BarcodeEncoding.QRCode,
    CropArea = cropRegion
};

var results = BarcodeReader.Read("image.png", options);

Sistem Çizim nesneleriyle çalışırken, kütüphane IronDrawing aracılığıyla platformlar arası uyumluluk sağlar.

Belirgin Çıkarımlar

IronBarcode, .NET uygulamalarında QR kodları oluşturmak için eksiksiz bir çözüm sunar. Kütüphane, sezgisel API'lar, kapsamlı belgeler ve üretime hazır özellikler sunar: hata toleransı, platformlar arası destek ve performans optimizasyonu içerir. En son özellikler hakkında güncellemeler ile güncel kalın. Güvenlik bilincine sahip dağıtımlar için güvenlik CVE açıklamalarını inceleyin.

Lisans bilgilerini lisans sayfasında bulun. IronBarcode, premium seçeneklerle birlikte destek ve güncellemelerle ücretsiz bir geliştirici lisansı sunar. Mevcut müşteriler için lisans uzantılarını ve yükseltme seçeneklerini keşfedin. Lisanslama konusunda yardıma ihtiyacınız varsa, lisans anahtarı uygulama kılavuzuna ve web.config lisans kurulumuna bakın.

Üretim dağıtımları için, AWS Lambda, Azure Fonksiyonları ve Docker konteynerleri kılavuzlarına bakın. Belirli dağıtım sorunlarını gidermek için, AWS Lambda çalışma zamanı kılavuzuna ve çalışma zamanı kopya istisna çözümlerine bakın. Yanlış pozitifler yaşadığınızda, detaylı sorun giderme kılavuzunu inceleyin.

Teknik destek için, bir mühendislik isteği gönderin. Kütüphane düzenli güncellemeler geçirmekte olup, ürün güncellemeleri bölümünde gösterildiği gibi uyumluluğun ve yeni özelliklerin sürdürüldüğünü garanti eder.

Hızlı Bir QR Kodu Örneğiyle Başlangıç Yapmak

Sadece birkaç satır kodla özel stil özelleştirmesiyle QR kodu oluşturun. Daha fazla örnek için barkod oluşturma örneğine bakın ve tam barkod çözümleri için barkod okuma öğreticisini inceleyin. Ek örnekler arasında PDF'lerden barkod okuma ve verilerden barkod oluşturma bulunmaktadır:

using IronBarCode;

// Create QR code with custom size and error correction
var qrCode = QRCodeWriter.CreateQrCode("___PROTECTED_URL_81___", 500, QRCodeWriter.QrErrorCorrectionLevel.High);

// Add styling
qrCode.ChangeBarCodeColor(System.Drawing.Color.Navy);
qrCode.AddBarcodeValueTextBelowBarcode();

// Save as image
qrCode.SaveAsPng("quickstart-qr.png");

// Export for API
byte[] pngBytes = qrCode.ToPngBinaryData();

IronBarcode, AWS Lambda, Azure, Docker ve mobil platformlar üzerine dağıtımı destekler. Teknik destek için, bir mühendislik isteği gönderin. Kurumsal güvenlik gereksinimleri için güvenlik CVE açıklamalarını keşfedin.

Barkod tanıma kabiliyetlerini tam anlamak için barkod okuma özelliklerini inceleyin, Code 39 barkodlarını okuma ve diğer özel formatlar dahil. Kütüphanenin tam özellik seti, güvenilir barkod üretimi ve tarama yetenekleri gerektiren kurumsal uygulamalar için uygundur.

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