c# 实现PDF文件预览功能

我要做一个小程序,主要功能是用C#实现对PDF文件的预览,对文本类型的文件可以实现预览,但是从网上看到PDF文件好像不能以流的形式读取,还有一些比较繁琐的需要用第三方控件的解决办法,请教各位高手有没有简单可行的方法,万分感谢!
忘说了一个条件,我的程序是winform的,还有就是我的PDF文件是扫描进电脑的,需要先进行预览再保存到硬盘上,类似于扫描仪自带的扫描软件,但我不想用自带的软件,自已想做一个可以自己随意控制的.

利用Adobe PDF Reader 控件,实现在Winform中预览PDF文档。 实现方法如下:

(1)前提条件

必须事先在计算机安装Adobe Reader软件。Adobe Reader是免费软件,可以从Adobe官网下载安装

(2)在Visual Studio中新建一个“Windows 窗体应用程序”项目

(3)在工具箱上点鼠标右键-->选择项 -->COM组件-->Adobe PDF Reader

(4)在窗体Form1上布置一个Adobe PDF Reader控件和一个Button控件

(5)Form1窗体代码Form1.cs

using System;
using System.Windows.Forms;
using System.IO;
 
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            button1.Text = "打开PDF文档...";
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            // 利用OpenDialog对话框,选择要显示的PDF文档
            OpenFileDialog openDlg = new OpenFileDialog();
            openDlg.Filter = "PDF文档|*.pdf";
            if (openDlg.ShowDialog() == DialogResult.OK)
            {
                // 在Adobe PDF Reader中显示PDF文档
                axAcroPDF1.LoadFile(openDlg.FileName);
            }
        }
    }
}

(6)运行效果

程序启动

点击“打开PDF文档...”按钮,显示对话框

打开并显示PDF文档

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-10

你可以试一下 Grapecity Documents For PDF。这是一款.NET PDF 文档API,适用于所有 .NET Standard 2.0 及以上标准的平台,以编码的方式,无需 Adobe Acrobat 组件 ,超快批量处理 PDF 文件,满足关于 PDF 文档的一切需求。

Grapecity Documents For PDF 最大的特色总结如下:

产品架构灵活、轻量

轻量级产品架构可节省系统处理 PDF 时占用的内存和时间。与同类产品相比,GrapeCity Documents for PDF 可用于生成更高质量的 PDF 文档。

完全兼容 Adobe PDF

GrapeCity Documents for PDF 符合 Adobe PDF 1.7 规范,可在不影响 PDF 文档功能和设计的情况下,完成创建、编辑、存储、合并、拆分等多种功能。

全文本支持

GrapeCity Documents for PDF 支持 PDF 文档的所有文本和段落格式,同时还支持特殊字符、多种语言(包括中文)、RTL 格式、垂直拆分和旋转文本。

100 种以上的 PDF 功能

使用 GrapeCity Documents for PDF,您可以随意添加、删除、拷贝、移动、保护、更改页面大小、方向、转换为线性化 PDF 以及压缩 PDF 文件。******

全面支持 .NET 平台

GrapeCity Documents for PDF 支持所有 .NET 平台,并允许您在应用程序中与 .NET Core 2.0 +、.NET Framework、Mono、Xamarin.iOS 和 Xamarin.Android 一起使用。

将应用程序部署到云端

GrapeCity Documents 可用于云应用程序开发,使用 NuGet 和 GrapeCity Documents for PDF,您可直接部署到百度云、阿里云、腾讯云、Azure 和 AWS 中。

简单来说,使用 GrapeCity Documents for PDF 可以轻松实现:

    可生成线性化 PDF 文档,通过 Internet 更快地进行查看

    用代码生成、加载、编辑、合并/拆分大型 PDF 文档

    支持多种语言(如中文)、特殊字符以及 RTL 格式

    支持 100 种以上的 PDF 功能

    其他核心功能 ******

第2个回答  推荐于2017-12-16
其实没有那么麻烦
你用页面直接加载那个PDF文件就可以了 、、
只需要将那个PDF文件的URL给一个页面然后这个页面在ONLOAD的时候直接转向这个PDF文件的地址 这样的话就可以达到PDF文件的预览效果了本回答被网友采纳
第3个回答  2018-06-28
安装与配置

1
从官网下载SumatraPDF2.4的安装版。
(下面以 Windows8 操作系统中为例,Windows7 中界面略有差别,在文末将择要图示。)

2
双击安装文件,启动安装。这时出现第一个安装界面。
在该界面中,我们不要急着直接单击右边的“安装SumatraPDF”按钮,因为这将使用默认参数安装该软件,那不是我们需要的结果。

3
单击左边的“选项”按钮,进入一个高级配置界面。红柜中的“使用Windowsd的PDF预览功能”就是我们需要选择的项。

4
在这里我还同时对安装目录等进行了自己需要的配置。

5
配置完成后,单击右下方的“安装SumatraPDF”按钮,安装过程很快即可完成,弹出如下界面。此时您可以直接单击右上角“×”符号关闭安装程序,或者单击右下角“启动SumatraPDF”先试一试该软件。

6
下面是安装文件夹中的文件,比便携版的多很多哦。

END
具体应用

现在,进入一个包含pdf文件的文件夹。单击“查看”,进入查看页。

单击左上方“预览窗格”,文件夹右侧将出现一个预览区,该区域是可调节大小的。

这时单击选中您想要预览的pdf文件,在预览区就会立即出现该文档的内容,并且可通过最右侧的滚动条,查看完整个文档的内容。
为了显示整个文件夹的状态,本图示中pdf文档的预览区设置得比较小,具体应用时,可根据您的需要调整到足够大。

在Windows7中,打开预览窗格的方式与Windows8中有点不同。图示如下。本回答被网友采纳
c# 实现PDF文件预览功能
必须事先在计算机安装Adobe Reader软件。Adobe Reader是免费软件,可以从Adobe官网下载安装 (2)在Visual Studio中新建一个“Windows 窗体应用程序”项目 (3)在工具箱上点鼠标右键-->选择项 -->COM组件-->Adobe PDF Reader (4)在窗体Form1上布置一个Adobe PDF Reader控件和一个B

c#使用PdfiumViewer展示、打印pdf文档
PdfiumViewer提供了预览、放大、缩小、保存和打印等功能。这些功能通常可以通过工具栏上的按钮直接使用,无需额外编写代码。预览:点击预览按钮,或者通过代码直接加载PDF文件到PdfViewer控件中进行预览。打印:点击打印按钮,PdfiumViewer将调用系统的打印对话框,允许用户选择打印机、设置打印选项等,然后打印PDF...

c#使用PdfiumViewer展示、打印pdf文档
通过Nuget包管理器搜索并安装PdfiumViewer,然后准备PDF文件。在界面中添加PdfViewer控件和一个按钮,按钮事件用于加载并预览PDF文件。PdfiumViewer提供了预览、放大、缩小、保存和打印等功能,无需额外编写代码,使用方便。效果演示 通过添加一个PDF书籍文件,预览效果展现。点击保存和打印按钮,可以实现文档内...

PDF处理控件Aspose.PDF功能演示:在 C# 中为 PDF 文件生成缩略图
重复访问PDF文件中的每个页面。为每个页面创建缩略图。保存所有缩略图页面至同一文件或分别保存。通过以上指南,开发者能够轻松在C#环境中实现PDF文件缩略图生成。此外,Aspose.PDF for .NET库还提供更多关于C# PDF自动化操作的信息。若有疑问或需求帮助,随时联系技术支持。

Word处理控件Aspose.Words功能演示:使用C#对PDF文件进行进一步修改和转 ...
使用C#通过Aspose.Words对PDF文件进行进一步修改和转换的功能演示如下:加载PDF文档:使用C#编程接口,可以轻松加载PDF文档。Aspose.Words会构建文档对象模型,使所有内容和格式都能在内存中访问。示例代码:Document doc = new Document;转换PDF格式:Aspose.Words支持将PDF转换成多种格式,如DOCX、HTML或Mark...

Word处理控件Aspose.Words功能演示:使用C#对PDF文件进行进一步修改和转 ...
加载PDF文档:Aspose.Words的C#库允许通过Document构造函数从文件或流中加载PDF文档,构建其DOM,便于后续编辑。PDF转换为DOCX:加载PDF文档后,可以通过调用Document对象的Save方法,并指定输出格式为DOCX,轻松实现PDF到DOCX的转换。例如,通过几行代码即可实现这一功能,只需指定输出文件名和格式。添加数字...

C# 访问远程文件夹
上面有工具-->映射网络驱动器-->驱动器随便选一个(映射完成后显示的本地盘符),文件夹选择哪个共享文件夹。这样你就可以打开我的电脑 有个网络驱动器的盘。盘符是你刚刚选的驱动器,你就可以操作本地文件的方式来操作了 把那个共享文件夹映射到本地 就可以操作本地文件夹的方式操作远程文件了 ...

PDF处理控件Aspose.PDF功能演示:在 C# .NET 中创建标记的 PDF 文件
在C# .NET中使用Aspose.PDF创建带标签的PDF文件的关键功能包括:使用ITaggedContent接口:功能:该接口用于创建和管理PDF文件中的结构元素,以满足辅助技术和屏幕阅读器用户的需求。重要性:通过定义文档内容的逻辑结构,提升文档的友好性和智能化访问。实现多级结构:功能:可以设计和实现包含复杂布局和元素的...

PDF处理控件Aspose.PDF功能演示:使用 C# .NET 在 PDF 文件中创建表
您还能自定义PDF中表格的边框和边距。例如,调整边框宽度、样式以及顶部、底部、左侧和右侧边距。这里提供在C#中为PDF文件中的表格设置自定义边框和边距的指导。下图展示上述代码示例的输出。Aspose.PDF for .NET还提供对PDF中表格列调整的自定义功能,如使表格自动适应窗口或内容。下面的步骤展示了如何使用...

Word处理控件Aspose.Words功能演示:使用C#对PDF文件进行进一步修改和转 ...
首先,C#编程接口允许轻松加载PDF文档。一旦加载,Aspose.Words会构建文档对象模型,所有内容和格式都能在内存中访问。例如,你可以使用构造函数从本地文件或流加载PDF,如下所示:Document doc = new Document("path_to_your_pdf.pdf");转换是Aspose.Words的强大功能,它能将PDF转换成如DOCX、HTML或Mark...

相似回答