Solved

Barcodes

Posted on 2006-11-08
10
737 Views
Last Modified: 2013-12-03
Hi!, I am currently developping an application for use with ID cards, and I require code tht allows me to create barcodes. thus code 128 A B C is most important, then if possible some other like EAN 39 etc etc...

I require the code to make a Bitmap image out of a barcode, no antialias, just Crisp quality...

if anyone here can provide me working code, I will be thrilled!

and if I can use Graphics32 for this as well, I will be even more thrilled!

I am willing to increase points as well for something that really works...

invalid characters should just be ignored...
0
Comment
Question by:joepezt
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
  • +3
10 Comments
 
LVL 17

Expert Comment

by:TheRealLoki
ID: 17902821
I think you can get barcode "fonts"
0
 
LVL 17

Expert Comment

by:mokule
ID: 17902993
Hi,
maybe You can use Report Manager
from
http://reportman.sourceforge.net/
Bar codes: rpmdbarcode.pas
0
 
LVL 2

Author Comment

by:joepezt
ID: 17903097
mmm,.. not really report managers I am looking for... and fonts?. O tried them before but with less or allmost no success... some readers just do not like them cause you need a start and end point on some barcodes, atleast for some readers...

what really would help me is some kind of template I can use to build barcodes in example VCL, just render a TBitmap or whatever.... I have tried TP Systools, but this product is no longer supported, and pretty much no maintenance to it...

0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 27

Expert Comment

by:kretzschmar
ID: 17904441
fonts are ok, but you have to map the readable string to the barcode u want to use,
additional some barcodes needing a begin- and endsequence

a comercial but good one support

http://www.idautomation.com/formscontrols/FormsControlManual.html

meikl ;-)
0
 
LVL 6

Expert Comment

by:saravananvg
ID: 17904448
Hello Sir,

  Check the following barcode component

  Free TBarcode component v.1

 under the site http://www.torry.net/pages.php?s=93

with regards,
padmaja.
0
 
LVL 17

Expert Comment

by:mokule
ID: 17905368
I don't mean to use Report Manager itself, but use it's source code regarding bar codes.
0
 
LVL 9

Accepted Solution

by:
bernani earned 500 total points
ID: 17971639
Hi,

Maybe you can download the unit QRBarcode.pas from http://www.devarchive.com/download.php?programid=556

It contains;

interface

uses
  WinProcs, WinTypes, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  QuickRpt, Qrctrls;

type
   TQRBarcodeType =
   (
   bcCode_2_5_interleaved,
   bcCode_2_5_industrial,
   bcCode_2_5_matrix,
   bcCode39,
   bcCode39Extended,
   bcCode128A,
   bcCode128B,
   bcCode128C,
   bcCode93,
   bcCode93Extended,
   bcCodeMSI,
   bcCodePostNet,
   bcCodeCodabar,
   bcCodeEAN8,
   bcCodeEAN13,
   bcCodeUPC_A,
   bcCodeUPC_E0,
   bcCodeUPC_E1,
   bcCodeSupp2,     // UPC 2 digit supplemental
   bcCodeSupp5     // UPC 5 digit supplemental
   );


  TBarLineType = (white, black, black_half);  {for internal use only}
  { black_half means a black line with 2/5 height (used for PostNet) }


  TQRBarcode = class(TQRImage)
  private
    { Private-Deklarationen }
          FCheckVal:string;
          FHeight : integer;
          FText  : string;
          FTop    : integer;
          FLeft   : integer;
          FModul  : integer;
          FRatio  : double;
          FTyp    : TQRBarcodeType;
          FCheckSum:boolean;
          FShowText:boolean;
          FAngle  : double;

          modules:array[0..3] of shortint;


          procedure OneBarProps(code:char; var Width:integer; var lt:TBarLineType);

          procedure DoLines(data:string; Canvas:TCanvas);

          function SetLen(pI:byte):string;

          function Code_2_5_interleaved:string;
          function Code_2_5_industrial:string;
          function Code_2_5_matrix:string;
          function Code_39:string;
          function Code_39Extended:string;
          function Code_128:string;
          function Code_93:string;
          function Code_93Extended:string;
          function Code_MSI:string;
          function Code_PostNet:string;
          function Code_Codabar:string;
          function Code_EAN8:string;
          function Code_EAN13:string;
          function Code_UPC_A:string;
          function Code_UPC_E0:string;
          function Code_UPC_E1:string;
          function Code_Supp5:string;
          function Code_Supp2:string;

          function GetTypText:string;
          procedure MakeModules;


          function GetWidth : integer;
          function getEAN(Nr : String) : String;
          function getSupp(Nr : String) : String;

          procedure SetCheck(pS:string);
          procedure SetModul(v:integer);
          procedure setFheight(i:integer);
          procedure setFtop(i:integer);
          procedure setFleft(i:integer);
          procedure setFRatio(d:double);
          procedure SetFTyp(t:TQRBarcodeType);
          procedure setFCheckSum(b:boolean);
          procedure SetFAngle(d:double);
          procedure setFShowText(b:boolean);
          procedure SetFText(s:string);
  protected
    { Protected-Deklarationen }
          function MakeData : string;
          procedure Print(OfsX, OfsY : integer);

  public
    { Public-Deklarationen }
          constructor Create(Owner:TComponent); override;
          procedure DrawBarcode(Canvas:TCanvas);
          procedure DrawText(Canvas:TCanvas);
          procedure View;
 
_______________________________

Hope this can help.
0
 
LVL 2

Author Comment

by:joepezt
ID: 17972023
I never get what I want anyway, but I will take your comment into concideration if I start with barcodes again, atm I haeve no clue...gz..
0
 
LVL 9

Expert Comment

by:bernani
ID: 17972214
Hi,

Thanks for answer.

I never get what I want anyway....  

Maybe you can also try to check this site which reports 73 results - Delphi in Most Downloaded Barcode Products:

http://www.componentsource.com/topdownloads/xbarcod/index.html?q=delphi

Maybe a way to get what you want ;)
0
 
LVL 2

Author Comment

by:joepezt
ID: 17974490
true, but they all costs :)
0

Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question