Данные в UIImage to UIImageJPEGRepresentation равенство сбоя - PullRequest
0 голосов
/ 23 ноября 2018

Почему это преобразование не приводит к тем же данным изображения?

    let path = Bundle(for: type(of: self)).url(forResource: "Image", withExtension: "jpg")
    inputData = try! Data(contentsOf: path!)

    let testImage = UIImage(data: inputData)
    let testImageData = UIImageJPEGRepresentation(testImage!, 1.0)

    expect(testImageData).to(equal(inputData))

Из того, что я понимаю UIImageJPEGRepresentation и UIImagePNGRepresentation может лишить изображения метаданных .Это причина?

1 Ответ

0 голосов
/ 23 ноября 2018

Нет особой причины, по которой два файла JPEG, показывающие одно и то же изображение, были бы идентичны.Файлы JPEG имеют много информации заголовка, разные алгоритмы сжатия и т. Д. И даже если оба файла имеют степень сжатия 1 (не так ли?), Они оба с потерями, поэтому что-то будет отличаться при каждом расширении и повторном сжатии.Ваши ожидания здесь просто неверны.Но тогда это также звучит так, будто вы пытаетесь протестировать то, что в первую очередь не нуждается в тестировании.

...