# GS1-128
## IronBarcode prend-il en charge la symbologie GS1 UCC/EAN-128 ?
Les codes-barres avec GS1 sont reconnus et décodés avec précision. Cependant, le problème réside dans l'absence actuelle de crochets dans la valeur du code-barres affiché.
Lorsqu'il utilise GS1-128, IronBarcode génère actuellement : `01950123456789033103000123` (qui est reconnu comme un BarCode Code 128 avec signature GS1). La valeur souhaitée à afficher sur l'image de sortie serait : `01950123456789033103000123`. Cependant, le lecteur de codes-barres affichera `(01)95012345678903(3103)000123` avec une détection du type de codes-barres comme `Code128`.
Pour générer un code-barres GS1-128, utilisez le code suivant :
```csharp
using IronBarCode;
class BarcodeExample
{
static void Main()
{
// Create a GS1-128 barcode using the specified value
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1);
// Add the barcode value text below the barcode on the generated image
barcode.AddBarcodeValueTextBelowBarcode();
// Save the barcode image as a PNG file
barcode.SaveAsPng("gs1code128.png");
}
}
```
### Sortie du code-barres

Le code ci-dessus génère un code-barres GS1-128 avec un séparateur par défaut. Si vous souhaitez ajouter des séparateurs supplémentaires, vous pouvez insérer le séparateur Unicode `\u00f1`. Notez toutefois que lorsque vous utilisez la méthode `AddBarcodeValueTextBelowBarcode`, le caractère Unicode ñ (code 0x00F1) s'affichera. Pour contourner cette limitation, une autre approche consiste à manipuler la chaîne et à transmettre la valeur modifiée à la méthode `AddAnnotationTextBelowBarcode`. De cette façon, vous pouvez obtenir l'affichage souhaité de la valeur du code-barres sans le caractère ñ.
```csharp
using IronBarCode;
class BarcodeExampleWithAnnotation
{
static void Main()
{
// Original barcode value
string barcodeValue = "0195012345678903310300012300\u00f10000000123300000\u00f10000012312300000";
// Remove unwanted unicode characters for display purposes
string trimmedString = barcodeValue.Replace("\u00f1", "");
// Create a GS1-128 barcode using the original value
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1);
// Add a custom annotation text below the barcode with the trimmed value
barcode.AddAnnotationTextBelowBarcode(trimmedString);
// Save the barcode image as a PNG file
barcode.SaveAsPng("gs1code128.png");
}
}
```
### Sortie du code-barres

Lors de la lecture du BarCode, la sortie sera `(01)95012345678903(3103)000123(00)0000000123300000(00)00012312300000`, et le type de BarCode sera détecté comme `GS1Code128`.
## Analyser l'encodage GS1-128
IronBarcode peut également analyser l'encodage physique d'un code-barres GS1-128, en indiquant quels jeux de caractères Code 128 (A, B ou C) sont utilisés pour chaque segment des données. Utilisez la méthode `Code128GS1Parser.ParseWithEncoding` pour analyser une chaîne GS1 avec analyse de l'encodage incluse.
```csharp
using IronBarCode;
// GS1-128 with encoding analysis
var gs1Result = Code128GS1Parser.ParseWithEncoding("(01)09501101530003");
Console.WriteLine(gs1Result.CharacterSetSummary); // "C"
Console.WriteLine(gs1Result.HasEncodingInfo); // true
```
Les données GS1-128 étant principalement numériques, l'encodeur utilise le code C pour une compacité maximale. La propriété `HasEncodingInfo` confirme que l'analyse de l'encodage est disponible sur le résultat.
IronBarcode prend-il en charge la symbologie GS1 UCC/EAN-128 ?
Les codes-barres avec GS1 sont reconnus et décodés avec précision. Cependant, le problème réside dans l'absence actuelle de crochets dans la valeur du code-barres affiché.
Lorsqu'il utilise GS1-128, IronBarcode génère actuellement : 01950123456789033103000123 (qui est reconnu comme un BarCode Code 128 avec signature GS1). La valeur souhaitée à afficher sur l'image de sortie serait : 01950123456789033103000123. Cependant, le lecteur de codes-barres affichera (01)95012345678903(3103)000123 avec une détection du type de codes-barres comme Code128.
Pour générer un code-barres GS1-128, utilisez le code suivant :
using IronBarCode;class BarcodeExample{ static voidMain() { // Create a GS1-128 barcode using the specified value GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1); // Add the barcode value text below the barcode on the generated image barcode.AddBarcodeValueTextBelowBarcode(); // Save the barcode image as a PNG file barcode.SaveAsPng("gs1code128.png"); }}
using IronBarCode;
class BarcodeExample
{
static void Main()
{
// Create a GS1-128 barcode using the specified value
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1);
// Add the barcode value text below the barcode on the generated image
barcode.AddBarcodeValueTextBelowBarcode();
// Save the barcode image as a PNG file
barcode.SaveAsPng("gs1code128.png");
}
}
ImportsIronBarCodeFriend Class BarcodeExampleShared Sub Main() ' Create a GS1-128 barcode using the specified value Dim barcode AsGeneratedBarcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1) ' Add the barcode value text below the barcode on the generated image barcode.AddBarcodeValueTextBelowBarcode() ' Save the barcode image as a PNG file barcode.SaveAsPng("gs1code128.png") End SubEnd Class
Imports IronBarCode
Friend Class BarcodeExample
Shared Sub Main()
' Create a GS1-128 barcode using the specified value
Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1)
' Add the barcode value text below the barcode on the generated image
barcode.AddBarcodeValueTextBelowBarcode()
' Save the barcode image as a PNG file
barcode.SaveAsPng("gs1code128.png")
End Sub
End Class
Sortie du code-barres
Le code ci-dessus génère un code-barres GS1-128 avec un séparateur par défaut. Si vous souhaitez ajouter des séparateurs supplémentaires, vous pouvez insérer le séparateur Unicode \u00f1. Notez toutefois que lorsque vous utilisez la méthode AddBarcodeValueTextBelowBarcode, le caractère Unicode ñ (code 0x00F1) s'affichera. Pour contourner cette limitation, une autre approche consiste à manipuler la chaîne et à transmettre la valeur modifiée à la méthode AddAnnotationTextBelowBarcode. De cette façon, vous pouvez obtenir l'affichage souhaité de la valeur du code-barres sans le caractère ñ.
using IronBarCode;class BarcodeExampleWithAnnotation{ static voidMain() { // Original barcode value string barcodeValue = "0195012345678903310300012300\u00f10000000123300000\u00f10000012312300000"; // Remove unwanted unicode characters for display purposes string trimmedString = barcodeValue.Replace("\u00f1", ""); // Create a GS1-128 barcode using the original value GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1); // Add a custom annotation text below the barcode with the trimmed value barcode.AddAnnotationTextBelowBarcode(trimmedString); // Save the barcode image as a PNG file barcode.SaveAsPng("gs1code128.png"); }}
using IronBarCode;
class BarcodeExampleWithAnnotation
{
static void Main()
{
// Original barcode value
string barcodeValue = "0195012345678903310300012300\u00f10000000123300000\u00f10000012312300000";
// Remove unwanted unicode characters for display purposes
string trimmedString = barcodeValue.Replace("\u00f1", "");
// Create a GS1-128 barcode using the original value
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1);
// Add a custom annotation text below the barcode with the trimmed value
barcode.AddAnnotationTextBelowBarcode(trimmedString);
// Save the barcode image as a PNG file
barcode.SaveAsPng("gs1code128.png");
}
}
ImportsIronBarCodeClass BarcodeExampleWithAnnotationShared Sub Main() ' Original barcode value Dim barcodeValue AsString = "0195012345678903310300012300" & ChrW(&HF1) & "000000123300000" & ChrW(&HF1) & "0000012312300000" ' Remove unwanted unicode characters for display purposes Dim trimmedString AsString = barcodeValue.Replace(ChrW(&HF1), "") ' Create a GS1-128 barcode using the original value Dim barcode AsGeneratedBarcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1) ' Add a custom annotation text below the barcode with the trimmed value barcode.AddAnnotationTextBelowBarcode(trimmedString) ' Save the barcode image as a PNG file barcode.SaveAsPng("gs1code128.png") End SubEnd Class
Imports IronBarCode
Class BarcodeExampleWithAnnotation
Shared Sub Main()
' Original barcode value
Dim barcodeValue As String = "0195012345678903310300012300" & ChrW(&HF1) & "000000123300000" & ChrW(&HF1) & "0000012312300000"
' Remove unwanted unicode characters for display purposes
Dim trimmedString As String = barcodeValue.Replace(ChrW(&HF1), "")
' Create a GS1-128 barcode using the original value
Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1)
' Add a custom annotation text below the barcode with the trimmed value
barcode.AddAnnotationTextBelowBarcode(trimmedString)
' Save the barcode image as a PNG file
barcode.SaveAsPng("gs1code128.png")
End Sub
End Class
Sortie du code-barres
Lors de la lecture du BarCode, la sortie sera (01)95012345678903(3103)000123(00)0000000123300000(00)00012312300000, et le type de BarCode sera détecté comme GS1Code128.
Analyser l'encodage GS1-128
IronBarcode peut également analyser l'encodage physique d'un code-barres GS1-128, en indiquant quels jeux de caractères Code 128 (A, B ou C) sont utilisés pour chaque segment des données. Utilisez la méthode Code128GS1Parser.ParseWithEncoding pour analyser une chaîne GS1 avec analyse de l'encodage incluse.
using IronBarCode;// GS1-128 with encoding analysisvar gs1Result = Code128GS1Parser.ParseWithEncoding("(01)09501101530003");Console.WriteLine(gs1Result.CharacterSetSummary); // "C"Console.WriteLine(gs1Result.HasEncodingInfo); // true
using IronBarCode;
// GS1-128 with encoding analysis
var gs1Result = Code128GS1Parser.ParseWithEncoding("(01)09501101530003");
Console.WriteLine(gs1Result.CharacterSetSummary); // "C"
Console.WriteLine(gs1Result.HasEncodingInfo); // true
Imports IronBarCode
' GS1-128 with encoding analysis
Dim gs1Result = Code128GS1Parser.ParseWithEncoding("(01)09501101530003")
Console.WriteLine(gs1Result.CharacterSetSummary) ' "C"
Console.WriteLine(gs1Result.HasEncodingInfo) ' True
Les données GS1-128 étant principalement numériques, l'encodeur utilise le code C pour une compacité maximale. La propriété HasEncodingInfo confirme que l'analyse de l'encodage est disponible sur le résultat.
Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.