Я могу прикрепить изображение png из dis c, и все работает отлично:
obj.attachment.attach(
io: File.open('dog.png'),
filename: "image_name",
content_type: "image/png"
)
Но это не работает, давая результат, как слишком маленький пустой квадрат, когда я сохраняю изображение Base64 png который закодирован в String
что-то подобное "data:image/png;base64,iVB**..REST OF DATA..**kSuQmCC"
с помощью:
obj.attachment.attach(
io: StringIO.new(encoded_base_sixty_four_img),
filename: "image_name",
content_type: "image/png"
)
Также я пытался его декодировать, но выдает ту же ошибку:
decoded_base_sixty_four_img = Base64.decode64(encoded_base_sixty_four_img)
obj.attachment.attach(
io: StringIO.new(decoded_base_sixty_four_img),
filename: "image_name",
content_type: "image/png"
)
Также пытался записать это декодированное значение в File
, но ничего не сработало, что дало результат в виде чистого изображения:
file = file.write(decoded_base_sixty_four_img)
obj.attachment.attach(
io: file,
filename: "image_name",
content_type: "image/png"
)
Итак, есть ли другие мысли?