logo
small logo
  • Produkty
  • Zamów
  • Wsparcie techniczne
  • About
  • Customer panel Wsparcie techniczne
    • en
    • de
    • JP
    • ZH
  • Glówna strona
  • /
  • Articles
  • /
  • Jak utworzyć kod kreskowy Code-128 (A, B, C) w Twojej aplikacji?
  • W jaki sposób generować kod kreskowy ITF (przeplatany, przemysłowy, macierzowy) w środowisku Delphi / Lazarus / C ++ Builder

    11 listopada 2020

    Trochę teorii dotyczącej kodów kreskowych Trudno wyobrazić sobie dzisiaj nasze życie bez kodów kreskowych, szczególnie teraz,

    read more
  • Tworzenie kodu kreskowego CODE 39 i rozszerzonego CODE 39 w środowisku Delphi / Lazarus

    23 października 2020

    CODE 39 jest kodem kreskowym opracowanym przez Intermec Corporation w 1975 roku. Kod kreskowy może

    read more
  • Jak utworzyć plik PDF z Delphi / C ++ Builder / Lazarus

    14 maja 2020

    Dość często potrzebujesz uzyskać dokument PDF z aplikacji Pascal - albo Delphi lub Lazarus.Zazwyczaj zaleca

    read more
  • Instalowanie Fastreport w Lazarus

    17 marca 2021

    W ramach programu edukacji akademickiej postanowiliśmy stworzyć kilka artykułów wsparcia dla studentów. Jeśli tworzysz oprogramowanie biznesowe

    read more
  • Praca z wykresami i wykresami w FastReport VCL

    22 marca 2021

    Nadal publikujemy artykuły pomocnicze dla studentów w ramach programu edukacyjnego Akademii. Każdy programista w pewnym

    read more

Jak utworzyć kod kreskowy Code-128 (A, B, C) w Twojej aplikacji?

22 grudnia 2021

Code-128

CODE 128 jest kodem kreskowym opracowanym przez Computer Identics Corporation (U.S.A.) w 1981 roku. CODE 128 może odwzorowywać wszystkie 128 znaków kodu ASCII (cyfry, duże/małe litery, symbole i kody sterujące). Z uwagi na to, że może on przedstawiać wszystkie znaki (z wyjątkiem japońskich kanji, hiragana i katakana), które mogą być używane za pomocą klawiatury komputerowej, jest to kod kreskowy przyjazny dla komputera.


Kod kreskowy Code-128 zawiera 107 znaków, z czego 103 to znaki danych, 3 znaki początku i 1 znak zakończenia. Aby zakodować wszystkie 128 znaków ASCII, istnieją trzy zestawy znaków kodu kreskowego Code128 - A, B i C, które mogą być użyte w jednym kodzie kreskowym.

  • 128 A - znaki w formacie ASCII od 00 do 95 (cyfry od "0" do "9", litery od "A" do "Z") oraz znaki specjalne;
  • 128 B - znaki w formacie ASCII od 32 do 127 (cyfry od "0" do "9", litery od "A" do "Z" oraz od "a" do "z"), a także znaki specjalne;
  • 128 C - znaki ASCII od 00 do 99 (tylko dla kodu numerycznego).

Wymagania techniczne dotyczące symboliki kodu kreskowego Code-128, wskaźników symboliki, kodowania znaków danych, rozmiarów, algorytmów dekodowania, parametrów aplikacji, ciągów prefiksów i identyfikatorów symboliki są regulowane na całym świecie przez normę ISO/IEC 15417: 2007 “Information technology - Automatic identification and data capture techniques - Code 128 bar code symbology specification". 

Podstawowy skład jest następujący:

1) Kod startowy
2) Cyfra kontrolna (modulus 103)
3) Kod stop

Podstawowy skład kodu 128

Struktura kodu Cod-128

Struktura kodu kreskowego Code128 jest dość prosta. Kod kreskowy składa się z 6 stref:

- Białe pole;
- Symbol startu (Start);
- Zakodowane informacje;
- Symbol kontrolny (cyfra kontrolna);
- Symbol stopu;
- Białe pole.

Symbole kodów kreskowych Code-128 składają się z 3 pasków i 3 odstępów (łącznie 6 elementów). Paski i spacje mają szerokość od 1 do 4 moduli (1 modul = 0,33 mm). Szerokość znaku wynosi 11 modułów. Symbol stopu składa się z trzynastu modułów i ma 4 kreski i 3 spacje.

Przy okazji, "Modulus 103" jest używany w tym kodzie kreskowym jako cyfra kontrolna. Zgodnie z tabelą symboli kodów kreskowych Code-128, każdemu znakowi przypisana jest odpowiednia wartość. Następnie, dla każdego znaku, z wyjątkiem "Stop" i znaku kontrolnego, przypisywany jest współczynnik wagowy 1, 2, 3, ..., n. W tym przypadku, symbolowi "Start" i pierwszemu znakowi po nim następującemu przypisany jest współczynnik wagowy równy jeden. Cyfra kontrolna jest obliczana jako suma iloczynów współczynników wagowych przez odpowiadające im wartości modulus 103. Cyfra kontrolna znajduje się pomiędzy ostatnim symbolem danych a symbolem "Stop".

Kod-128 może zmieniać typ kodowania w jednym kodzie kreskowym. Poniższy rysunek przedstawia przejście z Code-C na Code-A.

 

1] Zacznij od CODE-C
2] Zmiana na CODE-A

Przejście z Code-C do Code-A

Gdy CODE-C jest używany jako znak startowy, jeden wzór paska może reprezentować 2 cyfry, jest to tak zwana "kompresja podwójnej gęstości". Pozwala to na zwiększenie gęstości danych. Powyższy przykład jest właśnie takim przypadkiem.

Jeśli kod kreskowy składa się z 12 lub więcej cyfr, CODE 128 ma mniejszy rozmiar niż ITF i EAN- 128.

Porównanie różnych kodów kreskowych

Ponieważ CODE 128 wykorzystuje 4 rodzaje wielkości pasków, wymagane są drukarki o wysokiej jakości druku. CODE 128 nie nadaje się do drukowania za pomocą drukarek igłowych i drukarek atramentowych FA oraz do druku fleksograficznego na tekturach falistych.

Zastosowania

CODE 128 jest używany w następujących branżach:

- Przemysł odzieżowy USA.
- Przemysł przetwórstwa spożywczego w USA.
- Przemysł leków i sprzętu medycznego w USA.
- Przemysł spożywczy w Australii i Nowej Zelandii.
- Europejski przemysł leków i instrumentów medycznych.

 

Opakowanie jednostkowe Opakowania transportowe Opakowania logistyczne
Butelka na sok jagodowy, 3 l., szklana butelka 6 szt., pudełko kartonowe 24 szt., paleta
 EAN-13  ITF-14  Code-128
 EAN-13  ITF-14  Code-128
 4611234567893  14611234567899  (02)14611234567890(37)24
 EAN-13 ITF-14  Code-128
461 w każdym kodzie kreskowym jest nazywany kodem regionalnym krajowych organizacji GS1 (na przykład, 460-469 Rosja) (000-139 USA)  1 (na samym początku) jest wskaźnikiem poziomu opakowania dla danego kartonu. Ten jednocyfrowy prefiks może mieć zakres od 0 do 8. (na przykład, 1 dla pudełka, 2 dla pojemnika, itd.).

(02) - GTIN pozycji handlowych w ładunku
(37) - liczba pozycji handlowych w ładunku
24 (na końcu) - ilość sztuk w palecie

Tworzenie kodu kreskowego z kodu w FastReport VCL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
uses frxClass, frxBarcode, frxBarcod, frxDBSet, Printers;
 
 var
 DataPage: TfrxDataPage;
 Page: TfrxReportPage;
 Band: TfrxBand;
 Barcode: TfrxBarcodeView;]
 
 begin
 
 {Wyczyść raport}
 frxReport1.Clear;
 {Dodaj stronę "Dane" }
 DataPage := TfrxDataPage.Create(frxReport1);
 {Dodaj stronę }
 Page := TfrxReportPage.Create(frxReport1);
 { Utwórz unikalną nazwę }
 Page.CreateUniqueName;
 {Ustaw domyślne marginesy, rozmiary papieru i orientację }
 Page.SetDefaults;
 {Zmiana orientacji strony }
 Page. Orientation := poLandscape;
 {Dodaj tytuł raportu }
 Band := TfrxReportTitle.Create(Page);
 Band.CreateUniqueName;
 {W przypadku pasma wystarczy ustawić współrzędną górną i wysokość }
 { Obie współrzędne są w pikselach }
 Band.Top := 20;
 Band.Height := 40;
 {Utwórz obiekt kodu kreskowego }
 Barcode := TfrxBarcodeView.Create(Band);
 {Ustaw typ kodu kreskowego }
 Barcode.BarType := bcGS1Code128;
 {Ustaw kombinację liczbową do kodowania }
 Barcode.Text := "(02)14611234567890(37)24";
 {Ustaw pozycję i rozmiar obiektu }
 Barcode.Top := 0;
 Barcode.Left := 10;
 Barcode.Height := 40;
 {Ustawianie wyświetlania tekstu na dole kodu kreskowego }
 Barcode.ShowText := True;
 {Wyświetl raport }
 frxReport1.ShowReport;
end;

Tworzenie kodu kreskowego z kodu w FastReport .NET

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 // Tworzenie obiektu raportu
 Report report = new Report();
 // Tworzenie strony raportu
 ReportPage page = new ReportPage();
 // dodaj unikalny identyfikator
 page.CreateUniqueName();
 //Dodaj go do zbioru stron raportu
 report.Pages.Add(page);
 // Utwórz pasmo danych
 DataBand dataBand = new DataBand();
 //z unikalnym identyfikatorem
 dataBand. CreateUniqueName();
 //i dodaj go do kolekcji pasm
 page.Bands.Add(dataBand);
 //Utwórz obiekt kodu kreskowego
 FastReport.Barcode.BarcodeObject barcode = new FastReport.Barcode.BarcodeObject();
 //Ustaw typ kodu kreskowego
 barcode.Barcode = new FastReport.Barcode.Barcode128();
 //Ustaw kombinację liczbową do kodowania
 barcode.Text = "(02)14611234567890(37)24";
 //Umieść kod kreskowy na stronie 
 barcode. Parent = dataBand;
 //Ustaw rozmiar obiektu
 barcode.Bounds = new RectangleF(0, 0, Units.Centimeters * 10, Units.Centimeters * 3);
 //Wyświetlanie raportu
 report.Show();

Teraz już wiesz nieco więcej o kodzie kreskowym Code-128 i jego odmianach A, B, C. 

about product zamów
avatar
Ekaterina Voytenko
Design and Marketing
Fast Reports Team: Ekaterina Voytenko - Design and Marketing at Fast Reports
.NET VCL Lazarus FastReport Barcode Delphi

Add comment
logo
  • 800-985-8986 (English, US)
  • +4930568373928 (German)
  • +55 19 98147-8148 (Portuguese)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314
  • Zamów
  • Pobierz
  • Dokumentacja
  • Opinie użytkowników
  • Jak odinstalować nasze produkty
  • FAQ
  • Tutorial Video
  • Forum
  • Support SLA
  • Articles
  • Our News
  • Prasa o nas
  • Partnerzy
  • Extended licensing
  • Kontakty

© 1998-2023 by Fast Reports Inc.

  • Poufność
  • Cookies Policy

Trustpilot
By clicking “Accept all, you agree Fast Reports can store cookies on your device and disclose information in accordance with our Cookie Policy.