defmodule ItsfoundBarcode.BarcodeScanner do @moduledoc """ functions to handle the actual barcode scanning """ def encode(string_to_encode) do string_to_encode |> Barlix.Code128.encode!() end def encode_to_png(string_to_encode, folder) do string_to_encode |> encode() |> Barlix.PNG.print(file: "#{folder}/barcode-#{string_to_encode}.png") end def encode_to_base64(string_to_encode) do binary = string_to_encode |> encode() {:ok, iodata} = binary |> Barlix.PNG.print() iodata |> IO.iodata_to_binary() |> Base.encode64() end end