#android #flutter #dart #printing
Вопрос:
привет, я пытаюсь создать функцию для печати pdf-файла с помощью flutter. Принтер был обнаружен и успешно подключен через wifip2p
плагин.
Если вы используете принтер Android по умолчанию, есть функция сохранения pdf, но я хочу ее удалить. Но я не мог найти способ. Поэтому я сразу же выбрал вывод PDF при подключении к принтеру.
Знаете ли вы, как печатать после подключения к принтеру в flutter?
Пожалуйста, не говорите мне использовать printing
плагин
Мой поиск по печати и Исходный код ссылки
Поиск
import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:wifip2p/wifip2p.dart'; class SearchPrintDevice extends StatefulWidget { const SearchPrintDevice({Key? key}) : super(key: key); @override _SearchPrintDeviceState createState() =gt; _SearchPrintDeviceState(); } class _SearchPrintDeviceState extends Statelt;SearchPrintDevicegt; { @override Widget build(BuildContext context) { return Stack( children: lt;Widgetgt;[ Positioned( bottom: 30, right: 30, child: FloatingActionButton( onPressed: () async { try { await WifiP2P.discoverDevices(); } on PlatformException { print('Error!'); } }, child: Icon(Icons.search), ), ), ], ); } }
напечатать имя
import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:wifip2p/wifip2p.dart'; class WritePrinterName extends StatefulWidget { const WritePrinterName({Key? key}) : super(key: key); @override _WritePrinterNameState createState() =gt; _WritePrinterNameState(); } class _WritePrinterNameState extends Statelt;WritePrinterNamegt; { Futurelt;voidgt; connectToDevice(int position) async { try { await WifiP2P.connectToDevice(position); } on PlatformException { print('Error!'); } } @override Widget build(BuildContext context) { return Positioned( top: 70, left: 87, child: StreamBuilder( stream: WifiP2P.peerListChangeEvent, builder: (BuildContext context, AsyncSnapshotlt;Listlt;Stringgt;gt; snapshot) { if (snapshot.hasData) { Listlt;TextButtongt; list = []; for (int i = 0; i lt; snapshot.data!.length; i ) { list.add(TextButton( onPressed: () { connectToDevice(i); }, child: Text(snapshot.data![i]))); } return Column(children: list); } return Text( "검색된 프린터가 없습니다.", style: TextStyle( fontSize: 20, fontWeight: FontWeight.bold, ), ); }), ); } }