如何将XPS文件转换为BMP文件 vb.net

如何将XPS文件转换为BMP文件

XPS是一种XML标记格式,以Windows Presentation Foundation矢量格式表示页面的内容。 XPS Document Writer允许您使用Windows上运行的任何程序来创建.xps文件。 XPS文档的打印效果与屏幕上的效果相同。 它们也很容易共享,因为您可以在装有XPS查看器的任何计算机上查看它们,即使该计算机没有用于创建原始文档的相同程序。

下面的VB.NET程序将xps文档转换为位图图像。 创建一个新的VB.NET项目,并将一个Button添加到Form,并将以下引用添加到您的项目中。

转到项目->添加引用,然后从.Net选项卡中选择这些文件

Windowsbase.dll

ReachFramework.dll

PresentationFramework.dll

PresentationCore.dll

Imports System
Imports System.IO
Imports System.IO.Packaging
Imports System.Windows.Documents
Imports System.Windows.Xps.Packaging
Imports System.Windows.Media.Imaging
Imports System.Collections.Generic
Imports System.Windows.Forms
Imports System.Text
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Dim xpsFile As String = "c:\Completed-Form.xps"
            xpsToBmp(xpsFile)
            MessageBox.Show("Done")
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub

    Public Shared Sub xpsToBmp(ByVal xpsFile As String)
        Dim xps As New XpsDocument(xpsFile, System.IO.FileAccess.Read)
        Dim sequence As FixedDocumentSequence = xps.GetFixedDocumentSequence()

        For pageCount As Integer = 0 To sequence.DocumentPaginator.PageCount - 1
            Dim page As DocumentPage = sequence.DocumentPaginator.GetPage(pageCount)
            Dim toBitmap As New RenderTargetBitmap(CInt(page.Size.Width), CInt(page.Size.Height), 96, 96, System.Windows.Media.PixelFormats.[Default])

            toBitmap.Render(page.Visual)

            Dim bmpEncoder As BitmapEncoder = New BmpBitmapEncoder()
            bmpEncoder.Frames.Add(BitmapFrame.Create(toBitmap))

            Dim fStream As New FileStream("c:\xpstobmp" & pageCount & ".bmp", FileMode.Create, FileAccess.Write)
            bmpEncoder.Save(fStream)
            fStream.Close()
        Next
    End Sub
End Class
Imports System
Imports System.IO
Imports System.IO.Packaging
Imports System.Windows.Documents
Imports System.Windows.Xps.Packaging
Imports System.Windows.Media.Imaging
Imports System.Collections.Generic
Imports System.Windows.Forms
Imports System.Text
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Dim xpsFile As String = "c:\Completed-Form.xps"
            xpsToBmp(xpsFile)
            MessageBox.Show("Done")
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub

    Public Shared Sub xpsToBmp(ByVal xpsFile As String)
        Dim xps As New XpsDocument(xpsFile, System.IO.FileAccess.Read)
        Dim sequence As FixedDocumentSequence = xps.GetFixedDocumentSequence()

        For pageCount As Integer = 0 To sequence.DocumentPaginator.PageCount - 1
            Dim page As DocumentPage = sequence.DocumentPaginator.GetPage(pageCount)
            Dim toBitmap As New RenderTargetBitmap(CInt(page.Size.Width), CInt(page.Size.Height), 96, 96, System.Windows.Media.PixelFormats.[Default])

            toBitmap.Render(page.Visual)

            Dim bmpEncoder As BitmapEncoder = New BmpBitmapEncoder()
            bmpEncoder.Frames.Add(BitmapFrame.Create(toBitmap))

            Dim fStream As New FileStream("c:\xpstobmp" & pageCount & ".bmp", FileMode.Create, FileAccess.Write)
            bmpEncoder.Save(fStream)
            fStream.Close()
        Next
    End Sub
End Class

Imports System
Imports System.IO
Imports System.IO.Packaging
Imports System.Windows.Documents
Imports System.Windows.Xps.Packaging
Imports System.Windows.Media.Imaging
Imports System.Collections.Generic
Imports System.Windows.Forms
Imports System.Text
Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Try
            Dim xpsFile As String = "c:\Completed-Form.xps"
            xpsToBmp(xpsFile)
            MessageBox.Show("Done")
        Catch ex As Exception
            MessageBox.Show(ex.Message)
        End Try
    End Sub

    Public Shared Sub xpsToBmp(ByVal xpsFile As String)
        Dim xps As New XpsDocument(xpsFile, System.IO.FileAccess.Read)
        Dim sequence As FixedDocumentSequence = xps.GetFixedDocumentSequence()

        For pageCount As Integer = 0 To sequence.DocumentPaginator.PageCount - 1
            Dim page As DocumentPage = sequence.DocumentPaginator.GetPage(pageCount)
            Dim toBitmap As New RenderTargetBitmap(CInt(page.Size.Width), CInt(page.Size.Height), 96, 96, System.Windows.Media.PixelFormats.[Default])

            toBitmap.Render(page.Visual)

            Dim bmpEncoder As BitmapEncoder = New BmpBitmapEncoder()
            bmpEncoder.Frames.Add(BitmapFrame.Create(toBitmap))

            Dim fStream As New FileStream("c:\xpstobmp" & pageCount & ".bmp", FileMode.Create, FileAccess.Write)
            bmpEncoder.Save(fStream)
            fStream.Close()
        Next
    End Sub
End Class
(0)

相关推荐

  • 将pdf文件转换为word文件的最简单方法

    很多网友想知道怎么把PDF文件转换为word文件,方便编辑和使用,小编这里就教大家使用“福昕阅读器”这款软件可以轻松一步搞定。当然前提是你安装了word和福昕阅读器。 福昕阅读器是一款小巧高效的pdf ...

  • win7系统把PDF文件转换为TXT文件的教程

    win7系统把PDF文件转换为TXT文件的教程 1.在网上搜索到类似的,可以将PDF格式文件转换成TXT文件的工具,这个功能是Windows系统中没有的,需要借助第三方软件来完成.搜索到类似的格式转换 ...

  • 电脑如何使用ps将png文件转换为jpg文件

    ps是我们现在经常使用的照片编辑软件.今天小编就告诉大家电脑如何使用ps将png文件转换为jpg文件.具体如下:1. 首先我们需要在手机中打开PS.2. 在打开的主界面中点击打开选项.3. 选择png ...

  • 如何将proe文件转换为solidworks文件

    proe和solidworks都是非常实用的制图软件,有些用户想知道如何将proe文件转换为solidworks文件,接下来小编就给大家介绍一下具体的操作步骤.具体如下:1. 首先第一步打开电脑中的[ ...

  • 如何用WPS将PDF文件转换为Word文件

    大家都很熟悉如何用word去编辑文件,但有时候我们需要的资源文件是pdf格式,这时将pdf文件转换为word文件就很有必要.将文件转换为word方便我们对文件内容复制,剪切的编辑. 操作方法 01 打 ...

  • uvz(pdg)格式文件转换为pdf文件

    把uvz格式文件转换为pdf文件 操作方法 01 把.uvz,改为.zip文见格式,然后解压出来,得到一些列>pdg文件 首先下载上面的两个文件,然后解压.可以看到图中所示的情况 02 点击Pd ...

  • 如何将视频文件转换为音频文件

    对于爱听歌的朋友们,听到一首好的歌曲,可是只能下载视频并不能直接下载歌曲,很多伙伴就很伤心了,今天我教大家如何将视频文件转换为音频文件 操作方法 01 首先打开一部视频,大家可以看到这里是视频文件 0 ...

  • 利用eps格式将AI文件转换为CorelDRAW文件

    Illustrator和CorelDRAW是学平面设计必须会使用的矢量绘图软件,很多习惯了使用CorelDRAW软件的朋友会想把ai文件转到cdr中来编辑,这就涉及到文件格式转换的问题,ai格式怎么转 ...

  • word2013将docx文件转换为doc文件的方法

    doc文件是word早期文档的默认后缀名,现在新版word默认为docx文件.但由于历史原因,doc文件尤其是office2003 doc文件用得比较普遍.因此,本就介绍一下将docx文件转换为doc ...