You may want to take another direction and print this to a label printer such as Zebra. This would not require you to have a barcode font. In this scenario, you would send the printer programming codes based on their programming language.
I'm not 100% sure about this but, from Wikipedia, GS1-128 was formerly known as UCC/EAN-128. When I looked this up in the "EPL2 Programmer's Manual" it is an available Bar Code. Google for the manual.
This may look strange, but here is an example of this type of EPL2 program code.
N
B10,10,0,1E,3,7,200,B,"your barcode data"
P1
The "1E" designates the barcode as UCC/EAN-128.
You would then send this out to your Zebra Printer by putting that into a string, and then using the triple ? command.
TEXT TO lcPrinterCode NOSHOW
N
B10,10,0,1E,3,7,200,B,"your barcode data"
P1
ENDTEXT
lcPrinterDriver = GETPRINTER() && get your Zebra printer
SET PRINTER TO NAME (lcPrinterDriver)
??? lcPrinterCode
Hope this helps!
Bob Ethridge