国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C# 多張圖片合成一張PDF

這篇具有很好參考價值的文章主要介紹了C# 多張圖片合成一張PDF。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

????????我是將每張圖片轉(zhuǎn)為byte[],再將所有的字節(jié)數(shù)組轉(zhuǎn)為byte[][],然后對byte[][]進(jìn)行的處理,大家有其他格式的圖片要進(jìn)行處理的可以先轉(zhuǎn)為上述數(shù)據(jù)格式。

語種:C#

用到的第三方庫:PdfSharp.dll(可直接使用PDFsharp包),如下圖

C# 多張圖片合成一張PDF,C#,c#,pdf

思路大概如下:

①申明一個PDF文件對象(PdfDocument變量)

②遍歷我們要處理的所有圖片

③? ?申明一個PDF頁對象(PdfPage變量),申明一個畫板(XGraphics對象)隸屬于剛申明的PDF頁對象,然后用畫板將此次遍歷到的圖片(byte[])畫到PDF頁對象上,然后將PDF頁對象塞到第①步申明的PDF文件對象

④此時,遍歷完所有圖像了,PDF文件對象中也有我們要處理的所有圖片數(shù)據(jù)了,直接保存這份PDF文件對象就可以了。

下面是代碼:

 /// <summary>
        /// 保存PDF圖像【適用于小批量圖片】
        /// </summary>
        /// <param name="buffer">要處理的所有圖片數(shù)據(jù)</param>
        /// <param name="path">PDF的保存路徑</param>
        /// <returns></returns>
        public static void SavePdf(byte[][] buffer, string savePath)
        {
            if (buffer == null || buffer.Length == 0)
            {
                throw new Exception("文件流為空!");
            }             
            Verif(savePath);//此方法我用來驗證路徑,邏輯依自己的業(yè)務(wù)來寫就好,不需要可直接去掉。

            string folderPath = Path.GetDirectoryName(savePath);
            if (!Directory.Exists(folderPath))
            {
                Directory.CreateDirectory(folderPath);
            }
                
            PdfDocument doc = new PdfDocument();
            try
            {
                for (int i = 0; i < buffer.Length; i++)
                {
                    using (MemoryStream ms1 = new MemoryStream(buffer[i]))
                    {
                        //var stream = Image.FromStream(ms1);
                        //XImage img = XImage.FromGdiPlusImage(stream);
                        XImage img = XImage.FromStream(ms1);
                        PdfPage page = new PdfPage();
                        XGraphics xgr = XGraphics.FromPdfPage(page);
                        doc.Pages.Add(page);
                        xgr.DrawImage(img, 0, 0, page.Width.Value, page.Height.Value);//切記這里一定要指定寬高
                        
                        img.Dispose();
                    }
                }
                doc.Save(savePath);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                doc.Dispose();
                doc.Close();
            }
        }

雷點:

在畫圖像(即執(zhí)行xgr.DrawImage()函數(shù))時,一定要指定寬高,即上述代碼中的page.Width.Value和page.Height.Value,否則在處理橫圖時,會出現(xiàn)圖片顯示不全的bug.

C# 多張圖片合成一張PDF,C#,c#,pdf

好了,這篇文章就到這里,小伙伴們有什么建議和意見或者不懂的地方,評論區(qū)交流就好。文章來源地址http://www.zghlxwxcb.cn/news/detail-551355.html

到了這里,關(guān)于C# 多張圖片合成一張PDF的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uniapp:手寫簽名,多張圖合成一張圖

    uniapp:手寫簽名,多張圖合成一張圖

    要實現(xiàn)的內(nèi)容 :手寫簽名,協(xié)議內(nèi)容。點擊提交后:生成1張圖片,有協(xié)議內(nèi)容和簽署日期和簽署人。 實現(xiàn)的效果圖如下: 1、簽名頁面

    2024年02月15日
    瀏覽(61)
  • .Net C# 免費(fèi)PDF合成軟件

    .Net C# 免費(fèi)PDF合成軟件

    最近用到pdf合成,發(fā)現(xiàn)各種軟件均收費(fèi)啊,這個技術(shù)非常簡單,別人寫好的庫一大把,這里用到了PDFsharp,項目地址Home of PDFsharp and MigraDoc Foundation 軟件下載地址 https://download.csdn.net/download/g313105910/88014569 源碼下載地址 https://download.csdn.net/download/g313105910/88014573 廢話不多說,上

    2024年02月13日
    瀏覽(25)
  • C# 圖片轉(zhuǎn)PDF,PDF增加水印文字

    好久沒寫博客了,今天給大家分享一個圖片轉(zhuǎn)PDF的相關(guān)操作,也算是一次總結(jié)吧。 首先需要準(zhǔn)備動態(tài)庫itextsharp.dll,這個dll去網(wǎng)上下載,都可以下載到,C#對PDF的操作都是基于這個類庫來實現(xiàn)的。話不多說,直接上代碼。

    2024年02月09日
    瀏覽(29)
  • c#,將pdf文件轉(zhuǎn)換成圖片文件

    本文采用Adobe Acrobat9.0的COM組件,將Pdf文件的每一頁轉(zhuǎn)換成對應(yīng)的圖片文件。 開發(fā)環(huán)境:VS2010,.Net Framework4.0,Adobe Acrobat9.0。 工程中添加COM引用:Adobe Acrobat 9.0 Type Library(必須裝了Adobe Acrobat9.0才會有)。 思路: 1)CAcroPDDoc:Acrobat文檔對象。 2)CAcroPDPage:頁對象。 3)CAcroR

    2024年02月04日
    瀏覽(24)
  • C# 提取PDF中指定文本、圖片的坐標(biāo)

    C# 提取PDF中指定文本、圖片的坐標(biāo)

    獲取 PDF 文件中文字或圖片的坐標(biāo)可以實現(xiàn)精確定位,這對于快速提取指定區(qū)域的元素,以及在 PDF 中添加注釋、標(biāo)記或自動蓋章等操作非常有用。本文將詳解如何使用國產(chǎn) PDF 庫 通過 C# 提取 PDF 中指定文本或圖片的坐標(biāo)位置( X, Y 軸) 。 ? 用于操作PDF文件的第三方庫為 S

    2024年02月04日
    瀏覽(30)
  • MidJourney教程03--BLEND 兩張圖片合成一張圖片

    MidJourney教程03--BLEND 兩張圖片合成一張圖片

    MidJourney教程02--BLEND 兩張圖片合成一張圖片 首先輸入?? 然后會讓你選擇兩張圖片進(jìn)行處理! ?那么,現(xiàn)在我們把比卡丘,和路飛融合在一起啦! ?接下來看出來效果會是怎么樣子呢? 那么,我們就得到了一個路飛比卡丘! 其實還有很多種方法可以使用! 例如場景與產(chǎn)品的

    2024年02月15日
    瀏覽(26)
  • 微信小程序原生將兩張圖片合成一張并保存至手機(jī)中

    微信小程序原生將兩張圖片合成一張并保存至手機(jī)中

    我是一名剛畢業(yè)工作倆月的實習(xí)生,技術(shù)很菜,如果文章有寫的地方,在評論區(qū)寫出來,讓像我一樣的小白少走點彎路。. 需要將圖片保存至手機(jī), 但是微信小程序官方文檔提供的保存至手機(jī)api參數(shù)是一張圖片,而我這是兩張圖片,一張背景圖,一張接口返回的二維碼,所以

    2024年02月09日
    瀏覽(26)
  • 多個PDF發(fā)票合并實現(xiàn)一張A4紙打印2張電子/數(shù)電發(fā)票功能

    多個PDF發(fā)票合并實現(xiàn)一張A4紙打印2張電子/數(shù)電發(fā)票功能

    python教程79--A4紙增值稅電子發(fā)票合并打印_python 打印 發(fā)票設(shè)置_頤街的博客-CSDN博客 文章瀏覽閱讀7.9k次。接上篇https://blog.csdn.net/itmsn/article/details/121902974?spm=1001.2014.3001.5501一張A4紙上下2張增值稅電子發(fā)票實現(xiàn)辦法。使用環(huán)境:python3.8、mac、docx庫開發(fā)工具:jupyterlab增值稅電子發(fā)

    2024年02月05日
    瀏覽(30)
  • PDF轉(zhuǎn)圖片pdf轉(zhuǎn)換圖片,線程池

    然后用的時候:

    2024年02月11日
    瀏覽(23)
  • Java Word轉(zhuǎn)PDF(直接轉(zhuǎn)和以圖片形式轉(zhuǎn))、PDF轉(zhuǎn)圖片、圖片轉(zhuǎn)PDF

    在淘寶上找了一家寫代碼的店鋪寫了一個工具類,再參考網(wǎng)上的代碼,改了改 用到的類庫: 工具類代碼:

    2024年02月12日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包