首页 > 编程语言 >使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)

使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)

时间:2023-03-12 10:32:28浏览次数:41  
标签:PdfViewer 另存为 void System 源码 PDF fileDialog using pdf


场景

Winform控件-DevExpress18下载安装注册以及在VS中使用:

参照以上将DevExpress安装并引进到工具箱。

这里使用的是VS2013所以安装的DevExpress是14版本。

DevExpress14以及注册机下载

效果

使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)_Click

 

实现

项目搭建

新建winfom程序,然后拖拽一个Pdfvieerr控件。然后添加一个Button按钮。

使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)_控件_02

 

PDF打开与预览实现

双击进入Button按钮的点击事件中

private void simpleButton2_Click(object sender, EventArgs e)
{
//打开pdf文件,并获取文件路径
string filePath = FileDialogHelper.OpenPdf();
//如果不为空
if (!string.IsNullOrEmpty(filePath))
{
//加载预览 其中pdfViewer1 与控件的name相对应
this.pdfViewer1.LoadDocument(filePath);
}
}

然后新建FileDialogHelper工具类,实现选择打开文件并返回路径的功能。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace PDFExport
{
class FileDialogHelper
{
public static string OpenPdf() {

OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.Multiselect = true;
fileDialog.Title = "请选择文件";
fileDialog.Filter = "所有文件(*pdf*)|*.pdf*"; //设置要选择的文件的类型
if (fileDialog.ShowDialog() == DialogResult.OK)
{
return fileDialog.FileName;//返回文件的完整路径
}
else {
return null;
}

}
}
}

PDF另存为实现

在窗体上再拖拽一个Button,双击进入其点击事件中。 

private void simpleButton1_Click_1(object sender, EventArgs e)
{

this.pdfViewer1.SaveDocument(@"D:\PDF\A.pdf");
}

注:

调用自带的SaveDocument()方法,这里传递的是保存的路径。

其还有个重载方法:

public void SaveDocument(Stream stream);

效果

 

使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)_C#_03

打印PDF实现

再拖拽一个按钮,双击进入其点击事件中。

private void simpleButton3_Click(object sender, EventArgs e)
{
this.pdfViewer1.Print();
}

效果

使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)_Click_04

 


标签:PdfViewer,另存为,void,System,源码,PDF,fileDialog,using,pdf
From: https://blog.51cto.com/BADAOLIUMANGQZ/6115513

相关文章

  • Winforn中DevExpress的TreeList中显示某路径下的所有目录和文件(附源码下载)
    场景Winform中DevExpress的TreeList的入门使用教程(附源码下载):在上面实现给TreeList赋值的基础上,将其数据源更改为本地某路径下的所有文件和目录。效果实现在原来的节点类中......
  • ModelViewSet的使用ViewSetMixin源码分析
    1.ModelViewSet的使用:   2.ModelViewSet的使用_urls中查询所有actions中{‘get’_‘list’}list的源码来源:   3.ModelViewSet的使用_urls中新增数据acti......
  • js逆向——小红书请求头参数X-s逆向(附源码)
    今天搞了一波web端小红书请求头参数X-s的逆向,给大伙分享一下逆向思路。逆向网站:https://www.xiaohongshu.com/explore。界面如下:  这是逆向参数:  通过全局搜索,发......
  • 赤峰互联网医院源码开发|智慧医院系统|在线问诊管理系统
     内蒙古|包头|赤峰互联网医院源码开发|智慧医院系统|在线问诊管理系统|乌海市|通辽市|呼和浩特市|乌海|鄂尔多斯市|呼伦贝尔市|兴安盟|巴彦淖尔盟|乌兰察布盟|锡林郭勒盟......
  • 智慧医院系统|智慧医院源码开发|在线问诊特点
    智慧医院主要是以电子病历为核心的信息化建设,这几年成为人们比较关注的一项工作,现在医院里面的发展是非常迅速的。现在医院里许多的一体机、自助机,包括现在用的手机的结算,预......
  • Gin使用及源码简析
    1.Gin简介前面通过两篇文章分享了GolangHTTP编程的路由分发、请求/响应处理。GolangHTTP编程及源码解析-路由分发GolangHTTP编程及源码解析-请求/响应处理可以看......
  • vue+leaflet示例:地图分屏对比展示(附源码下载)
    demo源码运行环境以及配置运行环境:依赖Node安装环境,demo本地Node版本:14.19.1。运行工具:vscode或者其他工具。配置方式:下载demo源码,vscode打开,然后顺序执行以下命令:(1)......
  • Vue——Vue v2.7.14 源码阅读之代码目录结构【一】
    前言这里主要说一些vue2.7.14源码的目录结构,其实这块有些目录并不重要,不过我还是想全面的描述下,详细的一些文件说明会随着源码解读来补充完善,其中描述如果有错的地方还......
  • Ubuntu(Linux)系统源码编译、移植SQLite
    1.编译后的文件2.配置lib路径3.可执行文件配置路径测试:XX@XXX:etc$sqlite3SQLiteversion3.17.02017-02-1316:02:40Enter".help"forusagehints.Connectedtoat......
  • Android源码下载
      最近在做Monkey二次开发的工作,边弄边在这里记录下(多平台发布),顺便可以和大家一起讨论下; Monkey的编译依赖于Android源码,所以要修改Monkey后打新jar包,需要完整的Andr......