10
votes

Code à barres avec texte sous utexthaparp

J'utilise ITEXTSHARP dans mon application pour générer un code à barres. Bien que tout fonctionne comme je le voulais, j'ai besoin d'afficher la valeur du code à barres sous le code à barres comme celui-ci dans l'image ci-jointe. échantillon de code à barres

ci-dessous est le code C # que j'utilise: xxx


1 commentaires

Peut-on pourrait cette aide?


5 Réponses :


8
votes

Ceci est code que j'ai trouvé lors de la recherche sur le net. J'espère que cela résout votre problème:

string prodCode = context.Request.QueryString.Get("code");
context.Response.ContentType = "image/gif";
if (prodCode.Length > 0)
{
  Barcode128 code128          = new Barcode128();
  code128.CodeType            = Barcode.CODE128;
  code128.ChecksumText        = true;
  code128.GenerateChecksum    = true;
  code128.StartStopText       = true;
  code128.Code                = prodCode;
  System.Drawing.Bitmap bm    = new System.Drawing.Bitmap(code128.CreateDrawingImage(System.Drawing.Color.Black, System.Drawing.Color.White));
  bm.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);            
} 


2 commentaires

Désolé, le texte ne figure pas toujours sous le code à barres. Merci d'avoir essayé d'aider.


MDR! Cet extrait ressemble à celui de mon blog! jphellemons.nl/post/ ...



0
votes

ah. Vous devez définir la police. Je recommande d'utiliser fonfactory.registerdirectories () et fonfactory.getfont (nom) .

registresDirectories () énumérera tous les répertoires OSES sont connus pour utiliser les polices. Windows (de la saveur) n'est pas un problème. Une fois que cela est fait, vous pouvez facilement obtenir des polices de l'usine. Toutes les symbologies de code à barres, je suis au courant de ne pas avoir de problème avec le codage par défaut, vous devez donc vraiment demander un nom de police de base plutôt que de connaître un chemin. FontFactory suit toutes les informations de chemin pour vous. Handy.


4 commentaires

Marque ce n'est pas la police. Je cherche à afficher la valeur sous le code à barres comme celui-ci dans l'image ci-jointe. Merci


C'est exact. Et pour dire à un code à barres d'afficher son texte, vous définissez une police. Dit si juste là dans le Javadoc pour Barcode à barres .setfont () . Grammaire impair, mais l'idée est là. Insuffisamment, le constructeur par défaut pour barcode128 initialise la police à Helvetica / WinansienceCoding. Quelle version d'ITEXT utilisez-vous et quel texte essayez-vous d'afficher?


Je ne pense pas que cela soit réalisable ... J'ai essayé chaque option que je pouvais penser et ne pouvait pas obtenir le résultat souhaité ... Si quelqu'un réussit à obtenir ce travail, une vraie réponse serait géniale ... (@Mark Storer - ce n'est pas Itext, c'est iTextShaRP - un port à .NET)


Ils sont pratiquement interchangeables. "Obtient" souvent mais pas toujours des propriétés, et tous les noms de fonction commencent par des lettres majuscules. Je répète, quelle version d'Itexthaparp utilisez-vous et quel texte essayez-vous d'afficher?



4
votes

Il n'y a pas de moyen direct d'afficher du texte sous l'image de code à barres à l'aide de la DLL iTextShaRP. J'ai essayé de la même chose et j'ai eu une solution de contournement pour afficher le texte. Ce n'est pas une solution directe, mais fournira une sortie similaire à celle attendue d'une image de code à barres.

Pour générer l'image de code à barres, j'ai utilisé les entrées partagées par JP Hellemons dans son blog. Merci jp hellemons! http: //www.jphellemons .nl / post / make-a-code128-barcode-with-c-short-and-itextatharp.aspx

Le code que j'ai utilisé: xxx < / Pré>

Corrigez-moi si j'étais tort ..

Si l'un d'entre vous possède une solution directe ou plus simple, veuillez les partager ..


0 commentaires

2
votes
iTextSharp.text.pdf.Barcode128 bc = new Barcode128();
bc.TextAlignment = Element.ALIGN_CENTER;
bc.Code = "anything";
bc.StartStopText = false;
bc.CodeType = iTextSharp.text.pdf.Barcode128.CODE128;
bc.Extended = true;
//bc.Font = null;

iTextSharp.text.Image PatImage1 = bc.CreateImageWithBarcode(cb, iTextSharp.text.BaseColor.BLACK, iTextSharp.text.BaseColor.BLACK);
PatImage1.ScaleToFit(160, 20);

PdfPTable p_detail1 = new PdfPTable(1);
p_detail1.WidthPercentage = 100;

PdfPCell barcideimage = new PdfPCell(PatImage1);
//barcideimage.Colspan = 2;
barcideimage.HorizontalAlignment = 2;
barcideimage.Border = 0;
p_detail1.AddCell(barcideimage);

l1.Add(p_detail1);

1 commentaires

S'il vous plaît ne fournissez pas de réponses uniquement du code, mais expliquez également comment et pourquoi votre solution résout le problème.



-1
votes

code128.Size = 10;

code128.baseline = code128.Size; Entrez la description de l'image ici

ean13  Entrez la description de l'image ici


0 commentaires