Produkty Iron Software i Visual Studio 2026: Kompletne przewodnik po integracji
Wprowadzenie
Wydanie Visual Studio 2026 stanowi znaczący kamień milowy we współczesnym rozwoju oprogramowania, wprowadzając to, co Microsoft nazywa pierwszym "AI-native Intelligent Developer Environment". Wydany 11 listopada 2025, Visual Studio 2026 przynosi ulepszony performance, odświeżony interfejs zgodny z systemem projektowym Fluent UI oraz kompleksowe wsparcie dla .NET 10 i C# 14. Dla deweloperów pracujących z zestawem bibliotek .NET od Iron Software — w tym IronPDF, IronOCR, IronBarcode i IronXL — ta najnowsza wersja stanowi ekscytującą okazję do wykorzystania nowoczesnych narzędzi deweloperskich wraz z potężnymi możliwościami przetwarzania dokumentów.
Według artykułu na Medium autorstwa Cosmina Vladutu, deweloperzy byli szczególnie pod wrażeniem zysków wydajności w Visual Studio 2026, zauważając, że "kompilacja była szybsza niż w wersji 2022, a pamięć była na poziomie 800–900 MB w porównaniu do 1200–1300 MB w 2022." Ta poprawiona wydajność tworzy idealne środowisko do pracy z bibliotekami przetwarzania dokumentów obsługującymi skomplikówane operacje.
W tym kompleksowym przewodniku zbadamy, jak pełna gama produktów Iron Software integruje się bezproblemowo z Visual Studio 2026, demonstrując praktyczne przykłady kodu i podkreślając korzyści płynące z tej potężnej kombinacji dla deweloperów .NET pracujących w różnych językach i frameworkach programowania.
Visual Studio 2026: Kluczowe funkcje dla deweloperów .NET

Ulepszone doświadczenia IDE przy użyciu systemu projektu Fluent UI
Visual Studio 2026 wprowadza zupełnie nowe doświadczenie użytkownika z odświeżonym interfejsem zgodnym z systemem projektowym Fluent UI firmy Microsoft. Nowe funkcje obejmują ulepszone kontrolki edytora, poprawioną czytelność wizualną i większą kontrolę nad ogólnym motywem IDE. Deweloperzy mogą teraz wybierać spośród 11 nowych barwionych motywów, umożliwiających większą personalizację środowiska kodowania, aby dopasować je do osobistych preferencji i zmniejszyć zmęczenie oczu w trakcie przedłużających się sesji projektowania.
Nowoczesne doświadczenie z ustawieniami zastępuje tradycyjne okno dialogowe Narzędzia > Opcje usprawnionym, przyjaznym dla użytkownika interfejsem. To przeprojektowane doświadczenie użytkownika ułatwia deweloperom .NET szybkie skonfigurowanie środowiska projektowego, niezależnie od tego, czy pracują nad aplikacjami webowymi, narzędziami do interfejsu wiersza poleceń, czy projektami wersji Enterprise.
Jak zauważył Elanchezhiyan P na Medium, IDE jest wyposażony w "przeprojektowanie Fluent UI z czystszymi układami i ikonami", co sprawia, że doświadczenie programistyczne jest bardziej intuicyjne i atrakcyjne wizualnie.
Integracja GitHub Copilot i rozwój oparty na AI

Jednym z najważniejszych postępów w Visual Studio 2026 jest głęboka integracja copilot w całym IDE. Agent copilot profiler może analizować użycie CPU, alokacje pamięci i zachowanie w czasie wykonywania, dostarczając lepszych odpowiedzi copilot i spostrzeżeń copilot, które pomagają deweloperom optymalizować ich kod. Pomoc copilot rozciąga się na różne aspekty rozwoju, w tym na eksploratora testów, gdzie deweloperzy mogą wykorzystywać AI do automatycznego generowania i naprawiania testów jednostkowych.
Nowe menu kontekstowe zapewnia szybki dostęp do działań Copilot, a funkcja adaptacyjnego wklejania automatycznie dostosowuje wklejany kod do kontekstu projektu. Te funkcje reprezentują fundamentalną zmianę w kierunku rozwoju opartego na AI, gdzie inteligentne sugestie pomagają deweloperom pisać kod szybciej bez poświęcania jakości kodu.
Ulepszenia wydajności i narzędzia kompilacji
Visual Studio 2026 dostarcza znaczące ulepszenia wydajności w całym zakresie. Projekty z setkami istniejących projektów teraz ładują się o 40% szybciej niż w Visual Studio 2022. Debugger pokazuje czasy uruchamiania o 30% szybciej przy użyciu F5, a pełne przebudowy przypominają bliżej budowy inkrementalne dzięki optymalizacjom zarówno w IDE, jak i w runtime'ie .NET 10.
Narzędzia kompilacji zostały oddzielone od samego IDE, co oznacza, że deweloperzy mogą aktualizować Visual Studio z automatycznymi miesięcznymi aktualizacjami bez wpływu na swoje kompilatory .NET lub C++. Takie rozdzielenie zapewnia stabilność procesów ciągłej integracji, a programiści mogą korzystać z najnowszych funkcji i poprawek błędów w środowisku IDE.
Ulepszenia w zakresie pokrycia kodu i testowania
Głównym przełomem w Visual Studio 2026 jest po raz pierwszy udostępnienie pokrycia kodu w wersjach Visual Studio Community i Professional. Wcześniej funkcja ta była ograniczona do wersji Enterprise, ale teraz programiści mogą analizować okno wyników pokrycia kodu, aby zrozumieć, które części ich kodu są sprawdzane przez testy jednostkowe. Ta demokratyzacja narzędzi testowych pomaga większej liczbie programistów zapewnić, że ich aplikacje są dobrze przetestowane przed wdrożeniem.
Opcja "Wybierz analizę pokrycia kodu" pozwala programistom uruchomić analizę pokrycia kodu dla wybranych testów bezpośrednio z menu testów, a wyniki są wyświetlane w oknie pokrycia kodu, pokazującym wartości procentowe dla każdego zestawu, klasy i metody. Visual Studio podświetla przetestowane wiersze bezpośrednio w edytorze kodu, co ułatwia wykrywanie luk w pokryciu testowym.
Produkty Iron Software: Potwierdzona kompatybilność z .NET 10

Zanim przejdziemy do szczegółów implementacji, należy potwierdzić, że wszystkie produkty Iron Software w pełni obsługują .NET 10, który jest podstawową wersją frameworka dla Visual Studio 2026. Zgodnie z oficjalną stroną internetową Iron Software wszystkie ich produkty — w tym IronPDF, IronOCR, IronBarcode, IronXL, IronWord, IronPPT, IronQR, IronZIP, IronPrint i IronWebScraper — w pełni obsługują wdrożenia .NET 10, 9, 8, 7, 6, Framework, Core i Azure.
Ta wszechstronna kompatybilność gwarantuje, że programiści mogą korzystać z najnowszej wersji Visual Studio 2026 podczas pracy z bibliotekami przetwarzania dokumentów firmy Iron Software. Biblioteki obsługują różne języki programowania, w tym C#, VB.NET i F#, dzięki czemu są dostępne dla szerszej społeczności programistów .NET.
IronPDF: Generowanie i edycja plików PDF w Visual Studio 2026

Pierwsze kroki z IronPDF
IronPDF to kompleksowa biblioteka C# do obsługi plików PDF, która pozwala programistom tworzyć, edytować i wyodrębniać zawartość plików PDF w projektach .NET. Dzięki obsłudze .NET 10 w Visual Studio 2026 oraz ulepszonym możliwościom debugowania praca z IronPDF staje się jeszcze bardziej wydajna.
Aby zainstalować IronPDF w projekcie Visual Studio 2026, otwórz konsolę NuGet Package Manager Console i uruchom:
Install-Package IronPdf
Install-Package IronPdf
Lub użyj interfejsu CLI platformy .NET:
dotnet add package IronPdf
dotnet add package IronPdf
Konwersja HTML do PDF
Jedną z najpotężniejszych funkcji IronPDF jest konwersja HTML do PDF, która działa płynnie w ulepszonym środowisku programistycznym Visual Studio 2026. Oto praktyczny przykład:
using IronPdf;
// Create a new PDF from HTML string
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello from Visual Studio 2026!</h1><p>Generated with IronPDF</p>");
// Save the PDF
pdf.SaveAs("output.pdf");
using IronPdf;
// Create a new PDF from HTML string
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello from Visual Studio 2026!</h1><p>Generated with IronPDF</p>");
// Save the PDF
pdf.SaveAs("output.pdf");
Imports IronPdf
' Create a new PDF from HTML string
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello from Visual Studio 2026!</h1><p>Generated with IronPDF</p>")
' Save the PDF
pdf.SaveAs("output.pdf")
Wygenerowany plik PDF

Dzięki funkcji zwracania wartości w linii kodu w Visual Studio 2026 oraz ulepszonemu debugowaniu wydajności programiści mogą dokładnie zobaczyć, co zwraca metoda RenderHtmlAsPdf w czasie rzeczywistym, bez konieczności przechodzenia krok po kroku przez kod. Wskazówki Copilota mogą również dostarczyć sugestii dotyczących optymalizacji operacji generowania plików PDF.
Zapoznaj się z konwersją HTML do PDF oraz różnymi formami HTML, które IronPDF może renderować do plików PDF, w naszej obszernej dokumentacji i poradnikach.
Praca z istniejącymi PDF-ami
IronPDF pozwala z łatwością edytować istniejące dokumenty PDF. Ulepszone elementy sterujące edytora w Visual Studio 2026 sprawiają, że pisanie tego kodu jest bardziej intuicyjne:
using IronPdf;
// Open an existing PDF
var pdf = PdfDocument.FromFile("existing.pdf");
// Add watermark
pdf.ApplyWatermark("<h2 style='color:red'>CONFIDENTIAL</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center);
// Extract text
string text = pdf.ExtractAllText();
Console.WriteLine(text);
// Save modified PDF
pdf.SaveAs("modified.pdf");
using IronPdf;
// Open an existing PDF
var pdf = PdfDocument.FromFile("existing.pdf");
// Add watermark
pdf.ApplyWatermark("<h2 style='color:red'>CONFIDENTIAL</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center);
// Extract text
string text = pdf.ExtractAllText();
Console.WriteLine(text);
// Save modified PDF
pdf.SaveAs("modified.pdf");
Imports IronPdf
' Open an existing PDF
Dim pdf = PdfDocument.FromFile("existing.pdf")
' Add watermark
pdf.ApplyWatermark("<h2 style='color:red'>CONFIDENTIAL</h2>", 30, VerticalAlignment.Middle, HorizontalAlignment.Center)
' Extract text
Dim text As String = pdf.ExtractAllText()
Console.WriteLine(text)
' Save modified PDF
pdf.SaveAs("modified.pdf")
Plik PDF zmodyfikowany za pomocą programu Visual Studio Community 2026

Nowa funkcja uruchamiania profilera w Visual Studio 2026 ułatwia identyfikację wąskich gardeł wydajności podczas przetwarzania dużych plików PDF. Programiści mogą korzystać z szablonu projektu benchmarkdotnet do pomiaru i optymalizacji operacji związanych z plikami PDF.
Formularze PDF i podpisy cyfrowe
IronPDF obsługuje formularze PDF i podpisy cyfrowe, niezbędne w aplikacjach Enterprise wymagających uwierzytelniania dokumentów:
using IronPdf;
using IronPdf.Signing;
// Open a PDF with form fields
var pdf = PdfDocument.FromFile("form.pdf");
// Fill form fields
pdf.Form.Fields["Name"].Value = "John Developer";
pdf.Form.Fields["Email"].Value = "john@example.com";
// Sign the PDF (using CSP-based certificates)
var signature = new PdfSignature("certificate.pfx", "password");
pdf.Sign(signature);
// Save the signed PDF
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
// Open a PDF with form fields
var pdf = PdfDocument.FromFile("form.pdf");
// Fill form fields
pdf.Form.Fields["Name"].Value = "John Developer";
pdf.Form.Fields["Email"].Value = "john@example.com";
// Sign the PDF (using CSP-based certificates)
var signature = new PdfSignature("certificate.pfx", "password");
pdf.Sign(signature);
// Save the signed PDF
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
' Open a PDF with form fields
Dim pdf = PdfDocument.FromFile("form.pdf")
' Fill form fields
pdf.Form.Fields("Name").Value = "John Developer"
pdf.Form.Fields("Email").Value = "john@example.com"
' Sign the PDF (using CSP-based certificates)
Dim signature = New PdfSignature("certificate.pfx", "password")
pdf.Sign(signature)
' Save the signed PDF
pdf.SaveAs("signed.pdf")
Funkcje pokrycia kodu w Visual Studio 2026 pomagają zapewnić, że logika wypełniania formularzy i podpisywania jest odpowiednio testowana w różnych scenariuszach.
IronOCR: Optyczne rozpoznawanie znaków w Visual Studio 2026

Konfiguracja IronOCR
IronOCR umożliwia programistom wykonywanie operacji OCR w aplikacjach .NET, obsługując ponad 125 języków. Instalacja IronOCR w Visual Studio 2026 jest prosta:
Install-Package IronOcr
Install-Package IronOcr
Podstawowe operacje OCR
Dzięki złożonym narzędziom do debugowania w Visual Studio 2026 i lepszym odpowiedziom Copilota praca z OCR staje się łatwiejsza:
using IronOcr;
// Initialize OCR engine
var ocr = new IronTesseract();
// Perform OCR on an image
using (var input = new OcrInput())
{
input.AddImage("document.png");
// Process the image
var result = ocr.Read(input);
// Extract text
string text = result.Text;
Console.WriteLine(text);
// Get confidence level
double confidence = result.Confidence;
Console.WriteLine($"Confidence: {confidence}%");
}
using IronOcr;
// Initialize OCR engine
var ocr = new IronTesseract();
// Perform OCR on an image
using (var input = new OcrInput())
{
input.AddImage("document.png");
// Process the image
var result = ocr.Read(input);
// Extract text
string text = result.Text;
Console.WriteLine(text);
// Get confidence level
double confidence = result.Confidence;
Console.WriteLine($"Confidence: {confidence}%");
}
Imports IronOcr
' Initialize OCR engine
Dim ocr As New IronTesseract()
' Perform OCR on an image
Using input As New OcrInput()
input.AddImage("document.png")
' Process the image
Dim result = ocr.Read(input)
' Extract text
Dim text As String = result.Text
Console.WriteLine(text)
' Get confidence level
Dim confidence As Double = result.Confidence
Console.WriteLine($"Confidence: {confidence}%")
End Using
Wynik konsoli

Podświetlanie składni w Visual Studio 2026 sprawia, że kod OCR jest bardziej czytelny, a integracja z eksploratorem testów pozwala programistom pisać kompleksowe testy jednostkowe sprawdzające dokładność OCR.
Obsługa wielojęzycznego OCR
Obsługa wielu języków przez IronOCR doskonale współgra z ulepszoną obsługą języków w Visual Studio 2026:
using IronOcr;
// Initialize with specific language
var ocr = new IronTesseract();
ocr.Language = OcrLanguage.Spanish;
// Add additional languages
ocr.AddSecondaryLanguage(OcrLanguage.French);
using (var input = new OcrInput())
{
input.AddImage("multilingual-document.png");
var result = ocr.Read(input);
// Process multilingual text
foreach (var page in result.Pages)
{
Console.WriteLine($"Page {page.PageNumber}: {page.Text}");
}
}
using IronOcr;
// Initialize with specific language
var ocr = new IronTesseract();
ocr.Language = OcrLanguage.Spanish;
// Add additional languages
ocr.AddSecondaryLanguage(OcrLanguage.French);
using (var input = new OcrInput())
{
input.AddImage("multilingual-document.png");
var result = ocr.Read(input);
// Process multilingual text
foreach (var page in result.Pages)
{
Console.WriteLine($"Page {page.PageNumber}: {page.Text}");
}
}
Imports IronOcr
' Initialize with specific language
Dim ocr As New IronTesseract()
ocr.Language = OcrLanguage.Spanish
' Add additional languages
ocr.AddSecondaryLanguage(OcrLanguage.French)
Using input As New OcrInput()
input.AddImage("multilingual-document.png")
Dim result = ocr.Read(input)
' Process multilingual text
For Each page In result.Pages
Console.WriteLine($"Page {page.PageNumber}: {page.Text}")
Next
End Using
OCR z poprawą jakości obrazu
IronOCR zawiera funkcje poprawy jakości obrazu, które zwiększają dokładność OCR w przypadku skanów o niskiej jakości:
using IronOcr;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
// Add image with enhancement
input.AddImage("poor-quality-scan.jpg");
// Apply filters
input.Deskew();
input.DeNoise();
input.Dilate();
// Perform OCR
var result = ocr.Read(input);
Console.WriteLine(result.Text);
}
using IronOcr;
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
// Add image with enhancement
input.AddImage("poor-quality-scan.jpg");
// Apply filters
input.Deskew();
input.DeNoise();
input.Dilate();
// Perform OCR
var result = ocr.Read(input);
Console.WriteLine(result.Text);
}
Imports IronOcr
Dim ocr As New IronTesseract()
Using input As New OcrInput()
' Add image with enhancement
input.AddImage("poor-quality-scan.jpg")
' Apply filters
input.Deskew()
input.DeNoise()
input.Dilate()
' Perform OCR
Dim result = ocr.Read(input)
Console.WriteLine(result.Text)
End Using
Funkcja debugowania instrukcji if w Visual Studio 2026 pomaga programistom dokładnie zrozumieć, które filtry ulepszeń są stosowane i jaki mają wpływ na wyniki OCR.
IronBarcode: Przetwarzanie kodów kreskowych i kodów QR

Instalacja IronBarcode
IronBarcode zapewnia kompleksowe możliwości odczytu i zapisu kodów kreskowych dla aplikacji .NET:
Install-Package IronBarcode
Install-Package IronBarcode
Odczytywanie BarCodes z obrazów
Narzędzia do obsługi plików w Visual Studio 2026 ułatwiają pracę z plikami graficznymi zawierającymi BARCODES:
using IronBarCode;
// Read barcode from image file
var results = BarcodeReader.Read("barcode-image.png");
foreach (var result in results)
{
Console.WriteLine($"Barcode Type: {result.BarcodeType}");
Console.WriteLine($"Value: {result.Value}");
}
using IronBarCode;
// Read barcode from image file
var results = BarcodeReader.Read("barcode-image.png");
foreach (var result in results)
{
Console.WriteLine($"Barcode Type: {result.BarcodeType}");
Console.WriteLine($"Value: {result.Value}");
}
Imports IronBarCode
' Read barcode from image file
Dim results = BarcodeReader.Read("barcode-image.png")
For Each result In results
Console.WriteLine($"Barcode Type: {result.BarcodeType}")
Console.WriteLine($"Value: {result.Value}")
Next
Wynik działania konsoli IronBarcode

Zwiększona wydajność w Visual Studio 2026 zapewnia szybkie wykonywanie operacji odczytu kodów kreskowych, nawet podczas przetwarzania wielu obrazów w operacjach wsadowych.
Generowanie BarCodes
Tworzenie kodów kreskowych za pomocą IronBarcode jest proste, a odświeżony interfejs w Visual Studio 2026 sprawia, że praca nad projektem jest przyjemna:
using IronBarCode;
using IronSoftware.Drawing;
// Generate a QR code
var qrCode = BarcodeWriter.CreateBarcode("https://ironsoftware.com", BarcodeEncoding.QRCode);
// Customize appearance
qrCode.SetMargins(10);
qrCode.AddBarcodeValueTextBelowBarcode();
qrCode.ChangeBarCodeColor(Color.Blue);
// Save as image
qrCode.SaveAsImage("qr-code.png");
// Or save as PDF
qrCode.SaveAsPdf("qr-code.pdf");
using IronBarCode;
using IronSoftware.Drawing;
// Generate a QR code
var qrCode = BarcodeWriter.CreateBarcode("https://ironsoftware.com", BarcodeEncoding.QRCode);
// Customize appearance
qrCode.SetMargins(10);
qrCode.AddBarcodeValueTextBelowBarcode();
qrCode.ChangeBarCodeColor(Color.Blue);
// Save as image
qrCode.SaveAsImage("qr-code.png");
// Or save as PDF
qrCode.SaveAsPdf("qr-code.pdf");
Imports IronBarCode
Imports IronSoftware.Drawing
' Generate a QR code
Dim qrCode = BarcodeWriter.CreateBarcode("https://ironsoftware.com", BarcodeEncoding.QRCode)
' Customize appearance
qrCode.SetMargins(10)
qrCode.AddBarcodeValueTextBelowBarcode()
qrCode.ChangeBarCodeColor(Color.Blue)
' Save as image
qrCode.SaveAsImage("qr-code.png")
' Or save as PDF
qrCode.SaveAsPdf("qr-code.pdf")
Utworzony kod QR

Zaawansowane odczytywanie BarCode z wykrywaniem ML
IronBarcode obsługuje wykrywanie oparte na uczeniu maszynowym w celu zwiększenia dokładności:
using IronBarCode;
// Configure barcode reader with ML detection
var options = new BarcodeReaderOptions
{
ExpectMultipleBarcodes = true,
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
CropArea = new System.Drawing.Rectangle(0, 0, 500, 500),
UseCode39ExtendedMode = true
};
// Read barcodes with options
var results = BarcodeReader.Read("multi-barcode-image.png", options);
foreach (var barcode in results)
{
Console.WriteLine($"Found: {barcode.BarcodeType} = {barcode.Value}");
}
using IronBarCode;
// Configure barcode reader with ML detection
var options = new BarcodeReaderOptions
{
ExpectMultipleBarcodes = true,
ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
CropArea = new System.Drawing.Rectangle(0, 0, 500, 500),
UseCode39ExtendedMode = true
};
// Read barcodes with options
var results = BarcodeReader.Read("multi-barcode-image.png", options);
foreach (var barcode in results)
{
Console.WriteLine($"Found: {barcode.BarcodeType} = {barcode.Value}");
}
Imports IronBarCode
Imports System.Drawing
' Configure barcode reader with ML detection
Dim options As New BarcodeReaderOptions With {
.ExpectMultipleBarcodes = True,
.ExpectBarcodeTypes = BarcodeEncoding.AllOneDimensional,
.CropArea = New Rectangle(0, 0, 500, 500),
.UseCode39ExtendedMode = True
}
' Read barcodes with options
Dim results = BarcodeReader.Read("multi-barcode-image.png", options)
For Each barcode In results
Console.WriteLine($"Found: {barcode.BarcodeType} = {barcode.Value}")
Next
Narzędzie do alokacji pamięci w Visual Studio 2026 pomaga programistom zoptymalizować wykorzystanie pamięci podczas przetwarzania dużych partii obrazów BarCode.
IronXL: Przetwarzanie plików Excel bez integracji z pakietem Office

Pierwsze kroki z IronXL
IronXL pozwala programistom na odczytywanie, generowanie i edycję plików Excel bez konieczności posiadania pakietu Microsoft Office lub Excel Interop:
Tworzenie skoroszytów programu Excel
Dzięki szablonom projektów Visual Studio 2026 i ulepszonemu edytorowi kodu tworzenie plików Excel staje się dziecinnie proste:
using IronXL;
// Create a new Excel workbook
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.DefaultWorkSheet;
// Add data
sheet["A1"].Value = "Product";
sheet["B1"].Value = "Quantity";
sheet["C1"].Value = "Price";
// Add rows of data
sheet["A2"].Value = "IronPDF License";
sheet["B2"].Value = 1;
sheet["C2"].Value = 599;
sheet["A3"].Value = "IronOCR License";
sheet["B3"].Value = 1;
sheet["C3"].Value = 499;
// Add formula
sheet["C4"].Formula = "=SUM(C2:C3)";
// Save the workbook
workbook.SaveAs("products.xlsx");
using IronXL;
// Create a new Excel workbook
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet sheet = workbook.DefaultWorkSheet;
// Add data
sheet["A1"].Value = "Product";
sheet["B1"].Value = "Quantity";
sheet["C1"].Value = "Price";
// Add rows of data
sheet["A2"].Value = "IronPDF License";
sheet["B2"].Value = 1;
sheet["C2"].Value = 599;
sheet["A3"].Value = "IronOCR License";
sheet["B3"].Value = 1;
sheet["C3"].Value = 499;
// Add formula
sheet["C4"].Formula = "=SUM(C2:C3)";
// Save the workbook
workbook.SaveAs("products.xlsx");
Imports IronXL
' Create a new Excel workbook
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
' Add data
sheet("A1").Value = "Product"
sheet("B1").Value = "Quantity"
sheet("C1").Value = "Price"
' Add rows of data
sheet("A2").Value = "IronPDF License"
sheet("B2").Value = 1
sheet("C2").Value = 599
sheet("A3").Value = "IronOCR License"
sheet("B3").Value = 1
sheet("C3").Value = 499
' Add formula
sheet("C4").Formula = "=SUM(C2:C3)"
' Save the workbook
workbook.SaveAs("products.xlsx")
Wygenerowany plik Excel

Przejrzystość wizualna zapewniona przez ulepszone podświetlanie składni w Visual Studio 2026 sprawia, że kod do manipulacji danymi w Excelu jest łatwiejszy do odczytania i utrzymania.
Odczytywanie istniejących plików Excel
IronXL może efektywnie odczytywać dane z istniejących plików Excel:
using IronXL;
// Load existing Excel file
WorkBook workbook = WorkBook.Load("sales-data.xlsx");
WorkSheet sheet = workbook.GetWorkSheet("Sales");
// Read cells
foreach (var row in sheet.Rows)
{
foreach (var cell in row)
{
Console.Write($"{cell.Value}\t");
}
Console.WriteLine();
}
// Access specific cell
var totalSales = sheet["D10"].DoubleValue;
Console.WriteLine($"Total Sales: ${totalSales:F2}");
using IronXL;
// Load existing Excel file
WorkBook workbook = WorkBook.Load("sales-data.xlsx");
WorkSheet sheet = workbook.GetWorkSheet("Sales");
// Read cells
foreach (var row in sheet.Rows)
{
foreach (var cell in row)
{
Console.Write($"{cell.Value}\t");
}
Console.WriteLine();
}
// Access specific cell
var totalSales = sheet["D10"].DoubleValue;
Console.WriteLine($"Total Sales: ${totalSales:F2}");
Imports IronXL
' Load existing Excel file
Dim workbook As WorkBook = WorkBook.Load("sales-data.xlsx")
Dim sheet As WorkSheet = workbook.GetWorkSheet("Sales")
' Read cells
For Each row In sheet.Rows
For Each cell In row
Console.Write($"{cell.Value}" & vbTab)
Next
Console.WriteLine()
Next
' Access specific cell
Dim totalSales = sheet("D10").DoubleValue
Console.WriteLine($"Total Sales: ${totalSales:F2}")
Wynik konsoli

Optymalizacja alokacji tablic o zerowej długości w Visual Studio 2026 pomaga zapewnić efektywne wykorzystanie pamięci podczas odczytu dużych plików Excel.
Praca z zakresami i formatowaniem w programie Excel
IronXL obsługuje zaawansowane operacje w programie Excel, w tym zakresy, formatowanie i formuły:
using IronXL;
WorkBook workbook = WorkBook.Load(@"C:\Users\kyess\Desktop\Desktop\Code-Projects\Assets\financial_report.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Select a range
var range = sheet["A1:D1"];
range.Style.Font.Bold = true;
range.Style.Font.Height = 12;
range.Style.SetBackgroundColor("#0066CC");
range.Style.Font.SetColor("#FFFFFF");
for (int i = 0; i <= 3; i++)
{
sheet.AutoSizeColumn(i);
}
// Save changes
workbook.SaveAs("formatted-report.xlsx");
using IronXL;
WorkBook workbook = WorkBook.Load(@"C:\Users\kyess\Desktop\Desktop\Code-Projects\Assets\financial_report.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
// Select a range
var range = sheet["A1:D1"];
range.Style.Font.Bold = true;
range.Style.Font.Height = 12;
range.Style.SetBackgroundColor("#0066CC");
range.Style.Font.SetColor("#FFFFFF");
for (int i = 0; i <= 3; i++)
{
sheet.AutoSizeColumn(i);
}
// Save changes
workbook.SaveAs("formatted-report.xlsx");
Imports IronXL
Dim workbook As WorkBook = WorkBook.Load("C:\Users\kyess\Desktop\Desktop\Code-Projects\Assets\financial_report.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
' Select a range
Dim range = sheet("A1:D1")
range.Style.Font.Bold = True
range.Style.Font.Height = 12
range.Style.SetBackgroundColor("#0066CC")
range.Style.Font.SetColor("#FFFFFF")
For i As Integer = 0 To 3
sheet.AutoSizeColumn(i)
Next
' Save changes
workbook.SaveAs("formatted-report.xlsx")
Przykładowy wynik z formatowaniem

Integracja z funkcjami programu Visual Studio 2026
Wykorzystanie GitHub Copilot z bibliotekami Iron Software

Głęboka integracja GitHub Copilot w Visual Studio 2026 zapewnia inteligentne sugestie kodu podczas pracy z produktami Iron Software. Copilot może:
-
Generowanie kompletnego kodu renderującego IronPDF na podstawie opisów w języku naturalnym
-
Zaproponuj optymalne ustawienia OCR w oparciu o jakość obrazu
-
Zalecane typy BarCode i parametry kodowania
- Tworzenie formuł w Excelu i logiki przetwarzania danych
Wystarczy opisać, co chcesz osiągnąć, a Copilot wygeneruje odpowiedni kod przy użyciu bibliotek Iron Software. Obsługa edytora Markdown ułatwia również dokumentówanie kodu za pomocą przykładów.
Debugowanie aplikacji Iron Software
Ulepszone funkcje debugowania w Visual Studio 2026 znacznie poprawiają komfort pracy podczas przetwarzania dokumentów:
using IronPdf;
using System.Diagnostics;
public class PdfProcessor
{
public void ProcessDocument(string htmlContent, string outputPath)
{
// Visual Studio 2026 shows inline values here
var renderer = new ChromePdfRenderer();
// Inline if-statement debugging shows evaluation results
if (string.IsNullOrEmpty(htmlContent))
{
throw new ArgumentException("HTML content cannot be empty");
}
// Inline post-return values show the PDF object immediately
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Copilot can analyze unexpected results
var pageCount = pdf.PageCount;
Debug.WriteLine($"Generated PDF with {pageCount} pages");
pdf.SaveAs(outputPath);
}
}
using IronPdf;
using System.Diagnostics;
public class PdfProcessor
{
public void ProcessDocument(string htmlContent, string outputPath)
{
// Visual Studio 2026 shows inline values here
var renderer = new ChromePdfRenderer();
// Inline if-statement debugging shows evaluation results
if (string.IsNullOrEmpty(htmlContent))
{
throw new ArgumentException("HTML content cannot be empty");
}
// Inline post-return values show the PDF object immediately
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Copilot can analyze unexpected results
var pageCount = pdf.PageCount;
Debug.WriteLine($"Generated PDF with {pageCount} pages");
pdf.SaveAs(outputPath);
}
}
Imports IronPdf
Imports System.Diagnostics
Public Class PdfProcessor
Public Sub ProcessDocument(htmlContent As String, outputPath As String)
' Visual Studio 2026 shows inline values here
Dim renderer = New ChromePdfRenderer()
' Inline if-statement debugging shows evaluation results
If String.IsNullOrEmpty(htmlContent) Then
Throw New ArgumentException("HTML content cannot be empty")
End If
' Inline post-return values show the PDF object immediately
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
' Copilot can analyze unexpected results
Dim pageCount = pdf.PageCount
Debug.WriteLine($"Generated PDF with {pageCount} pages")
pdf.SaveAs(outputPath)
End Sub
End Class
Funkcje debugowania wbudowanego w połączeniu z analizą Copilot ułatwiają zrozumieniuiuiuiuie procesów przetwarzania dokumentów i szybką identyfikację problemów.
Profilowanie wydajności za pomocą oprogramowania Iron Software
Agent profiler copilot w Visual Studio 2026 może analizować wydajność podczas pracy z bibliotekami Iron Software:
using IronPdf;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
[MemoryDiagnoser]
public class PdfBenchmarks
{
private const string SampleHtml = "<html><body><h1>Test Document</h1></body></html>";
[Benchmark]
public void RenderSimplePdf()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(SampleHtml);
}
[Benchmark]
public void RenderComplexPdf()
{
var renderer = new ChromePdfRenderer();
var complexHtml = GenerateComplexHtml();
var pdf = renderer.RenderHtmlAsPdf(complexHtml);
}
private string GenerateComplexHtml()
{
// Generate HTML with tables, images, etc.
return "<html><body><table>...</table></body></html>";
}
}
partial class Program
{
static void Main(string[] args)
{
var summary = BenchmarkRunner.Run<PdfBenchmarks>();
}
}
using IronPdf;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
[MemoryDiagnoser]
public class PdfBenchmarks
{
private const string SampleHtml = "<html><body><h1>Test Document</h1></body></html>";
[Benchmark]
public void RenderSimplePdf()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(SampleHtml);
}
[Benchmark]
public void RenderComplexPdf()
{
var renderer = new ChromePdfRenderer();
var complexHtml = GenerateComplexHtml();
var pdf = renderer.RenderHtmlAsPdf(complexHtml);
}
private string GenerateComplexHtml()
{
// Generate HTML with tables, images, etc.
return "<html><body><table>...</table></body></html>";
}
}
partial class Program
{
static void Main(string[] args)
{
var summary = BenchmarkRunner.Run<PdfBenchmarks>();
}
}
Imports IronPdf
Imports BenchmarkDotNet.Attributes
Imports BenchmarkDotNet.Running
<MemoryDiagnoser>
Public Class PdfBenchmarks
Private Const SampleHtml As String = "<html><body><h1>Test Document</h1></body></html>"
<Benchmark>
Public Sub RenderSimplePdf()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(SampleHtml)
End Sub
<Benchmark>
Public Sub RenderComplexPdf()
Dim renderer = New ChromePdfRenderer()
Dim complexHtml = GenerateComplexHtml()
Dim pdf = renderer.RenderHtmlAsPdf(complexHtml)
End Sub
Private Function GenerateComplexHtml() As String
' Generate HTML with tables, images, etc.
Return "<html><body><table>...</table></body></html>"
End Function
End Class
Partial Class Program
Shared Sub Main(ByVal args As String())
Dim summary = BenchmarkRunner.Run(Of PdfBenchmarks)()
End Sub
End Class
Użyj szablonu projektu benchmarkdotnet w Visual Studio 2026 do tworzenia testów wydajnościowych i wykorzystaj profiler do identyfikacji możliwości optymalizacji.
Integracja usług w chmurze
Produkty Iron Software płynnie współpracują z usługami w chmurze wdrażanymi z poziomu Visual Studio 2026:
using Microsoft.Azure.Functions;
using IronPdf;
using IronOcr;
public class DocumentProcessor
{
[FunctionName("ConvertHtmlToPdf")]
public async Task<IActionResult> ConvertToPdf(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequest req)
{
string html = await new StreamReader(req.Body).ReadToEndAsync();
// Configure IronPDF for Azure
License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
return new FileContentResult(pdf.BinaryData, "application/pdf")
{
FileDownloadName = "document.pdf"
};
}
[FunctionName("ExtractTextFromImage")]
public async Task<IActionResult> ExtractText(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequest req)
{
var imageBytes = await ReadImageBytes(req);
License.LicenseKey = Environment.GetEnvironmentVariable("IRONOCR_LICENSE");
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
input.AddImage(imageBytes);
var result = ocr.Read(input);
return new OkObjectResult(new { text = result.Text });
}
}
}
using Microsoft.Azure.Functions;
using IronPdf;
using IronOcr;
public class DocumentProcessor
{
[FunctionName("ConvertHtmlToPdf")]
public async Task<IActionResult> ConvertToPdf(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequest req)
{
string html = await new StreamReader(req.Body).ReadToEndAsync();
// Configure IronPDF for Azure
License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
return new FileContentResult(pdf.BinaryData, "application/pdf")
{
FileDownloadName = "document.pdf"
};
}
[FunctionName("ExtractTextFromImage")]
public async Task<IActionResult> ExtractText(
[HttpTrigger(AuthorizationLevel.Function, "post")] HttpRequest req)
{
var imageBytes = await ReadImageBytes(req);
License.LicenseKey = Environment.GetEnvironmentVariable("IRONOCR_LICENSE");
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
input.AddImage(imageBytes);
var result = ocr.Read(input);
return new OkObjectResult(new { text = result.Text });
}
}
}
Imports Microsoft.Azure.Functions
Imports IronPdf
Imports IronOcr
Imports System.IO
Imports Microsoft.AspNetCore.Mvc
Imports Microsoft.AspNetCore.Http
Imports System.Threading.Tasks
Public Class DocumentProcessor
<FunctionName("ConvertHtmlToPdf")>
Public Async Function ConvertToPdf(
<HttpTrigger(AuthorizationLevel.Function, "post")> req As HttpRequest) As Task(Of IActionResult)
Dim html As String = Await New StreamReader(req.Body).ReadToEndAsync()
' Configure IronPDF for Azure
License.LicenseKey = Environment.GetEnvironmentVariable("IRONPDF_LICENSE")
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(html)
Return New FileContentResult(pdf.BinaryData, "application/pdf") With {
.FileDownloadName = "document.pdf"
}
End Function
<FunctionName("ExtractTextFromImage")>
Public Async Function ExtractText(
<HttpTrigger(AuthorizationLevel.Function, "post")> req As HttpRequest) As Task(Of IActionResult)
Dim imageBytes = Await ReadImageBytes(req)
License.LicenseKey = Environment.GetEnvironmentVariable("IRONOCR_LICENSE")
Dim ocr As New IronTesseract()
Using input As New OcrInput()
input.AddImage(imageBytes)
Dim result = ocr.Read(input)
Return New OkObjectResult(New With {.text = result.Text})
End Using
End Function
Private Async Function ReadImageBytes(req As HttpRequest) As Task(Of Byte())
Using memoryStream As New MemoryStream()
Await req.Body.CopyToAsync(memoryStream)
Return memoryStream.ToArray()
End Using
End Function
End Class
Rozszerzona obsługa usług w chmurze w Visual Studio 2026 sprawia, że wdrażanie aplikacji opartych na oprogramowaniu Iron Software w Azure jest proste.
Testowanie aplikacji Iron Software w Visual Studio 2026
Testy jednostkowe z pokryciem kodu
Funkcje pokrycia kodu w Visual Studio 2026 w wersjach Community i Professional umożliwiają dokładne testowanie integracji oprogramowania Iron Software:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using IronPdf;
using System.IO;
[TestClass]
public class PdfGenerationTests
{
[TestMethod]
public void TestSimpleHtmlToPdf()
{
// Arrange
var renderer = new ChromePdfRenderer();
var html = "<h1>Test</h1>";
// Act
var pdf = renderer.RenderHtmlAsPdf(html);
// Assert
Assert.IsNotNull(pdf);
Assert.IsTrue(pdf.PageCount > 0);
Assert.IsTrue(pdf.BinaryData.Length > 0);
}
[TestMethod]
public void TestPdfExtraction()
{
// Arrange
var html = "<html><body><p>Sample text for extraction</p></body></html>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Act
var extractedText = pdf.ExtractAllText();
// Assert
Assert.IsTrue(extractedText.Contains("Sample text"));
}
[TestMethod]
[DataRow("document1.html")]
[DataRow("document2.html")]
[DataRow("document3.html")]
public void TestBatchPdfGeneration(string filename)
{
// Arrange
var html = File.ReadAllText(filename);
var renderer = new ChromePdfRenderer();
// Act
var pdf = renderer.RenderHtmlAsPdf(html);
// Assert
Assert.IsNotNull(pdf);
Assert.IsTrue(pdf.PageCount > 0);
}
}
using Microsoft.VisualStudio.TestTools.UnitTesting;
using IronPdf;
using System.IO;
[TestClass]
public class PdfGenerationTests
{
[TestMethod]
public void TestSimpleHtmlToPdf()
{
// Arrange
var renderer = new ChromePdfRenderer();
var html = "<h1>Test</h1>";
// Act
var pdf = renderer.RenderHtmlAsPdf(html);
// Assert
Assert.IsNotNull(pdf);
Assert.IsTrue(pdf.PageCount > 0);
Assert.IsTrue(pdf.BinaryData.Length > 0);
}
[TestMethod]
public void TestPdfExtraction()
{
// Arrange
var html = "<html><body><p>Sample text for extraction</p></body></html>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Act
var extractedText = pdf.ExtractAllText();
// Assert
Assert.IsTrue(extractedText.Contains("Sample text"));
}
[TestMethod]
[DataRow("document1.html")]
[DataRow("document2.html")]
[DataRow("document3.html")]
public void TestBatchPdfGeneration(string filename)
{
// Arrange
var html = File.ReadAllText(filename);
var renderer = new ChromePdfRenderer();
// Act
var pdf = renderer.RenderHtmlAsPdf(html);
// Assert
Assert.IsNotNull(pdf);
Assert.IsTrue(pdf.PageCount > 0);
}
}
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports IronPdf
Imports System.IO
<TestClass>
Public Class PdfGenerationTests
<TestMethod>
Public Sub TestSimpleHtmlToPdf()
' Arrange
Dim renderer As New ChromePdfRenderer()
Dim html As String = "<h1>Test</h1>"
' Act
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Assert
Assert.IsNotNull(pdf)
Assert.IsTrue(pdf.PageCount > 0)
Assert.IsTrue(pdf.BinaryData.Length > 0)
End Sub
<TestMethod>
Public Sub TestPdfExtraction()
' Arrange
Dim html As String = "<html><body><p>Sample text for extraction</p></body></html>"
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Act
Dim extractedText As String = pdf.ExtractAllText()
' Assert
Assert.IsTrue(extractedText.Contains("Sample text"))
End Sub
<TestMethod>
<DataRow("document1.html")>
<DataRow("document2.html")>
<DataRow("document3.html")>
Public Sub TestBatchPdfGeneration(filename As String)
' Arrange
Dim html As String = File.ReadAllText(filename)
Dim renderer As New ChromePdfRenderer()
' Act
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Assert
Assert.IsNotNull(pdf)
Assert.IsTrue(pdf.PageCount > 0)
End Sub
End Class
Uruchom te testy za pomocą eksploratora testów i przeanalizuj wyniki w oknie wyników pokrycia kodu, aby zapewnić kompleksowe pokrycie testowe logiki przetwarzania dokumentów.
Testy integracyjne
W przypadku testów integracyjnych obejmujących wiele produktów Iron Software:
using Microsoft.VisualStudio.TestTools.UnitTesting;
using IronPdf;
using IronOcr;
using IronBarCode;
[TestClass]
public class DocumentWorkflowTests
{
[TestMethod]
public void TestCompleteDocumentWorkflow()
{
// Step 1: Generate PDF with barcode
var renderer = new ChromePdfRenderer();
var barcode = BarcodeWriter.CreateBarcode("DOC-12345", BarcodeEncoding.QRCode);
var html = $@"
<html>
<body>
<h1>Document #DOC-12345</h1>
<img src='{barcode.ToDataUrl()}' />
<p>This is a test document with a QR code.</p>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("test-document.pdf");
// Step 2: Convert PDF to image
pdf.RasterizeToImageFiles("test-page-*.png");
// Step 3: Read barcode from image
var barcodeResults = BarcodeReader.Read("test-page-1.png");
// Step 4: Verify barcode content
Assert.IsTrue(barcodeResults.Any());
Assert.AreEqual("DOC-12345", barcodeResults.First().Value);
// Step 5: OCR the document
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
input.AddImage("test-page-1.png");
var ocrResult = ocr.Read(input);
Assert.IsTrue(ocrResult.Text.Contains("Document"));
}
}
}
using Microsoft.VisualStudio.TestTools.UnitTesting;
using IronPdf;
using IronOcr;
using IronBarCode;
[TestClass]
public class DocumentWorkflowTests
{
[TestMethod]
public void TestCompleteDocumentWorkflow()
{
// Step 1: Generate PDF with barcode
var renderer = new ChromePdfRenderer();
var barcode = BarcodeWriter.CreateBarcode("DOC-12345", BarcodeEncoding.QRCode);
var html = $@"
<html>
<body>
<h1>Document #DOC-12345</h1>
<img src='{barcode.ToDataUrl()}' />
<p>This is a test document with a QR code.</p>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("test-document.pdf");
// Step 2: Convert PDF to image
pdf.RasterizeToImageFiles("test-page-*.png");
// Step 3: Read barcode from image
var barcodeResults = BarcodeReader.Read("test-page-1.png");
// Step 4: Verify barcode content
Assert.IsTrue(barcodeResults.Any());
Assert.AreEqual("DOC-12345", barcodeResults.First().Value);
// Step 5: OCR the document
var ocr = new IronTesseract();
using (var input = new OcrInput())
{
input.AddImage("test-page-1.png");
var ocrResult = ocr.Read(input);
Assert.IsTrue(ocrResult.Text.Contains("Document"));
}
}
}
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports IronPdf
Imports IronOcr
Imports IronBarCode
<TestClass>
Public Class DocumentWorkflowTests
<TestMethod>
Public Sub TestCompleteDocumentWorkflow()
' Step 1: Generate PDF with barcode
Dim renderer As New ChromePdfRenderer()
Dim barcode = BarcodeWriter.CreateBarcode("DOC-12345", BarcodeEncoding.QRCode)
Dim html As String = $"
<html>
<body>
<h1>Document #DOC-12345</h1>
<img src='{barcode.ToDataUrl()}' />
<p>This is a test document with a QR code.</p>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("test-document.pdf")
' Step 2: Convert PDF to image
pdf.RasterizeToImageFiles("test-page-*.png")
' Step 3: Read barcode from image
Dim barcodeResults = BarcodeReader.Read("test-page-1.png")
' Step 4: Verify barcode content
Assert.IsTrue(barcodeResults.Any())
Assert.AreEqual("DOC-12345", barcodeResults.First().Value)
' Step 5: OCR the document
Dim ocr As New IronTesseract()
Using input As New OcrInput()
input.AddImage("test-page-1.png")
Dim ocrResult = ocr.Read(input)
Assert.IsTrue(ocrResult.Text.Contains("Document"))
End Using
End Sub
End Class
Funkcja niestandardowych argumentów w Visual Studio 2026 pozwala na przekazywanie różnych konfiguracji testowych podczas uruchamiania testów integracyjnych.
Najlepsze praktyki dotyczące korzystania z oprogramowania Iron Software w Visual Studio 2026
Szablony i struktura projektu
Podczas rozpoczynania nowego projektu w Visual Studio 2026, który wykorzystuje produkty Iron Software:
-
Utwórz projekt, korzystając z odpowiedniego szablonu projektu .NET 10

-
Zainstaluj wymagańe pakiety NuGet firmy Iron Software

-
Skonfiguruj klucze licencyjne w ustawieniach aplikacji
-
Skonfiguruj wstrzykiwanie zależności dla usług Iron Software
- Wdrożenie odpowiedniej obsługi błędów i rejestrowania
using Microsoft.Extensions.DependencyInjection;
using IronPdf;
using IronOcr;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// Configure IronPDF
services.AddSingleton<ChromePdfRenderer>();
// Configure IronOCR
services.AddSingleton<IronTesseract>();
// Add other services
services.AddLogging();
}
}
using Microsoft.Extensions.DependencyInjection;
using IronPdf;
using IronOcr;
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
// Configure IronPDF
services.AddSingleton<ChromePdfRenderer>();
// Configure IronOCR
services.AddSingleton<IronTesseract>();
// Add other services
services.AddLogging();
}
}
Imports Microsoft.Extensions.DependencyInjection
Imports IronPdf
Imports IronOcr
Public Class Startup
Public Sub ConfigureServices(services As IServiceCollection)
' Configure IronPDF
services.AddSingleton(Of ChromePdfRenderer)()
' Configure IronOCR
services.AddSingleton(Of IronTesseract)()
' Add other services
services.AddLogging()
End Sub
End Class
Wyklucz pliki z wyszukiwania

Użyj funkcji wykluczania plików w Visual Studio 2026, aby uniknąć przeszukiwania wygenerowanych plików PDF lub dużych plików dokumentów:
-
Przejdź do Narzędzia → Opcje → Środowisko → Wyszukiwanie
-
Dodaj wzorce, takie jak PDF, .xlsx lub output/**/*, aby wykluczyć te pliki z wyników wyszukiwania
- Poprawia to wydajność wyszukiwania i ogranicza zakłócenia podczas poszukiwania kodu
Procesy ciągłej integracji
Wykorzystaj ulepszone procesy ciągłej integracji w Visual Studio 2026 podczas wdrażania aplikacji Iron Software:
name: Build and Test
on: [push, pull_request]
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Setup .NET 10
uses: actions/setup-dotnet@v1
with:
dotnet-version: '10.0.x'
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release
- name: Run unit tests
run: dotnet test --configuration Release --logger trunit
- name: Run code coverage
run: dotnet test --collect:"XPlat Code Coverage"
name: Build and Test
on: [push, pull_request]
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Setup .NET 10
uses: actions/setup-dotnet@v1
with:
dotnet-version: '10.0.x'
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release
- name: Run unit tests
run: dotnet test --configuration Release --logger trunit
- name: Run code coverage
run: dotnet test --collect:"XPlat Code Coverage"
Natywna obsługa GitHub Actions w Visual Studio 2026 sprawia, że konfiguracja potoków CI/CD dla projektów Iron Software jest prosta.
Zasoby społecznościowe i opinie osób trzecich
Społeczność programistów aktywnie dyskutuje na temat możliwości programu Visual Studio 2026. Według relacji InfoWorld, Visual Studio 2026 jest opisywane jako "natywne dla sztucznej inteligencji inteligentne środowisko programistyczne", które "oferuje poprawę wydajności i komfortu użytkowania, a także oparte na sztucznej inteligencji debugowanie, profilowanie i wiele więcej".
Inna opinia z Techzine Global podkreśla, że "Visual Studio 2026 ładuje się teraz znacznie szybciej niż jego poprzednik". W przypadku dużych projektów liczba zawieszeń została zmniejszona o ponad 50 procent. Ta poprawiona stabilność jest szczególnie korzystna podczas pracy z bibliotekami do przetwarzania dokumentów, które mogą obsługiwać duże pliki.
Dla programistów zainteresowanych szerszym kontekstem możliwości Visual Studio 2026, wykraczającym poza integrację z Iron Software, dyskusje społecznościowe na platformach takich jak Medium i serwisach z wiadomościami technologicznymi dostarczają cennych informacji na temat rzeczywistych doświadczeń użytkowników i najlepszych praktyk.
Płynna migracja z Visual Studio 2022

Jedną z głównych zalet programu Visual Studio 2026 jest jego kompatybilność z istniejącymi projektami. Jak zaznaczono w informacjach o wydaniu, Visual Studio 2026 jest kompatybilne z projektami i rozszerzeniami z Visual Studio 2022, co oznacza, że nie są wymagańe żadne czynności migracyjne. Oznacza to, że:
-
Istniejące projekty Iron Software otwierają się natychmiast bez modyfikacji
-
Ponad 4000 rozszerzeń z VS 2022 działa w VS 2026
-
Instalacja równoległa umożliwia stopniowe przejście
- Środowisko IDE jest oddzielone od narzędzi do kompilacji, co zapobiega zakłóceniom w łańcuchu narzędzi
Programiści mogą bezpiecznie zainstalować Visual Studio 2026 obok istniejącej instalacji Visual Studio 2022 i bez ryzyka ocenić, jak produkty Iron Software sprawdzają się w nowym środowisku.
Wskazówki dotyczące optymalizacji wydajności
Zarządzanie pamięcią
Podczas pracy z dużymi dokumentami warto rozważyć następujące strategie optymalizacji:
using IronPdf;
using System;
public class OptimizedPdfProcessor
{
public void ProcessLargeDocument(string htmlPath)
{
// Use using statements for proper disposal
using var renderer = new ChromePdfRenderer();
// Configure for memory efficiency
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// Process in chunks if possible
var html = File.ReadAllText(htmlPath);
using var pdf = renderer.RenderHtmlAsPdf(html);
// Save immediately to free memory
pdf.SaveAs("output.pdf");
// PDF is disposed automatically
}
}
using IronPdf;
using System;
public class OptimizedPdfProcessor
{
public void ProcessLargeDocument(string htmlPath)
{
// Use using statements for proper disposal
using var renderer = new ChromePdfRenderer();
// Configure for memory efficiency
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// Process in chunks if possible
var html = File.ReadAllText(htmlPath);
using var pdf = renderer.RenderHtmlAsPdf(html);
// Save immediately to free memory
pdf.SaveAs("output.pdf");
// PDF is disposed automatically
}
}
Imports IronPdf
Imports System
Imports System.IO
Public Class OptimizedPdfProcessor
Public Sub ProcessLargeDocument(htmlPath As String)
' Use Using blocks for proper disposal
Using renderer As New ChromePdfRenderer()
' Configure for memory efficiency
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
' Process in chunks if possible
Dim html As String = File.ReadAllText(htmlPath)
Using pdf = renderer.RenderHtmlAsPdf(html)
' Save immediately to free memory
pdf.SaveAs("output.pdf")
' PDF is disposed automatically
End Using
End Using
End Sub
End Class
Narzędzie do alokacji pamięci w Visual Studio 2026 pozwala zidentyfikować nieefektywne wykorzystanie pamięci w kodzie przetwarzającym dokumenty.
Przetwarzanie wsadowe
W celu przetwarzania wielu dokumentów należy wdrożyć przetwarzanie wsadowe z odpowiednim zarządzaniem zasobami:
using IronPdf;
using System.Collections.Concurrent;
using System.Threading.Tasks;
public class BatchProcessor
{
public async Task ProcessDocumentsBatch(IEnumerable<string> filePaths)
{
var options = new ParallelOptions
{
MaxDegreeOfParallelism = Environment.ProcessorCount
};
await Parallel.ForEachAsync(filePaths, options, async (path, ct) =>
{
using var renderer = new ChromePdfRenderer();
var html = await File.ReadAllTextAsync(path, ct);
var pdf = renderer.RenderHtmlAsPdf(html);
var outputPath = Path.ChangeExtension(path, ".pdf");
pdf.SaveAs(outputPath);
});
}
}
using IronPdf;
using System.Collections.Concurrent;
using System.Threading.Tasks;
public class BatchProcessor
{
public async Task ProcessDocumentsBatch(IEnumerable<string> filePaths)
{
var options = new ParallelOptions
{
MaxDegreeOfParallelism = Environment.ProcessorCount
};
await Parallel.ForEachAsync(filePaths, options, async (path, ct) =>
{
using var renderer = new ChromePdfRenderer();
var html = await File.ReadAllTextAsync(path, ct);
var pdf = renderer.RenderHtmlAsPdf(html);
var outputPath = Path.ChangeExtension(path, ".pdf");
pdf.SaveAs(outputPath);
});
}
}
Imports IronPdf
Imports System.Collections.Concurrent
Imports System.Threading.Tasks
Public Class BatchProcessor
Public Async Function ProcessDocumentsBatch(filePaths As IEnumerable(Of String)) As Task
Dim options As New ParallelOptions With {
.MaxDegreeOfParallelism = Environment.ProcessorCount
}
Await Parallel.ForEachAsync(filePaths, options, Async Function(path, ct)
Using renderer As New ChromePdfRenderer()
Dim html As String = Await File.ReadAllTextAsync(path, ct)
Dim pdf = renderer.RenderHtmlAsPdf(html)
Dim outputPath As String = Path.ChangeExtension(path, ".pdf")
pdf.SaveAs(outputPath)
End Using
End Function)
End Function
End Class
Wnioski
Visual Studio 2026 stanowi znaczący krok naprzód w dziedzinie narzędzi programistycznych .NET, oferując funkcje programowania oparte na sztucznej inteligencji, zwiększoną wydajność oraz odświeżony interfejs dostosowany do nowoczesnych zasad projektowania. Najnowsza wersja zapewnia wyjątkowe środowisko do pracy z kompleksowym zestawem bibliotek do przetwarzania dokumentów firmy Iron Software.
Wszystkie produkty Iron Software — w tym IronPDF, IronOCR, IronBarcode i IronXL — działają płynnie i wydajnie w Visual Studio 2026. Dzięki pełnej obsłudze .NET 10 i płynnej kompatybilności z najnowszymi funkcjami języka C# 14 programiści mogą z pewnością tworzyć solidne aplikacje do przetwarzania dokumentów, korzystając z tych potężnych bibliotek w najnowszym środowisku IDE firmy Microsoft.
Połączenie ulepszonych możliwości debugowania w Visual Studio 2026, integracji z GitHub Copilot, ulepszonych narzędzi do pokrycia kodu oraz funkcji profilowania wydajności tworzy idealne środowisko programistyczne do wdrażania zaawansowanych procesów pracy z dokumentami. Niezależnie od tego, czy generujesz pliki PDF z HTML, wyodrębniasz tekst z obrazów za pomocą OCR, odczytujesz i zapisujesz BarCodes, czy też przetwarzasz arkusze kalkulacyjne Excel, produkty Iron Software płynnie integrują się z nowymi funkcjami i możliwościami Visual Studio 2026.
Zwiększona wydajność, obejmująca szybsze ładowanie rozwiązań, skrócony czas kompilacji oraz lepsze zarządzanie pamięcią, gwarantuje programistom wydajną pracę nawet w przypadku dużych projektów wymagających intensywnego przetwarzania dokumentów. Wersje Community i Professional zawierają teraz analizę pokrycia kodu, co demokratyzuje dostęp do niezbędnych narzędzi testowych, które pomagają zapewnić jakość aplikacji korzystających z bibliotek Iron Software.
Dla programistów pragnących wykorzystać najnowsze osiągnięcia zarówno w zakresie technologii IDE, jak i możliwości przetwarzania dokumentów, połączenie Visual Studio 2026 i produktów Iron Software oferuje potężne, nowoczesne środowisko programistyczne. Płynna integracja, kompleksowa obsługa .NET 10 oraz ulepszone funkcje zwiększające produktywność sprawiają, że jest to optymalny wybór do tworzenia aplikacji .NET nowej generacji, które wymagają zaawansowanych możliwości obsługi dokumentów.
Ponieważ zarówno Visual Studio 2026, jak i Iron Software nieustannie ewoluują dzięki automatycznym comiesięcznym aktualizacjom i regularnym ulepszeniom funkcji, programiści mogą spodziewać się coraz bardziej dopracowanego i wydajnego środowiska programistycznego. Przyszłość przetwarzania dokumentów w środowisku .NET już nadeszła i działa znakomicie w programie Visual Studio 2026.
Aby uzyskać więcej informacji na temat produktów Iron Software i ich możliwości, odwiedź stronę ironsoftware.com lub zapoznaj się z obszerną dokumentacją i samouczkami dostępnymi dla każdego produktu.