Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 它';有可能在颤振中绘制像素吗?_Flutter - Fatal编程技术网

Flutter 它';有可能在颤振中绘制像素吗?

Flutter 它';有可能在颤振中绘制像素吗?,flutter,Flutter,我的应用程序通过以下方式进行一些简单的图像处理。作为图像处理的结果,我有像素的字节数据。我想显示图像处理的结果,因为它是(不转换为png或其他格式)。 我试图实现ui.Image并在画布上绘制它,但遇到了一个本地代码错误。我的代码是: import 'dart:async'; import 'dart:typed_data'; import 'dart:ui' as ui; import 'package:flutter/material.dart'; class WorkImage imp

我的应用程序通过以下方式进行一些简单的图像处理。作为图像处理的结果,我有像素的字节数据。我想显示图像处理的结果,因为它是(不转换为png或其他格式)。 我试图实现ui.Image并在画布上绘制它,但遇到了一个本地代码错误。我的代码是:

import 'dart:async';
import 'dart:typed_data';
import 'dart:ui' as ui;

import 'package:flutter/material.dart';

class WorkImage implements ui.Image {
  final int width;
  final int height;
  final ByteData byteData;

  WorkImage({
    this.width,
    this.height,
    this.byteData,
  });

  @override
  Future<ByteData> toByteData({
    ui.ImageByteFormat format = ui.ImageByteFormat.rawRgba
  }) {
    return Future.value(byteData);
  }

  @override
  void dispose() {

  }
}

class ViewPainter extends CustomPainter {
  final ui.Image image;

  ViewPainter({ this.image });

  @override
  void paint(Canvas canvas, Size size) {
    canvas.drawImage(image, Offset(0, 0), Paint());
  }

  @override
  bool shouldRepaint(CustomPainter oldDelegate) {
    return false;
  }
}
导入'dart:async';
导入“dart:键入的_数据”;
将“dart:ui”导入为ui;
进口“包装:颤振/材料.省道”;
类WorkImage实现ui.Image{
最终整型宽度;
最终整数高度;
最终字节数据字节数据;
工作图像({
这个宽度,
这个,身高,
这个,拜特达,
});
@凌驾
未来Tobyte数据({
ui.ImageByteFormat format=ui.ImageByteFormat.rawRgba
}) {
返回Future.value(byteData);
}
@凌驾
无效处置(){
}
}
类ViewPainter扩展了CustomPainter{
最终用户界面。图像;
ViewPainter({this.image});
@凌驾
空心油漆(帆布,尺寸){
drawImage(图像,偏移量(0,0),Paint());
}
@凌驾
bool应重新绘制(自定义代理){
返回false;
}
}
错误是:

信号11(SIGSEGV),代码1(SEGV_-MAPERR),故障地址0x78f 原因:空指针取消引用


请帮助我处理这个问题。

A如果您需要一些格式,请参阅:您也可以使用helper函数,您必须使用BMP标头预先添加字节,然后根据pskink调用
instantiateImageCodec
。您需要标题来描述位图的几何体等(宽度、高度、像素深度等)@RichardHeap,谢谢!这是一个非常简单的解决方案!另见:和//