Is there a convenient data matrix generator library for scala? I've heard of zxing for java, but I just can't find a solid example how to generate a data matrix image (into a ByteArrayOutputStream
preferably)
Asked
Active
Viewed 775 times
1

Caballero
- 11,546
- 22
- 103
- 163
-
1Does the zxing [DataMatrixWriter](https://github.com/zxing/zxing/blob/master/core/src/main/java/com/google/zxing/datamatrix/DataMatrixWriter.java) do what you need? If so, you can probably just call that from Scala. – DNA Mar 29 '14 at 13:09
-
@DNA Ended up using Barcode4J library instead, seems to work just fine. – Caballero Mar 31 '14 at 08:42
1 Answers
0
Found a library with easy scala implementation. In my particular example below it will generate a Data Matrix image and return it as scala Array[Byte]
SBT
"net.sf.barcode4j" % "barcode4j" % "2.1"
Code
def generate(data: String) = {
import java.io.ByteArrayOutputStream
import java.awt.image.BufferedImage
import java.awt.Dimension
import org.krysalis.barcode4j.output.bitmap.BitmapCanvasProvider
import org.krysalis.barcode4j.impl.datamatrix.DataMatrixBean
val output = new ByteArrayOutputStream
val canvas = new BitmapCanvasProvider(output, "image/png", 300, BufferedImage.TYPE_BYTE_BINARY, false, 0)
val barcode = new DataMatrixBean
barcode.generateBarcode(canvas, data)
canvas.finish
val result = output.toByteArray
output.close
result
}

Caballero
- 11,546
- 22
- 103
- 163