Как сгенерировать матрицу данных в Swift? - PullRequest
0 голосов
/ 26 сентября 2018

Есть ли способ создать матрицу данных в Swift без использования сторонней библиотеки?Я ищу по всему интернету и не могу найти способ генерирования матрицы данных.Есть только инструкции по созданию штрих-кодов:

class Barcode {

  class func fromString(string : String) -> UIImage? {

    let data = string.data(using: .ascii)
    let filter = CIFilter(name: "CICode128BarcodeGenerator")
    filter?.setValue(data, forKey: "inputMessage")

    return UIImage(ciImage: (filter?.outputImage)!)
  }

}

let img = Barcode.fromString("my_string_goes_here")

Есть ли способ изменить этот код для генерации матрицы данных вместо штрих-кодов?

Я пытался использовать также библиотеку ZXingObjC длясгенерировать матрицу данных, но я не могу отсканировать выходное изображение позже.Мой код:

func generateDataMatrix(from xml: String) {
    let writer = ZXMultiFormatWriter()
    let result: ZXBitMatrix? = try? writer.encode(xml, format: kBarcodeFormatDataMatrix, width: Int32(barcodeImageView.frame.width), height: Int32(barcodeImageView.frame.height))
    if result != nil {
        let image: CGImage = ZXImage(matrix: result).cgimage

        barcodeImageView.image = UIImage(cgImage: image)
    }
}

Я очень ценю любую вашу помощь!Заранее спасибо!

...