在Winform中建立可视化的Doc文档预览、打印、PDF转换功能

Spire.Office是一个国产的文档管理、操作类库,.NET和Java类库都是非可视化实现相关功能(纯后端),那么Spire.Doc在Winform中建立可视化的Doc文档预览、打印、PDF转换功能是怎么搞定的,今天花了几分钟尝试了下,还不错。

 

最终实现的效果,带了点文控的功能

官方给的实现方法太麻烦,我精简了一下,需要的朋友可以下个Spire.DocViewer类库试一下。

using Spire.DocViewer.Forms; //加载类库

//在Load方法里直接实例化功能,并绑定其在界面中的位置
DocViewer docViewer = new DocViewer();
            try
            {
                docViewer.Parent = this; //在大多数情况下,您的Winform界面应该存在Panel、GroupBox等,您可以直接将其绑定,避免盲猜位置
                docViewer.Dock = DockStyle.Fill;//在父窗体中的拉伸效果
                // 预读一个文件
                docViewer.LoadFromFile(@"C:\Users\heyue\Desktop\20-21-9对比.doc");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

这个功能一般会应用于企业OA、ERP、文控系统中,因为一些电子合同、审批文件、加密文件等都会因为保密和便捷的原则被上传企业相关系统中,如果通过下载实现反复使用也就不能保证上述需求了。

同时在使用Doc文件阅读器的时候,往往会与OA、ERP、文控系统中的账号权限、业务需求绑定,实现Office软件和WPS内无法与业务系统集成的功能需要搭配Spire.Office里面的各种类库!

除上述代码外,我们还可以通过属性直接在Winform窗体中绘制,不过在我看来还是在窗体中构建父级容器比较方便:

     docViewer.IsToolBarVisible = true; // 工具栏是否可视
                docViewer.Location = new System.Drawing.Point(0, 0); //在窗体中的偏移量
                docViewer.Name = "docViewer1"; 
                docViewer.Size = new System.Drawing.Size(792, 573); // 阅读器的大小
                docViewer.TabIndex = 0;
                docViewer.Text = "docViewer1";

 

posted @ 2021-12-17 11:51  板砖博客  阅读(1507)  评论(0编辑  收藏  举报