C# Winform打开和预览PDF,方法一:调用CefSharp包,内嵌浏览器
开发上位机过程中遇到软件要内嵌说明书的需求,需要用按钮调出带有文字和图片的操作手册。思虑再三后觉得用一个窗口显示操作手册pdf文件的方式,于是找到了一个CefSharp的nuget包能够用来显示pdf。
一、预览效果
二、实现步骤
1、右击需要加pdf预览功能的项目,安装CefSharp.WinForms
2、在需要显示pdf的窗口增加一个放置pdf的panel
3、通过代码调用pdf文件显示到页面控件中
代码如下:
//获取文件路径,这里可以改成指定文件的默认路径
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "(*.PDF)|*.PDF";
if (dlg.ShowDialog() == DialogResult.OK)
{
//清理放置pdf的panel控件
panel_pdf.Controls.Clear();
//根据pdf文件路径创建一个ChromiumWebBrowser实例,用于显示PDF文件
ChromiumWebBrowser browser = new ChromiumWebBrowser(dlg.FileName);
// 设置浏览器控件的停靠方式为填充其父容器(即panel_pdf)
browser.Dock = DockStyle.Fill;
// 将浏览器控件添加到panel_pdf控件中
panel_pdf.Controls.Add(browser);
}
三、方法优缺点
1、优点
- 操作简单,下载个包,几行代码就能实现pdf阅读
- 自带多浏览器对pdf的操作、目录预览、缩放等功能
2、缺点
- 相当于是内嵌了个浏览器,占用控件比较大,大小为200多MB