pdf_render 1.0.5 pdf_render: ^1.0.5 copied to clipboard
A plugin that provides you with intermediate PDF rendering APIs and easy-to-use Flutter Widgets.
import 'package:flutter/material.dart';
import 'package:pdf_render/pdf_render_widgets.dart';
void main() => runApp(new MyApp());
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
final controller = PdfViewerController();
@override
void dispose() {
controller.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new Scaffold(
appBar: new AppBar(
title: ValueListenableBuilder<Object>(
// The controller is compatible with ValueListenable<Matrix4> and you can receive notifications on scrolling and zooming of the view.
valueListenable: controller,
builder: (context, _, child) =>
Text(controller.isReady ? 'Page #${controller.currentPageNumber}' : 'Page -')),
),
backgroundColor: Colors.grey,
body: PdfViewer.openAsset(
'assets/hello.pdf',
viewerController: controller,
params: PdfViewerParams(
padding: 10,
minScale: 1.0,
),
),
floatingActionButton: Column(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
FloatingActionButton(
child: Icon(Icons.first_page),
onPressed: () => controller.ready?.goToPage(pageNumber: 1),
),
FloatingActionButton(
child: Icon(Icons.last_page),
onPressed: () => controller.ready?.goToPage(pageNumber: controller.pageCount),
),
],
),
),
);
}
}