【问题标题】:CrossPlatform Xamarin forms : How to create PDF file in local storage跨平台 Xamarin 表单:如何在本地存储中创建 PDF 文件
【发布时间】:2019-07-09 18:46:19
【问题描述】:

您好,我正在尝试使用由 net standard 2.0 Xamarin forms 制作的跨平台 APP 创建 PDF 文件。

我有一个相机拍摄的照片流,我想将它添加到我的 pdf 中

// here i check and grant permission


if (status == PermissionStatus.Granted)
{

                        PhotoImage.Source = ImageSource.FromStream(() => { return photo.GetStream(); });
                        Stream a = photo.GetStream();
                        string fileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "test.pdf");

                        Document document = new Document();

                        using (var stream = new FileStream(fileName, FileMode.Create, FileAccess.Write, FileShare.Write))
                        {
                            PdfWriter.GetInstance(document, stream);
                            document.Open();
                            using (var imageStream = photo.GetStream())
                            {
                                var image = Image.GetInstance(imageStream);
                                document.Add(image);
                            }
                            document.Close();
                        }

                    }

文件 test.pdf 未在路径中创建:

"/data/user/0/com.companyname.XXX/files/.config/test.pdf"

或者至少我在检查手机时看不到它。

我还测试了路径: "/data/user/0/com.companyname.XXX/files/test.pdf"

请帮忙。

编辑:我正在使用 iTextSharp

【问题讨论】:

  • 您可以使用bool doesExist = File.Exists(fileName);来检查文件是否存在。
  • 是的,实际上该文件确实存在我只是看不到它:stackoverflow.com/a/47241426/11328573

标签: c# android ios xamarin.forms cross-platform


【解决方案1】:

您可以使用 iTextSharp NuGet 来执行此操作。 或者首先您可以尝试在单个项目页面中创建单个文件,例如 MainActivity.cs

【讨论】:

    猜你喜欢
    • 2018-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    • 1970-01-01
    • 2018-01-17
    相关资源
    最近更新 更多