IRONSOFTWAREHOME

AnyBitmap to System.Drawing.Bitmap in .NET Framework

Curtis Chau
Curtis Chau
Updated: 29 czerwca 2026

W aplikacji desktopowej .NET Framework, takiej jak WinForms, przypisywanie IronBarcode AnyBitmap bezposrednio do System.Drawing.Image lub Bitmap nie powodzi sie podczas kompilacji. Czestym przypadkiem jest wiazanie wygenerowanego kodu kreskowego do PictureBox, ktory akceptuje tylko obiekty System.Drawing.Image.

Cannot implicitly convert type 'IronSoftware.Drawing.AnyBitmap' to 'System.Drawing.Image'
Text

Kod poniżej wywołuje błąd:

var myBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeWriterEncoding.EAN8);
// These lines cause compile-time errors
Image myBarcodeImage = myBarcode.Image;
Bitmap myBarcodeBitmap = myBarcode.ToBitmap();
C#

Zarowno BarcodeWriter.Image jak i .ToBitmap() zwracaja IronSoftware.Drawing.AnyBitmap. Ten typ wspiera konwersje niejawna do System.Drawing.Bitmap lub Image, ale tylko w .NET 6, .NET 7, .NET 8 lub wyzszych. Na .NET Framework operatory pośrednie i wewnętrzne mostki typów nie zawsze rozwiązują się, zwłaszcza gdy typy pochodzą z różnych bibliotek lub warstw zgodności.

Rozwiązanie

Option 1: Install System.Drawing.Common

Dodaj pakiet NuGet System.Drawing.Common, aby operatory konwersji rozwiazywaly sie do spójnej biblioteki rysunkowej.

.NET CLI:

dotnet add package System.Drawing.Common
SHELL

Konsola Zarządzania Pakietami:

Install-Package System.Drawing.Common
SHELL

SDK-style .csproj:

<PackageReference Include="System.Drawing.Common" Version="8.0.0" />
XML

Opcja 2: Konwersja przez strumień

Jesli nie chcesz zmieniac referencji pakietow, konwertuj bitmape za pomoca strumienia kompatybilnego z GDI i przekaz wynik do PictureBox:

var myBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeWriterEncoding.EAN8);
myBarcode.ResizeTo(400, 100); // Optional resizing
using (var ms = myBarcode.ToWindowsBitmapStream())
{
    pictureBox1.Image = Image.FromStream(ms); // Works in .NET Framework
}
C#

ToWindowsBitmapStream() zapisuje AnyBitmap do formatu obrazu kompatybilnego z GDI, a Image.FromStream analizuje ten strumien do natywnego System.Drawing.Image.

Zwróć uwagę: Możesz również serializować AnyBitmap za pomocą ToStream(), jeśli potrzebujesz ogólnego strumienia, a nie specyficznego dla Windows.
Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

...
Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 2,422,100Wersja:2026.9właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.9

PM > Install-Package BarCode
nuget.org/packages/BarCode/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz Przeglądaj i wyszukaj "IronBarCode"
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.9

  1. Pobierz i rozpakuj IronBarCode do lokalizacji, takiej jak ~/Libs w katalogu Twojego rozwiązania
  2. W Eksploratorze Rozwiązań Visual Studio kliknij prawym przyciskiem Referencje. Wybierz Przeglądaj, "IronBarCode.dll"

Licencje od $999

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta