首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >发送pdf附在电子邮件中的颤音

发送pdf附在电子邮件中的颤音
EN

Stack Overflow用户
提问于 2022-07-19 12:02:17
回答 1查看 226关注 0票数 0

我需要发送一封电子邮件与生成的pdf附件。

现在,我成功地生成了pdfs,并且我可以将它们保存到电话内存中,为此,我遵循以下文章:将颤振应用程序屏幕导出为PDF

但现在我想把它自动附加到电子邮件和发送。有了那篇文章里的信息,这是不可能的。因为它引导我到一个屏幕,在其中我必须选择pdf参数和pdf名称。

下面是我用来生成PDF的代码:

代码语言:javascript
运行
复制
void printScreen() {
    Printing.layoutPdf(onLayout: (PdfPageFormat format) async {
      final doc = pw.Document();

      final image = await WidgetWraper.fromKey(
        key: printKey,
        pixelRatio: 2.0,
      );
      doc.addPage(pw.Page(
          pageFormat: format,
          build: (pw.Context context) {
            return pw.Center(
              child: pw.Expanded(
                child: pw.Image(image),
              ),
            );
          }));
      return doc.save();
    });
  }

要发送电子邮件,我正在阅读颤振电子邮件发件人软件包的文档,但我不知道如何用预定义的名称自动生成PDF,将其附加到电子邮件中,然后发送。

EN

回答 1

Stack Overflow用户

发布于 2022-07-19 13:41:17

正如您已经提到的,您可以生成PDF并将它们保存在电话内存中,现在您只需要在电子邮件构造函数中传递附件路径(其中保存附件文件)。

完成发送方法代码。

代码语言:javascript
运行
复制
Future<void> send() async {
    final Email email = Email(
      body: _bodyController.text,
      subject: _subjectController.text,
      recipients: [_recipientController.text],
      attachmentPaths: attachments,
      isHTML: isHTML,
    );

    String platformResponse;

    try {
      await FlutterEmailSender.send(email);
      platformResponse = 'success';
    } catch (error) {
      print(error);
      platformResponse = error.toString();
    }

    if (!mounted) return;

    ScaffoldMessenger.of(context).showSnackBar(
      SnackBar(
        content: Text(platformResponse),
      ),
    );
  }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73036531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档