Libre Barcode Project
173 points
by luu
8 hours ago
| 7 comments
| graphicore.github.io
| HN
1bpp
6 hours ago
[-]
Is anyone willing to sacrifice their sanity for the sake of implementing a QR renderer as TTF hinting code?
reply
iguessthislldo
4 hours ago
[-]
I love seeing nonsense like that. How that work graphically though? Just keep adding to a same QR code that keeps getting denser as more text is added? I guess it doesn't have to practical though :)
reply
Induane
6 hours ago
[-]
Ask Claude
reply
sdfsdfsd3443f
1 hour ago
[-]
You all know this is the answer. In fact you will do this and then post it on Show HN proudly.
reply
dspillett
56 minutes ago
[-]
The downvotes aren't saying the comment is wrong (though it might be), they are saying “if it is that easy, you ask Claude”. The parent comment seemed to be specifically asking if a person would work on it, not specifying what tools might be used in that work.
reply
ahlCVA
58 minutes ago
[-]
Barcode fonts have been around for ages. But what's cute about this one is that it can calculate the EAN13 checksum on its own.
reply
alex_suzuki
50 minutes ago
[-]
It can’t, at least for Code 128? There’s a text field that you enter the text into, and then the start/stop/checksum characters are computed.
reply
ahlCVA
31 minutes ago
[-]
It seems like it doesn't do this for Code 128 (possibly because it is variable-width?). It definitely works with EAN13 though - I tried it locally using only the TTF file.
reply
alex_suzuki
8 minutes ago
[-]
Oh, interesting! I tried it in Word on macOS but didn't get it to work. But it works in the browser (question mark = calculates check digit).

It uses this, which i have no idea what it is :-) https://learn.microsoft.com/en-us/typography/opentype/spec/f...

reply
dfox
58 minutes ago
[-]
Do not do this unless you do not have any other choice. Preferrably use whatever native barcode support of the printer involved, if it does not have that, just generate the barcode as vector image or bitmap with a resolution that is a integer fraction of the printers resolution. Generating correct Code128 as a SVG is about the same amount of work as generating the correct input for some sort of barcode font (the hard part is determining the switches between character sets, not generating bars from bytes).
reply
alex_suzuki
46 minutes ago
[-]
Shameless plug for my web-based Zint frontend: https://barcode.new (in-browser WASM)

I wrote it specifically because most online barcode generators don’t support vector output or suck in some other way: ads, signup necessary, code payload exposed to server-side processing etc.

reply
utopiah
4 hours ago
[-]
Damn, yes please.

Another cool font, but less original, I stumbled upon recently is Marelle https://marelle.forge.apps.education.fr/ for cursive.

reply
albert_e
3 hours ago
[-]
> https://marelle.forge.apps.education.fr/

This website is in French so I was unable tounderstand the text

and the website is very resistant to automatic translation by Google Translate

>https://marelle-forge-apps-education-fr.translate.goog/?_x_t...

What gives?

reply
utopiah
2 hours ago
[-]
No problem translating it with Firefox :

" Marelle is a free cursive police force for teaching writing in elementary school. Introduction

This project is supported by the Digital Directorate for Education of the Ministry of National Education, and developed in the Forge of Digital Educational Commons.

The Marelle police is designed specifically for teaching cursive writing in elementary school, it was developed by a team of teachers and designers specialized in writing systems.

Teaching Cursive Writing

Structure and sequence of letters, rhythm and proportion, contextual variants: the Marelle font was thought around specific criteria to offer a quality model to teachers and students. Particular attention has been paid to the trace of numbers, capital letters and punctuation. A complete professional tool

The Marelle police offers 3 types of variants:

    uppercase sticks or cursive
    with or without lineage Seyes
    height of ascendants and descendants
These variants can be combined to best meet the needs of teachers and students." etc
reply
jurgemaister
2 hours ago
[-]
> cursive police force
reply
piltboy
2 hours ago
[-]
"Marelle is a free cursive font designed for teaching handwriting in [French] elementary school."

I'm not sure they owe it to anyone to make the website available in English :-)

reply
tecleandor
1 hour ago
[-]
Nice! That looks pretty similar to the one in "Cuadernos Rubio", a system that was super popular from the 60s to the 90s in Spain (that still exists) for learning handwriting in primary school.
reply
endre
4 hours ago
[-]
this is genius
reply
alex_suzuki
1 hour ago
[-]
This would be more interesting if you wouldn’t need to calculate checksums yourself, and could just write the barcode value. Good luck doing that with something like Reed-Solomon (QR, Data Matrix, etc.) or the shenanigans they’re doing with GS1 DataBar.
reply
nemoniac
3 hours ago
[-]
ASCII only?
reply
Terr_
3 hours ago
[-]
More or less, AFAICT the underlying barcode standards don't support Unicode, if that's what you mean.

It looks like Code 128 could potentially handle some ISO-8859-1 accented latin characters, but I'm not sure how to test it.

reply
matsemann
48 minutes ago
[-]
Even with plain ASCII we sometime struggle with the various scanners, as they emulate keyboards. So for instance using : in the barcode as a separator of values becomes wonky if the OS has a different input language than expected.
reply
ale42
2 hours ago
[-]
Code 128 supports some ISO-8859-1 indeed, but it requires switching between encodings (there are 3 of them), and couldn't work with 128B (I guess the one used by the font, as it supports ASCII). See the table on Wikipedia: https://en.wikipedia.org/wiki/Code_128
reply
trashb
1 hour ago
[-]
actually it seems they support 128A 128B and 128C with the correct encoder.

  To use these fonts you have to use an encoder like the one below. It is an optimizing encoder, that means, it produces the shortest barcode that can encode the input. For this the encoder, if necessary or shorter, switches between the three available Code Sets (list from Wikipedia):
https://graphicore.github.io/librebarcode/documentation/code...
reply
dmitrygr
5 hours ago
[-]
This is a perversion of the most sickening nature. Nicely done!
reply
breakingcups
3 hours ago
[-]
I'm surprised at this reaction, this has been standard practice for many years in various companies where I worked.
reply
dfox
1 hour ago
[-]
The fact that this is standard practice does not mean that it is not perverse. It kind of works sanely for plain Code39 (and even then you will see effects of doing that in weird places, like VAG stamping human readable VIN on a chassis, including the Code39 start/stop symbols), once you start using barcode fonts for Code128-derived symbologies (ie. UPC/EAN) the whole thing becomes a pointless exercise.
reply