je tente de générer un barcode128
dans iText
, avec le code suivant:iText Barcode128 - caractères illégaux pour code à barres
Barcode128 shipBarCode = new Barcode128();
shipBarCode.setCode(getOrder().getPartnerPurchaseOrderNumber());
shipBarCode.setBarHeight(40f);
PdfPCell barCodeCell = new PdfPCell();
barCodeCell.addElement(
shipBarCode.createImageWithBarcode(cb, BaseColor.BLACK, BaseColor.BLACK)
);
barCodeCell.setFixedHeight(55f);
barCodeCell.setPaddingRight(15f);
barCodeCell.setBorder(Rectangle.NO_BORDER);
barCodeCell.setHorizontalAlignment(Element.ALIGN_CENTER);
table.addCell(barCodeCell);
mais je reçois l'exception suivante:
java.lang.RuntimeException: There are illegal characters for barcode 128 in '509868_1_2_1'.
at com.itextpdf.text.pdf.Barcode128.getRawText(Barcode128.java:518)
at com.stuhrling.orderprocessing.partner.shopnbc.ShopNBCPackingSlip.getOrderInfoTable(ShopNBCPackingSlip.java:142)
at com.stuhrling.orderprocessing.partner.shopnbc.ShopNBCPackingSlip.getPackingSlipElement(ShopNBCPackingSlip.java:610)
at com.stuhrling.orderprocessing.label.PDFComboLabel.packingSlipCell(PDFComboLabel.java:131)
at com.stuhrling.orderprocessing.label.PDFComboLabel.generateLabel(PDFComboLabel.java:87)
at com.stuhrling.orderprocessing.OrderService.generatePackingSlip(OrderService.java:731)
at com.stuhrling.orderprocessing.PackingSlipListener.handleMessage(PackingSlipListener.java:60)
at com.stuhrling.orderprocessing.messaging.MessageListener.run(MessageListener.java:76)
at java.lang.Thread.run(Thread.java:745)
Apparemment , code 128
ne lit pas les caractères de soulignement .. ou peut-être que c'est un bug dans iText
?
Est-ce que quelqu'un sait d'une solution de contournement pour cela dans iText
?
Mise à jour:
On dirait qu'il bugs même sans le trait de soulignement, alors maintenant je suis encore plus perplexe ... :(
Je me demande quel est le problème avec mon code
?BTW, Il arrive seulement si je n'ai que des chiffres, si j'ajoute une lettre le problème disparaît
Barcode128 fonctionne correctement depuis toujours. Vous pouvez avoir des caractères non imprimables dans la chaîne. Essayez de générer le PDF avec certains littéraux directement. –
A fait cela, avec les mêmes résultats. – IntelliData
Salut. Je n'ai pas assez de connaissances sur 'iText' pour donner des idées pour un autre titre, mais je suggérerais de le changer pour un autre plus suggestif; autrement, il y a la possibilité que votre question soit rabaissée par quelqu'un. EDIT: juste après avoir fait ce commentaire, le titre a été édité. Ça ne fait rien. – SpaceCore186