ASP.Net中实现上传过程中将文本文件转换成PDF的方法

简介: iTextSharp是一个常用的PDF库,我们可以使用它来创建、修改PDF文件或对PDF文件进行一些其他额外的操作.本文讲述了如何在上传过程中将文本文件转换成PDF的方法。 基本工作 在开始之前,我们需要从这个URL下载iTextSharp。

iTextSharp是一个常用的PDF库,我们可以使用它来创建、修改PDF文件或对PDF文件进行一些其他额外的操作.本文讲述了如何在上传过程中将文本文件转换成PDF的方法。

基本工作

在开始之前,我们需要从这个URL下载iTextSharp。除此之外,也可以使用”NuGet Package Manager” 将它从NuGet上下载到项目的解决方案中。下面通过屏幕截图来进行讲解。

代码

为了操作简洁,我设计了一个带上传控件和一个按钮的webform。HTML代码如下: 

<!DOCTYPE html>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head runat="server">  
    <title></title>  
</head>  
<body>  
    <form id="form1" runat="server">  
        <div>  
            <asp:Label ID="lbl" runat="server" Text="Select a file to upload:"></asp:Label>  
            <asp:FileUpload runat="server" ID="fu" /><br />  
            <asp:Button runat="server" ID="btnUpload" Text="Upload" OnClick="btnUpload_Click" />  
        </div>  
    </form>  
</body>  
</html>  

 后台代码如下:

protected void btnUpload_Click(object sender, EventArgs e)  
        {  
            // Check that upload control had file  
            if(fu.HasFile)  
            {  
                // Get the Posted File  
                HttpPostedFile pf = fu.PostedFile;  
                Int32 fileLen;  
                // Get the Posted file Content Length  
                fileLen = fu.PostedFile.ContentLength;  
                // Create a byte array with content length  
                Byte[] Input = new Byte[fileLen];  
                // Create stream   
                System.IO.Stream myStream;  
                 // get the stream of uploaded file  
                myStream = fu.FileContent;  
                // Read from the stream  
                myStream.Read(Input, 0, fileLen);  
                // Create a Document  
                Document doc = new Document();  
                // create PDF File and create a writer on it  
                PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(string.Concat(Server.MapPath("~/Pdf/PdfSample"), ".pdf"), FileMode.Create));  
                // open the document  
                doc.Open();  
                // Add the text file contents   
                doc.Add(new Paragraph(System.Text.Encoding.Default.GetString(Input)));  
                // Close the document  
                doc.Close();  
            }  
        }  

当运行应用程序时,它将显示一个上传控件和一个上传按钮。转换后,PDF文件就会存储在“PDF”文件夹下。当然在运行应用程序之前,我们需要在解决方案下创建一个命名为“PDF”的文件夹。

输出结果

目录
相关文章
|
8天前
|
开发框架 前端开发 .NET
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
为了便于大家查找,特将之前开发的.Net Core相关的五大案例整理成文,共计440页,32w字,免费提供给大家,文章底部有PDF下载链接。
19 1
福利来袭,.NET Core开发5大案例,30w字PDF文档大放送!!!
|
1月前
|
测试技术 数据处理 Python
测试报告导出PDF和excel的方法
测试报告导出PDF和excel的方法
|
7月前
|
文字识别
办公技巧 | 免费的PDF转Word方法,从此不再求人!
这种可以直接选择文字的就是“文本型PDF”,通常是由word等文档导出的,还保留着文字、字形等格式,想要转换回word文档也相对简单。
132 0
|
8月前
|
开发框架 前端开发 .NET
ASP.NET Core MVC从入门到精通[PDF版]
ASP.NET Core MVC从入门到精通[PDF版]
188 0
|
9月前
条码二维码输出PDF文件的方法
有些印刷或打印设备是以PDF文件的导入方式来批量打印,Label mx 标签软件可以满足这个要求,支持任何PDF虚拟打印机将整个标签以排版的方式多页输出为一个PDF文件。
82 0
java实现pdf电子合同设置合同编号
现在有一些用户信息合同,要求在合同上添加合同编号,合同编号要求按照一定规则系统生成.看过很多同学的实现方案,也尝试过很多,为了方便以后有同样需求的同学可以节省时间,进行了相关内容的梳理.
java实现pdf电子合同设置合同编号
|
JavaScript 前端开发
React+html2canvas+jspdf+antd快速实现前端pdf预览及打印
文章的总结目标实际上就是一个前端pdf打印组件,由於能在往后的其他项目中得以快速上手,并能根据所在项目需要快速自定义扩展,因此組件非常简陋直白,文章是实践过程的记录产物,并不保证完全正确,仅作参考。
React+html2canvas+jspdf+antd快速实现前端pdf预览及打印
Markdown 文件转化为 PDF,这可能是我能想到比较好的方法了!
Markdown 文件转化为 PDF,这可能是我能想到比较好的方法了!
328 0
Markdown 文件转化为 PDF,这可能是我能想到比较好的方法了!
|
存储 JavaScript 前端开发
js实现灵活下载和预览网络链接pdf文件
js实现灵活下载和预览网络链接pdf文件
817 0
Java预览及打印PDF的三种方法
Java预览及打印PDF的三种方法
3103 1
Java预览及打印PDF的三种方法

相关产品

  • 云迁移中心