그래서 chunky_png을 사용하여 PNG 이미지를 만들었습니다. 이 이미지를 저장하고 싶지 않습니다. 왜냐하면이 요청에 대해서만 유용하기 때문에이 이미지를 인스턴스 변수로 저장하고 내보기에 표시하려고합니다.chunkypng로 직접 만든 이미지를 표시합니다 (저장하지 않음)
문제는 내보기에 invalid byte sequence in UTF-8
오류가 발생한다는 것입니다.
내가 무슨 짓을했는지 :
# controller
@img = source_img.resize(200, 200).to_string
#view
<img src="data:image/png;base64,<%= @img %>" />
제대로 img 태그에 수동으로 이미지를이 문자열을 표시합니다 copiing 나 올바른 문자열, f.e :
--- !binary |-
iVBORw0KGgoAAAANSUhEUgAAAMgAAADIAQAAAACFI5MzAAACP0lEQVR4nO1Y
QY6jQAy0AxJ9a34AH8l29lmRhgDJSDxrwsxHmh80N5Ag3urkjFZabTw5TJ+g
HclWUa6ys5Ots6Ot8xP5/xFhnJIGxo/GdDD9HC+al6iNMpGFVie3kXOiyZET
8bq49cAipRn5bVXOB+CVPiXPXyMRhQb1PDvPRmQZAMWOam/cN1TgpKFEyIVT
pENLDF6oVoCuSCkdSIokEJnICy41K+AojX4psutY5+8011m80O1T4YpXxsOJ
3mjqo2A8Jc+/RD7txVNhWFrJPDnTF41uBfPvoXKJHw/jjt7QLMThqKuj2Ufe
+bUEFDeigtykr1UsVQkT2TP0cjA0H6wuR4VPkKilmMCDACjISmhLXc/64Ap+
mp3RJZ3IFTVpe9aXXHxawKzOY/Ss8WCVHX2u7hjYNa/yxNsWSrEULzJT0Cd1
XgToXEDWx/WgWRtPHKkZGSJ86ccDHjqvy9E1ryHfKORkmwJ+5u7NoqoUoXXQ
axqTYS6Ng2jWukoBD6/7qI+2sc2AmUIKLnUxkHzFMDURVXdHx3hT97pd8hU6
v9B8Ghs0qOnhIO9PybMZQRuumKTM42Ii3o2zew2lYLnBvRKP9ryErjeEd10/
fexmaznti8ZWbopoJV5XKeIGJp6TUEEyDGVXZbV8bGCMqRPbTyQnlpDjNzAk
gZXbNhxLINKH5+XZjsxsJD8DAwjGPtf+CnEDI8xVIX4HQ4aDtlLEDSzx5hdk
M77FuUp5/9mKPHazu5LX97+wMH42qhX8RP4AQpEyh+7r4x0AAAAASUVORK5C
YII=
raise @img.to_yaml
출력으로 @img 변수를 디버깅.
아이디어가 잘못 되었나요? 저장하지 않고이 이미지를 직접 표시하는 다른 아이디어?
미리 감사드립니다. 뭔가 명확하지 않은 경우 의견을 남겨주십시오.
src attr에 to_yaml을 추가 했습니까? – Yule
@Yule'.to_yaml'은 내 응용 프로그램을 충돌시키지 않지만 물론 yaml 형식 때문에 이미지가 표시되지 않습니다. – choise
해킹 비트가 있지만 .to_yaml.to_s는 어떨까요? – Yule