개발 이슈

[Flutter] RepaintBoundary 캡쳐 이미지 저화질 현상 (화질구지)

소복 2021. 1. 22. 07:48

RepaintBoundary를 이용해서 특정 구간의 위젯들을 캡쳐해서 저장하는데, 

사진의 화질이 엄청 떨어지는 현상이 나타났다 ...

 

도저히 눈 뜨고 봐줄 그런 정도...^^

 

 

해결 방법은 생각보다 간단하다!

ui.Image image = await boundary.toImage(pixelRatio: 2.0); 

 

pixelRatio 부분을 추가해주면 된다

 

뒤의 소수점 이커질 수록 해상도가 좋아진다

 

무 크게 잡으면 이미지의 크기가 너무 커지니까 적당하게 잡는 걸 추천!

(개인적으로는 5.0이 적당한 것 같았다)

 

 

 

참고: https://github.com/flutter/flutter/issues/21269