簡體   English   中英

如何將Powerpoint演示文稿的Blob數據轉換為UI中的圖像滑塊

[英]how to convert blob data of a power point presentation into a image slider in the UI

問題:我有一個將.pptx文件作為blob上傳到數據庫的功能。 嘗試開發一個功能,在該功能中我需要讀取Blob數據,將其轉換為Powerpoint演示文稿(.pptx)對象,然后將每個單獨的幻燈片作為獨立的圖像獲取到UI(asp.net)中,以便用戶可以滑動圖像相繼。

當前狀態:我已將Blob數據轉換/定義為base64字符串。 我如何將其轉換為.pptx文件對象,然后將它們作為單獨的幻燈片圖像在UI中獲得。

當前狀態:我已將Blob數據轉換/定義為base64字符串。 我如何將其轉換為.pptx文件對象,然后將它們作為單獨的幻燈片圖像在UI中獲得。

PS:我不希望將文件下載到本地計算機。

有什么辦法可以做到這一點。 當前對該功能的性能考慮不多,只需要按預期工作即可

我所做的就是:將Blob數據轉換為內存流,然后使用文件流將數據寫入文件,並將其存儲在Web服務器中。 后來提取了特定文件,並將每個pptx幻燈片轉換為圖像,然后將這些圖像用於幻燈片放映。

將Blob數據轉換為文件 (bData是Blob數據的字節數組)

        Using CompressedMemoryStream As New MemoryStream(bData),
                   DecompressedMemoryStream As New MemoryStream(),
                   DecompressionStream As New Compression.DeflateStream(CompressedMemoryStream, Compression.CompressionMode.Decompress)
            DecompressionStream.CopyTo(DecompressedMemoryStream)
            Dim byteData = DecompressedMemoryStream.ToArray()
            Dim fileStream = New FileStream(filePath, FileMode.CreateNew, FileAccess.Write)
            fileStream.Write(byteData, 0, byteData.Length)
            fileStream.Close()
        End Using

將生成的文件轉換成多個圖像以進行幻燈片顯示

        Dim pptapplication As New Microsoft.Office.Interop.PowerPoint.Application
        Dim prsPres As Presentation = pptapplication.Presentations.Open(filePath, MsoTriState.msoCTrue, MsoTriState.msoTriStateMixed, MsoTriState.msoFalse)
        Dim slidesCount = prsPres.Slides.Count()
        If Not isFileExists Then
            For i As Integer = 1 To slidesCount
                prsPres.Slides(i).Export(dir + "\" + "slide" + i.ToString() + ".png", "png", 960, 720)
            Next
        End If
        prsPres.Close()
        pptapplication.Quit()

如果任何人都可以提出一種將Blob數據直接轉換為圖像文件而不是將Blob數據轉換為原始文件然后轉換為圖像的方法,那將非常有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM