Как преобразовать изображение в байтовый массив? - PullRequest
0 голосов
/ 28 сентября 2019

Я использую изображение base64 в HTML для рендеринга изображений в PDFViews.В некоторых случаях мне приходится динамически менять цвет изображений png / svg.Итак, я хочу знать , как изменить цвет оттенка изображения и преобразовать это изображение в base64 ?

Как изменить значок этого изображения на строку base64, которую мы будем рендеритьв формате PDF с использованием HTML.

Image mImage = Image.asset(
  "assets/images/ic_planet.png",
  color: Color(int.parse("999999")),
); //How to do after this?

Ответы [ 2 ]

0 голосов
/ 28 сентября 2019

Преобразует объект Image в байтовый массив.

Аргумент формата указывает формат, в котором будут возвращаться байты.

Официальный документ.

Future<ByteData> toByteData({ImageByteFormat format = ImageByteFormat.rawRgba}) {
  return _futurize((_Callback<ByteData> callback) {
    return _toByteData(format.index, (Uint8List encoded) {
      callback(encoded?.buffer?.asByteData());
    });
  });
}
0 голосов
/ 28 сентября 2019
  RaisedButton(
 onPressed: () async {
 List<int> imageBytes = await sampleImage.readAsBytes();
 base64Image =  base64Encode(imageBytes);
 print(base64Image);},), SizedBox(height: 30,),
 Image.memory(base64Decode(base64Image)),

когда вы применяете свой файл как readAsBytes, вы получите imagesBytes, а затем, после того, как вы можете легко конвертировать в base64Encode.

...