【问题标题】:How to print the current UI of Xamarin form crossplatform application如何打印 Xamarin 表单跨平台应用程序的当前 UI
【发布时间】:2017-12-25 21:02:19
【问题描述】:

我想打印 Xamarin.Forms 跨平台应用程序的当前 UI。是否有任何可用的插件或库支持 android ios 和 uwp 项目来执行此操作?我非常感谢您指出正确的方向,以便开始在我的应用程序中实现此类功能。

【问题讨论】:

标签: xamarin xamarin.forms


【解决方案1】:

我会分两步解决这个问题。首先,您需要将当前的视觉效果转换为可打印的文件类型。因此,假设我们主要使用移动设备,那么我们应该使用“屏幕截图”机制。

另一个堆栈溢出帐户HERE 有一个很好的答案,它指导您使用依赖注入在 xamarin 表单中设置屏幕截图。小伙子的回答直截了当,易于理解。

一旦您将屏幕截图保存为 png 或 jpeg 等格式,就可以打印它了。 xamarin 开发者论坛上有很多专门讨论从 xamarin 打印的问题的主题,可以找到这些主题的集合HERE.

首先值得一提的是,xamarin 表单 (XF) 支持的每个平台都有自己的打印机制。 XF 不为以跨平台方式打印提供任何抽象。您需要为每一层编写打印逻辑,并使用 DependencyServices 将其公开给 XF。

Android Printing - 这是一个在 android 中打印的链接。

iOS Printing - 这是在 iOS 中打印的链接 (Heres a sample app to help you as well.)

正如我之前提到的,由于 xamarin 尚未在 Forms 中为此创建简单的跨平台机制,因此它并不像您想象的那么简单,并且确实需要一些工作来实现。但没有一项工作过于复杂,它使用标准的依赖模式,实际上只是需要的大量代码看起来有点令人生畏。

【讨论】:

  • 是否有任何报告工具来生成数据报告,如发票、销售报告,可用于 xamarin.forms 跨平台应用程序,支持所有平台。如果这些东西可用,那么很容易从这些工具中打印出来。
  • 据我所知,我无法找到任何专门提供此功能的插件。老实说,我认为您必须如上所述构建它。 =)
猜你喜欢
  • 2018-04-03
  • 1970-01-01
  • 2018-06-20
  • 1970-01-01
  • 1970-01-01
  • 2015-10-20
  • 2013-12-30
  • 1970-01-01
  • 2016-09-19
相关资源
最近更新 更多