从内存流中读取已存储的PDF

工艺

我正在使用C#和SQLServer 2012进行数据库项目。在我的一种表单中,我有一个PDF文件,其中包含一些其他信息,这些文件存储在表中。这可以成功运行,但是当我要检索存储的信息时,显示PDF文件时会遇到问题,因为我无法显示它,也不知道如何显示它。

我读过一些文章,说它不能从内存流中使用Adobe PDF查看器显示它,有什么办法吗?

这是我从数据库中检索数据的代码:

            sql_com.CommandText = "select * from incoming_boks_tbl where [incoming_bok_id]=@incoming_id and [incoming_date]=@incoming_date";
            sql_com.Parameters.AddWithValue("incoming_id",up_inco_num_txt.Text);
            sql_com.Parameters.AddWithValue("incoming_date", up_inco_date_txt.Text);
            sql_dr = sql_com.ExecuteReader();
            if(sql_dr.HasRows)
            {
                while(sql_dr.Read())
                {
                    up_incoming_id_txt.Text = sql_dr[0].ToString();
                    up_inco_num_txt.Text = sql_dr[1].ToString();
                    up_inco_date_txt.Text = sql_dr[2].ToString();
                    up_inco_reg_txt.Text = sql_dr[3].ToString();
                    up_inco_place_txt.Text = sql_dr[4].ToString();
                    up_in_out_txt.Text = sql_dr[5].ToString();
                    up_subj_txt.Text = sql_dr[6].ToString();
                    up_note_txt.Text = sql_dr[7].ToString();
                    string file_ext = sql_dr[8].ToString();//pdf file extension
                    byte[] inco_file = (byte[])(sql_dr[9]);//the pdf file
                    MemoryStream ms = new MemoryStream(inco_file);
                    //here I don't know what to do with memory stream file data and where to store it. How can i display it?
                }
            }
稻田

这个答案应该给你一些选择:如何使用C#渲染pdf。


过去,我曾使用过Google的开源PDF渲染项目-PDFium

有一个名为PdfiumViewer的C#nuget软件包,该软件包为PDFium提供了C#包装,并允许显示和打印PDF。

它直接与Streams一起使用,因此不需要将任何数据写入磁盘

这是我来自WinForms应用程序的示例

    public void LoadPdf(byte[] pdfBytes)
    {
        var stream = new MemoryStream(pdfBytes);
        LoadPdf(stream)
    }

    public void LoadPdf(Stream stream)
    {
        // Create PDF Document
        var pdfDocument = PdfDocument.Load(stream);

        // Load PDF Document into WinForms Control
        pdfRenderer.Load(_pdfDocument);
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从内存流中读取多个位图

来自分类Dev

如何在angularjs中读取pdf流

来自分类Dev

如何在内存流中获取word文件,将其存储在缓冲区中并以PDF格式返回?

来自分类Dev

读取存储在存储器或内存中的文件

来自分类Dev

在C中以流方式读取和处理内存XML数据

来自分类Dev

如何在python的内存中从Google Drive读取(流)文件?

来自分类Dev

如果我从 WebRequest.GetResponseStream 中读取流,我是从内存还是网络中读取

来自分类Dev

逐行读取文件还是存储在内存中?

来自分类Dev

逐行读取文件还是存储在内存中?

来自分类Dev

如何分块读取要存储在内存中的文件

来自分类Dev

NextJS问题读取本地存储中已存在的项目

来自分类Dev

存储和读取流数据

来自分类Dev

从流中读取

来自分类Dev

从文件或流中读取

来自分类Dev

火花流状态存储 - 内存使用

来自分类Dev

从流中读取pdf时找不到PDF标头签名,

来自分类Dev

如何读取从iDTCPServer发送的内存流中的非拉丁字符?

来自分类Dev

读取SharedArrayBuffer中的内存

来自分类Dev

如何从PDFTron保存pdf注释的内存流?

来自分类Dev

如何从内存中删除流?

来自分类Dev

内存文件/流中的pylint

来自分类Dev

如何从内存中删除流?

来自分类Dev

使用iTextSharp将文本添加到内存流中的现有多页PDF文档

来自分类Dev

如何从存储在内存中的excel表中读取值c#

来自分类Dev

读取存储在内存位置的值

来自分类Dev

两次读取输入流而不将其存储在内存中

来自分类Dev

熊猫-读取以字符串形式存储在内存中的csv到数据帧

来自分类Dev

Node.js fs.readFile将读取的数据存储在内存中

来自分类Dev

通过FTP逐行读取CSV,而无需将整个文件存储在内存/磁盘中

Related 相关文章

热门标签

归档