Wygeneruj kod kreskowy z logo za pomocą C#.

Powszechnie używamy kodów kreskowych do przedstawiania zakodowanych danych lub informacji o produkcie lub firmie w formie do odczytu maszynowego. Zwykle używamy kodów kreskowych z etykietami tekstowymi. Jednak kody kreskowe z logo firmy lub obrazami możemy również generować programowo w aplikacjach .NET. W tym artykule dowiemy się, jak wygenerować kod kreskowy z logo za pomocą C#.

Artykuł obejmie następujące tematy:

Do generowania kodów kreskowych z logo lub obrazami będziemy używać API Aspose.BarCode for .NET. Pozwala nam generować i rozpoznawać szeroką gamę [rodzajów kodów kreskowych] 1D i 2D]2. Pobierz bibliotekę DLL interfejsu API lub zainstaluj ją za pomocą NuGet.

PM> Install-Package Aspose.BarCode

Wygeneruj kod kreskowy z logo w C#

Możemy wygenerować kod kreskowy z logo lub obrazem, wykonując poniższe czynności:

  1. Najpierw utwórz instancję klasy BarcodeGenerator z EncodeType i tekstem do zakodowania jako argumentami.
  2. Opcjonalnie ustaw wartość rozmiaru kodu kreskowego w pikselach.
  3. Następnie wygeneruj obraz kodu kreskowego za pomocą metody GenerateBarCodeImage() i zapisz go w Bitmapie.
  4. Następnie załaduj obraz logo jako Bitmap.
  5. Następnie utwórz nowy pusty obraz bitmapowy z wysokością logo i wygenerowanym obrazem kodu kreskowego.
  6. Następnie zainicjuj obiekt klasy Graphics przy użyciu metody FromImage(). Jako argument przyjmuje pusty obiekt mapy bitowej.
  7. Następnie wyczyść płótno za pomocą metody Clear().
  8. Teraz wywołaj metodę DrawImage(), aby narysować obraz kodu kreskowego na kanwie.
  9. Następnie ponownie wywołaj metodę DrawImage(), aby narysować obraz logo na kanwie.
  10. Na koniec zapisz dane wyjściowe przy użyciu metody Image.Save(). Przyjmuje ścieżkę pliku wyjściowego jako argument.

Poniższy przykład kodu demonstruje, jak wygenerować kod kreskowy z obrazem logo przy użyciu języka C#.

// Ten przykład kodu pokazuje, jak wygenerować kod kreskowy z obrazem zamiast tekstu kodu.
// Utwórz instancję klasy BarcodeGenerator
// Ustaw symbolikę kodu kreskowego 
// Ustaw tekst kodu kreskowego
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.EAN13, "1234567890");

// Ustaw wartość rozmiaru kodu QR w pikselach
generator.Parameters.Barcode.XDimension.Pixels = 10;

// Wygeneruj obraz kodu kreskowego i zapisz go w mapie bitowej
Bitmap barcode = generator.GenerateBarCodeImage();

// Załaduj logo lub inny obraz jako bitmapę
Bitmap picture = (Bitmap)Image.FromFile(@"D:\Files\BarCode\aspose-logo.png");

// Utwórz nowy pusty obraz z nową obliczoną wysokością i szerokością
Bitmap output = new Bitmap(Math.Max(barcode.Width, picture.Width), barcode.Height + picture.Height);

// Pobierz obiekt Graphics
using (Graphics g = Graphics.FromImage(output))
{
    // Wyczyść płótno 
    g.Clear(Color.White);

    // Narysuj główny obraz (obraz kodu kreskowego) na płótnie
    g.DrawImage(picture, new PointF(30, 0));

    // Narysuj drugi obraz (obraz logo) na płótnie wewnątrz obrazu kodu kreskowego
    g.DrawImage(barcode, new PointF(0, picture.Height));
}

// Zapisz obraz wyjściowy
output.Save(@"D:\Files\BarCode\output.jpg");

Wygeneruj kod QR z logo za pomocą C#

Podobnie możemy również wygenerować kod QR z logo lub obrazem, wykonując czynności wspomniane wcześniej. Jednak w pierwszym kroku musimy ustawić EncodeType jako QR.

Poniższy przykład kodu demonstruje, jak wygenerować kod QR z obrazem logo przy użyciu języka C#.

// Ten przykład kodu pokazuje, jak wygenerować kod kreskowy z obrazem zamiast tekstu kodu.
// Utwórz instancję klasy BarcodeGenerator
// Ustaw symbolikę kodu kreskowego 
// Ustaw tekst kodu kreskowego
BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "1234567890");

// Ustaw wartość rozmiaru kodu QR w pikselach
generator.Parameters.Barcode.XDimension.Pixels = 10

// Wygeneruj obraz kodu kreskowego i zapisz go w mapie bitowej
Bitmap barcode = generator.GenerateBarCodeImage();

// Załaduj logo lub inny obraz jako bitmapę
Bitmap picture = (Bitmap)Image.FromFile(@"D:\Files\BarCode\logo.png");

// Utwórz nowy pusty obraz z nową obliczoną wysokością i szerokością
Bitmap output = new Bitmap(Math.Max(barcode.Width, picture.Width), barcode.Height + picture.Height);

// Pobierz obiekt Graphics
using (Graphics g = Graphics.FromImage(output))
{
    // Wyczyść płótno 
    g.Clear(Color.White);

    // Narysuj główny obraz (obraz kodu kreskowego) na płótnie
    g.DrawImage(picture, new PointF(30, 0));

    // Narysuj drugi obraz (obraz logo) na płótnie wewnątrz obrazu kodu kreskowego
    g.DrawImage(barcode, new PointF(0, picture.Height));
}

// Zapisz obraz wyjściowy
output.Save(@"D:\Files\BarCode\qr_output.jpg");

Uzyskaj bezpłatną licencję

Możesz uzyskać bezpłatną tymczasową licencję, aby wypróbować bibliotekę bez ograniczeń ewaluacyjnych.

Wniosek

W tym artykule dowiedzieliśmy się, jak wygenerować kod kreskowy z obrazem logo. Widzieliśmy również, jak programowo wygenerować kod QR z obrazem. Poza tym możesz dowiedzieć się więcej o Aspose.BarCode for .NET API korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.

Zobacz też