Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Auszug
hiddentrue

Nuclos Barcode Report: barcode4j, barbecue, Image-Objekt, EAN13, Prüfziffer, jasperreports-6.17.0.jar, Extensions.

globe with meridians Sprache: Deutsch · English

hammer and wrench Barcode einbinden

Barcodes in Reports – einfach über die Palette oder flexibel über ein Image-Objekt (EAN13-Beispiel).

Status
colourPurple
titleHow-to
Status
colourBlue
titleAnwendungsentwickler
Status
colourGreen
titleStand: Jul 2026
Status
colourGrey
titlegilt fuer Nuclos 4.2026.x

Panel
bgColor#F4F5F7

Auf dieser Seite

Inhalt
maxLevel

...

Es existieren mehrere Möglichkeiten Barcodes mit Jasperreports zu verwenden. In der Palette stehen unter der Komponente Barcode zwei Bibliotheken zur Verfügung barcode4j und barbecue-1.5-beta1.

 Einbinden eines Barcodes in einen Report

1. Barcodekomponente in der Palette auswählen und auf das Arbeitsblatt ziehen

2. Auswählen der gewünschten Barcode Bibliothek und eines Barcode Typen

3. Bestätigen per Klick auf Finish

2
minLevel2

Barcodes in JasperReports

Für Barcodes stehen in der Palette unter Barcode zwei Bibliotheken bereit: barcode4j und barbecue.

Einfache Einbindung

  1. Barcode-Komponente aus der Palette auf das Arbeitsblatt ziehen.
  2. Bibliothek und Barcode-Typ wählen, mit Finish bestätigen.
  3. In den Eigenschaften den Wert/die Zeichenfolge eintragen (manche Typen akzeptieren nur eine feste Länge).
Image Added

Barcode-Komponente hinzufügen.

Einbindung über das Image-Objekt

Für mehr Kontrolle (z.​B. Schriftart/-größe des Texts unter dem Barcode) bindest du den Barcode über ein Image-Objekt ein. Dazu ein Java-Library-Projekt mit einer Klasse anlegen und dem Klassenpfad der integrierten jasperreports

Image Removed

In den Eigenschaften des Barcode-Feldes wird der Wert oder die Zeichenfolge, die der Barcode repräsentieren soll, eingegeben. Es gibt Barcodes die Zeichenketten in beliebiger Länge repräsentieren und andere die nur eine bestimmte Anzahl Zeichen akzeptieren.

Image Removed

Barcode einbinden über das Image-Objekt

Die vorhergehende Methode ist die einfachste zum Einbinden eines Barcodes in ein Formular. Sollten dennoch Anforderungen entstehen, wie z.B. das Ändern der Schriftart und Größe des Textes unterhalb des Barcodes, kann der Barcode über das Image-Objekt eingebunden werden. In folgenden Beispiel wird davon ausgegangen, dass ein 13-stelliger Barcode übergeben wird, für welchen die Schriftart und Größe des Textes unterhalb geändert werden.

 Dafür wird ein Java-Library Project mit einer Klasse in der folgenden Struktur angelegt:

...

-6.17.0.jar

...

Image Removed

Im Formular-Designer wird das erwähnte Image-Element aus der Palette auf dem Arbeitsblatt platziert und die entsprechenden Eigenschaften wie im Bild links gesetzt.

      •                  Image Expression = org.barcodeself.EAN13.createEANdreiZehn("12-stellig")
      •                  Expression Class = java.awt.Image

 

 

 

 

 

 

 

 

Barcodes in Nuclos

In Jaspersoft Studio können beide Barcode Varianten ohne Weiteres benutzt werden. Um sie in Nuclos zu benutzen, müssen die benötigten Abhängigkeiten hinzufügen. In folgendem werden die benötigten Abhängigkeiten für Barbecue und Barcode4J aufgelistet. 

Barbecue

Barcode4J

Wie Sie diese Extensions genau zu Nuclos hinzufügen erfahren Sie in dem Kapitel Jasper Extensions in Nuclos.

hinzufügen. Beispiel (EAN13, 13-stellig):

Codeblock
languagejava

...

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.barcodeself;
import java.awt.Font;
import net.sourceforge.barbecue.Barcode;
import net.sourceforge.barbecue.BarcodeException;
import net.sourceforge.barbecue.BarcodeFactory;
import net.sourceforge.barbecue.BarcodeImageHandler;
import net.sourceforge.barbecue.output.OutputException;
/**
 *
 * @author rufus
 */
public class EAN13 {
    public static java.awt.Image createEANdreiZehn(String c) throws OutputException, BarcodeException{
       if(c.isEmpty() || c.equals("")|| c.length() != 13){
           c = "000000000000";
       }
       else{
           c = c.substring(0, 12);
       }
       Barcode b = BarcodeFactory.createEAN13(c);
       Font f = new Font("SanSerif", Font.BOLD, 12);
       b.setFont(f);
       return BarcodeImageHandler.getImage(b);
    }
}

Im Designer ein Image-Element platzieren und setzen:

Codeblock
Image Expression = org.barcodeself.EAN13.createEANdreiZehn("12-stellig")
Expression Class = java.awt.Image

EAN13-Hinweis

Der

...

EAN13 hat 13 Ziffern, wobei die letzte eine Prüfziffer ist und bei der Generierung

...

angehängt wird – dem Generator dürfen also nur 12 Ziffern übergeben werden.

...

Ein extern erzeugter EAN13 wird ggf. schon in der Datenquelle gekürzt (Postgres: substring(ap."strean" from 1 for 12)).

Image Added

Barcode im Report.

Barcodes in Nuclos

Für die Nutzung in Nuclos die Abhängigkeiten als Extensions übertragen:

BibliothekAbhängigkeiten
Barbecuebarbecue-1.5-beta1, jdom-1.0
Barcode4Jbarcode4j-2.1, zxing-core-3.4.0

Verwandte Seiten

printer Arbeiten mit Jasper Studio


Überblick.

Öffnen →

clipboard QR-Codes im Reporting nutzen


QR-Codes.

Öffnen →

)"strean",' bei Postgres-Sql.Image Removed