0

我们需要打开一个图像并将其像素写入内存,以便 C 库可以进一步处理它。我们使用以下行来执行此操作:

image = Vips::Image.new_from_file(filename)
pixels_pointer = image.write_to_memory

但是,似乎在内存中写入的内容因环境而异。我们正在通过 Docker 在 macOS High Sierra 和 Ubuntu Xenial 上使用vips-8.8.0ruby-vips (2.0.13). 我们已经对写入内存的结果进行了 MD5 编辑:

p Digest::MD5.hexdigest(pixels_pointer)

以下是两者的结果:

  • macOS 高山脉:141e9b6a84f4ca05a7699b33fc0ef808
  • 通过 Docker 的 Ubuntu Xenial:019a568e40dcc41ac6496da06d29d723

我不知道为什么会发生这种情况,我应该在哪里进一步观察。任何提示将不胜感激!

4

0 回答 0