cjaeger

EAN-13 /Code39 Barcode in FileMaker w/o Fonts

19 posts in this topic

I just wondered if you might be interested - A platform independant, basic approach to barcodes not involving plugins or fonts. Great for printing product id labels. However, barcode length is limited to 64 characters because of FileMaker's ability to display only 1000 repeats.

[color:"red"] attachment deleted

[color:"blue"]New Code39 and EAN samples at the end of this thread

Share this post


Link to post
Share on other sites

Hello,

Just out of curiosity I printed the barcode and tried to scan it using our scanner which will read code 39. Well in short the scanner can't read the barcode.

Michael

Share this post


Link to post
Share on other sites

The bars are probably too wide, that's why I wrote print scaled (at 50% maybe).

Good you tested it, though, as I do not have a scanner ready. I did this only by textbook and visual comparison to results in Bar Code Font ...

just let me know if it works, because I am just starting EAN-13 using a similar technique ...

Share this post


Link to post
Share on other sites

I believe the length of the barcode is fine. I just printed a barcode using the same text, printed in code 39 using a plug-in and they are different.

Share this post


Link to post
Share on other sites

but then, maybe my pattern formula is wrong ...

Will have a look at it and re-check.

This will be part of a solution where i hope someone can scan a package slip number directly from screen and enter the data into a shippers label printing application on a 2nd computer. Don't know if it works yet - especially with the customers barcode readers, but i'll see soon enough.

Share this post


Link to post
Share on other sites

We have a SPT 1700 here and I was hoping to be able to read the barcode off the screen too. I tried but it does not work. Maybe due to the glare not quite sure. Tried it on a flat LCD screen also, no luck there either. I'm considering Trying to change the background color and/or text color to see if this will make it work. I'll let you know.

Michael

Share this post


Link to post
Share on other sites

I useda different font now, and yes - the patterns are different. Will look it up & repost file ...

Share this post


Link to post
Share on other sites

Of course this won't work. There is really nothing there to scan. With laser scanners, the laser source wipes out the screen image. The reflectivity of the screen phosphor doesn't change with illumination by the electron beam. With imaging scanners and the light source disabled, the scan rate of the scanner will interact with the scan rate of the crt and create unpredictable results. There is no static, whole image on the screen, you vision just make it appear that way.

Tell me you guys are just putting us on. wink.gif

-bd

Share this post


Link to post
Share on other sites

Update - tried the patterns from GD::Barcode 1.3 (CPAN), won't work either without applying some bit masks. working on it ...

Share this post


Link to post
Share on other sites

Of course this won't work. There is really nothing there to scan. With laser scanners, the laser source wipes out the screen image. The reflectivity of the screen phosphor doesn't change with illumination by the electron beam. With imaging scanners and the light source disabled, the scan rate of the scanner will interact with the scan rate of the crt and create unpredictable results. There is no static, whole image on the screen, you vision just make it appear that way.

Just thought it might have been possible using a TFT screen.

And there have been a "data watch" once that grabbed data directly from screen using some patterns generated by software.

OK, but still it should be possible to print those codes. I hate having to install expensive fonts just to print such simple things as barcodes ...

Share this post


Link to post
Share on other sites

No, a TFT screen would be no different. It might be possible with a non-backlit LCD display. But, I don't know where you would find one these days.

Share this post


Link to post
Share on other sites

OK, get your scanners ready and test the EAN-13 implementation.

I might have to tweak the dividers, but it should work.

Code 39 is not ready yet.

[color:"red"] attachment deleted

[color:"blue"]New Code39 and EAN samples at the end of this thread

here are some codes for testing:

7611819001480

7611819001497

7611819001503

7611819001510

7611819001527

7611819001534

7611819001541

7611819001558

7611819001565

7611819001572

7611819001589

7611819001596

7611819001602

7611819001619

7611819001626

7611819001633

7611819001640

7611819001657

7611819001664

7611819001671

Share this post


Link to post
Share on other sites

Here is the corrected Code39 file.

Bar widths ar set to 3:1, character spaces are set to 2 times singlewidth for easier readability. (a ratio of 2:1 and 1 are perfectly legal but harder to scan...).

Please test and tell me if it works

Code39new.zip

Share this post


Link to post
Share on other sites

Works good iin my house, but I have always simply made a field called barcoded calcualted = "*"& Barcode & "*" unstored calc when needed.

Share this post


Link to post
Share on other sites

that's right if you distribute a font with your bound solutions. However, sometimes you cannot install fonts or do not want to because of licensing restrictions or software policy.

Barcode fonts are expensive and fonts from different vendors usually don't mix because of different character mappings.

Just imagine you create a product catalog on cd and want the shopping cart faxed/snail mailed to you with barcodes. With the UPC/EAN example, you have a checksum and encoding logic that can not be simply typed in.

"Taking the code down to the bars" is a royalty-free, pure Filemaker way of doing barcodes without the need of extra software.

BC fonts usually operate at a higher resolution and include hints to allow for dot gain etc, but for most applications this will not be necessary. You could easily recreate the logic behind it in javascript to include the bars in an invoice printed from a webpage (although the perl gdbarcode is an easy way of doing this in cgi), or you can do the same with XSL and SVG.

Share this post


Link to post
Share on other sites

Here is a working version of the EAN-13 barcode example. There was an error in the divider bar calculation.

To see how to implement this code in existing solutions, see the upcoming UPC-A example in this Forum.

Since the solutions are working now, I will delete all intermediate uploads.

CodeEAN13new.zip

Share this post


Link to post
Share on other sites

BE AWARE THAT THIS TECHNIQUE MAY NOT WORK IN FILEMAKER 7.

It relies on repeating container fields displaying images without a gap. Not possible anymore with FileMaker's new graphic engine without major workarounds.. But they may fix this in the future.

One workaround involves working in 400% scale, then copying the result in preview. See the EAN 13 example. You may want to copy the container field and offset it a half pixel.

Due to variable length this is not always possible with Code39 strings.Get one of the free fonts (google: 'code39.ttf' ) available on the internet. They work on OS x now without mods.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now