一个非常轻量级的包,支持富文本编辑,并为数据序列化提供简单直观的API

一个Flutter包,让您非常容易地在Flutter文本字段中编辑文本,只需提供一个RichTextEditorControllerRichTextField(只是支持更改对齐方式的TextField)。请注意,您可以在普通的TextField上使用控制器,但您将无法更改文本的对齐方式。

特点

  • 数据序列化(您可以以json格式存储和获取您的样式化文本)
  • 更改文本对齐方式
  • 更改文本颜色
  • 更改文本大小(待定)
  • 更改字体样式
  • 更改字体族(待定)
  • 更改字体粗细
  • 更改字体特性(待定,目前支持更改1)
  • 更改文本装饰

入门

将此添加到您的pubspec.yaml文件中

dependencies:
  flutter:
    sdk: flutter
  rich_text_editor_flutter: 0.0.1

或使用pub

pub add rich_text_editor_flutter

用法

import 'package:flutter/material.dart';
import 'package:flutter/rich_text_editor_controller/rich_text_editor_controller.dart';

...

class _HomePageState extends State<HomePage> {

  final RichTextEditorController controller = RichTextEditorController();

  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          children: [
            RichTextField(
              controller: controller,
              maxLines: 10, //use or apply style like in normal text fields
              minLines: 1,
            ),
          ],
        ),
      ),
    );
  }

}

或者像普通控制器一样使用

 ...
//or use normal TextField but without alignment support
TextField(
controller: controller,
maxLines: 10,
minLines:
1
,
)

...

别忘了dispose您的控制器

  @override
void dispose() {
  controller.dispose();
  super.dispose();
}

有关更详细的示例,请参见此处

附加信息

要创建问题、pr或以任何方式贡献,请访问github仓库

GitHub

查看 Github