Skip to content
DemoFAQ

PDF 生成模板编辑器

开源可视化 PDF 生成引擎,支持自定义模板,并提供面向开发者的 API,灵活构建文档生成流程。

查看 GitHub
Flutter Guides Display modes

显示模式 ​

滚动方向 ​

页面的滚动方向可以是 horizontal 或 vertical。

如果 verticalMode 是 true,表示垂直滚动;否则是水平滚动。

dart
CPDFReaderWidgetController? _controller;

Scaffold(
  resizeToAvoidBottomInset: false,
  appBar: AppBar(),
  body: CPDFReaderWidget(
    document: documentPath,
    configuration: CPDFConfiguration(
      readerViewConfig: const ReaderViewConfig(verticalMode: true)),
    onCreated: (controller) {
      setState(() {
        this._controller = controller;
      });
    },
  ));

您还可以通过CPDFReaderWidgetController设置滚动方向:

dart
_controller.setVerticalMode(true)

显示模式 ​

页面显示模式可以是 singlePage、doublePage 或 coverPage。

dart
CPDFReaderWidgetController? _controller;

Scaffold(
  resizeToAvoidBottomInset: false,
  appBar: AppBar(),
  body: CPDFReaderWidget(
    document: documentPath,
    configuration: CPDFConfiguration(
      readerViewConfig: const ReaderViewConfig(displayMode: CPDFDisplayMode.doublePage)),
    onCreated: (controller) {
      setState(() {
        this._controller = controller;
      });
    },
  ));

通过CPDFReaderWidgetController设置显示模式:

  • singlePage
dart
_controller.setDoublePageMode(false);
  • doublePage
dart
_controller.setDoublePageMode(true);
  • coverPage
dart
_controller.setCoverPageMode(true);

滚动模式 ​

滚动模式可以设置为连续滚动或翻页模式。当 continueMode 是 true 时,表示连续滚动;否则是翻页滚动。

dart
CPDFReaderWidgetController? _controller;

Scaffold(
  resizeToAvoidBottomInset: false,
  appBar: AppBar(),
  body: CPDFReaderWidget(
    document: documentPath,
    configuration: CPDFConfiguration(
      readerViewConfig: const ReaderViewConfig(continueMode: true)),
    onCreated: (controller) {
      setState(() {
        this._controller = controller;
      });
    },
  ));

通过CPDFReaderWidgetController设置滚动模式:

dart
_controller.setContinueMode(true);

裁剪模式 ​

要在裁剪 PDF 周围空白区域后显示文档,当 cropMode 是 true 时,表示启用裁剪模式;否则不裁剪。

dart
CPDFReaderWidgetController? _controller;

Scaffold(
  resizeToAvoidBottomInset: false,
  appBar: AppBar(),
  body: CPDFReaderWidget(
    document: documentPath,
    configuration: CPDFConfiguration(
      readerViewConfig: const ReaderViewConfig(cropMode: true)),
    onCreated: (controller) {
      setState(() {
        this._controller = controller;
      });
    },
  ));

通过CPDFReaderWidgetController设置裁剪模式:

dart
_controller.setCropMode(true);