FAQ TBarCode OCX
Comment encoder des séquences hexadécimales en valeurs binaires ?
Comment encoder des séquences hexadécimales en valeurs binaires ?
TBarCode V8-V9
Pour encoder des valeurs hexadécimales avec TBarCode V9, vous devez utiliser les « séquences d'échappement » au format « \xhh » (hh=valeur hexadécimale). Il est nécessaire de convertir la séquence hexadécimale (par ex. depuis DP Premiumadress) dans ce format et d'activer la propriété TBarCode « EscapeSequences ». Nous fournissons ci-dessous un exemple de code VBA pour cette conversion :
' CreateTBCHEXString(sHexValue)
' sHexValue .... Converted data stream
' sets "\x" before each byte
Private Function CreateTBCHEXString(sHexValue)
Dim sTBCText As String
'set the prefix needed by TBarCode "\xhh"
sHexPrefix = "\x"
'bring the generated string into "\xhh" format
For i = 1 To Len(sHexValue) Step 2
sTBCText = sTBCText & sHexPrefix & Mid$(sHexValue, i, 2)
Next i
CreateTBCHEXString = sTBCText
End Function
TBarCode V10+
Au lieu d'utiliser des séquences d'échappement, vous pouvez utiliser le mode d'encodage Hexadecimal.
Même si vous utilisez une séquence d'échappement pour des données binaires, l'encodeur utilisera une conversion de page de code (exemple : \x88 conduit à une valeur différente en Data Matrix par rapport à celle souhaitée).
Solution :
- Désactivez la conversion de page de code (utilisez le mode d'encodage LowByte)
- Forcez le mode d'encodage binaire si disponible (voir le mode d'encodage PDF417, Data Matrix EnforceBinaryEncoding)
Pertinent pour DP Premium Address et d'autres applications où vous encodez des données binaires dans un symbole 2D (Data Matrix etc.).