欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

通過C#實現(xiàn)獲取PDF頁面大小、方向和旋轉(zhuǎn)角度

 更新時間:2024年08月25日 10:41:18   作者:Eiceblue  
在處理PDF文件時,了解頁面的大小、方向和旋轉(zhuǎn)角度等信息對于PDF的顯示、打印和布局設(shè)計至關(guān)重要,本文將介紹如何使用免費.NET?庫通過C#來讀取PDF頁面的這些屬性,需要的朋友可以參考下

免費庫 Free Spire.PDF for .NET 提供了接口來獲取PDF頁面信息,我們可以從官網(wǎng)下載產(chǎn)品包后手動添加引用,或者直接通過NuGet安裝。

PM> Install-Package FreeSpire.PDF

輸入文檔如圖:

PDF頁面

C# 讀取PDF頁面大小(寬度、高度)

免費Spire.PDF提供了 PdfPageBase.Size.WidthPdfPageBase.Size.Height 屬性來獲取指定PDF頁面的寬度和高度。

獲取到的值默認單位為磅(point),如果想要將其轉(zhuǎn)換為厘米、毫米等常見單位,可以通過 PdfUnitConvertor 類的 ConvertUnits(float value, PdfGraphicsUnit from, PdfGraphicsUnit to) 方法進行轉(zhuǎn)換。

示例代碼如下:

using System;
using System.Text;
using Spire.Pdf;
using Spire.Pdf.Graphics;

namespace GetPDFPageSize
{
    class Program
    {
        static void Main(string[] args)
        {
            //加載PDF文件
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("示例.pdf");

            //獲取第一頁
            PdfPageBase page = pdf.Pages[0];

            //獲取頁面寬度和高度(默認單位為point)
            float pointWidth = page.Size.Width;
            float pointHeight = page.Size.Height;

            //創(chuàng)建PdfUnitConvertor對象用于轉(zhuǎn)換單位
            PdfUnitConvertor unitCvtr = new PdfUnitConvertor();

            //將單位從磅(point)轉(zhuǎn)換為厘米
            float centimeterWidth = unitCvtr.ConvertUnits(pointWidth, PdfGraphicsUnit.Point, PdfGraphicsUnit.Centimeter);
            float centimeterHeight = unitCvtr.ConvertUnits(pointHeight, PdfGraphicsUnit.Point, PdfGraphicsUnit.Centimeter);

            //將單位從磅(point)轉(zhuǎn)換為毫米
            float millimeterWidth = unitCvtr.ConvertUnits(pointWidth, PdfGraphicsUnit.Point, PdfGraphicsUnit.Millimeter);
            float millimeterHeight = unitCvtr.ConvertUnits(pointHeight, PdfGraphicsUnit.Point, PdfGraphicsUnit.Millimeter);

            //輸出PDF頁面寬高度信息
            Console.WriteLine("該PDF頁面大小為(以磅為單位): 寬度 " + pointWidth + "pt, 高度 " + pointHeight + "pt");
            Console.WriteLine("該PDF頁面大小為(以厘米為單位): 寬度 " + centimeterWidth + "cm, 高度 " + centimeterHeight + "cm");
            Console.WriteLine("該PDF頁面大小為(以毫米為單位): 寬度 " + millimeterWidth + "mm, 高度 " + millimeterHeight + "mm");

        }
    }
}

輸出結(jié)果:

讀取PDF頁面寬、高

C# 判斷PDF頁面方向

頁面的方向通常以橫向或縱向表示。要判斷指定PDF頁面的方向:

  • 先獲取頁面寬度和高度
  • 再比較這兩個值。(如果寬度大于高度,則頁面方向為橫向,反之則為縱向。)

示例代碼如下:

using Spire.Pdf;
using System;

namespace GetPDFPageOrientation
{
    class Program
    {
        static void Main(string[] args)
        {
            //加載PDF文檔
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("示例.pdf");

            //獲取第一頁
            PdfPageBase page = pdf.Pages[0];

            //獲取頁面寬度和高度
            float width = page.Size.Width;
            float height = page.Size.Height;

            //通過比較頁面寬度和高度來判斷頁面方向
            if (width > height)
            {
                Console.WriteLine("當前頁面方向為橫向。");
            }

            else
            {
                Console.WriteLine("當前頁面方向為縱向。");
            }
        }
    }
}

輸出結(jié)果:

判斷頁面方向

C# 檢測PDF頁面旋轉(zhuǎn)角度

使用 PdfPageBase.Rotation 可以獲取指定PDF頁面的旋轉(zhuǎn)角度。如果為 0,則表示頁面保持原來的方向。

示例代碼如下:

using Spire.Pdf;
using System;

namespace GetPDFPageOrientation
{
    class Program
    {
        static void Main(string[] args)
        {
            //加載PDF文檔
            PdfDocument pdf = new PdfDocument();
            pdf.LoadFromFile("示例.pdf");

            //獲取第一頁
            PdfPageBase page = pdf.Pages[0];

            //獲取頁面的旋轉(zhuǎn)角度并輸出結(jié)果
            PdfPageRotateAngle rotationAngle = page.Rotation;
            string rotation = rotationAngle.ToString();

            Console.WriteLine("當前頁面旋轉(zhuǎn)角度為: " + rotation);
        }
    }
}

輸出結(jié)果:

檢測頁面旋轉(zhuǎn)

以上就是通過C#實現(xiàn)獲取PDF頁面大小、方向和旋轉(zhuǎn)角度的詳細內(nèi)容,更多關(guān)于C#獲取PDF頁面屬性的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C#?Sqlite數(shù)據(jù)庫的搭建及使用技巧

    C#?Sqlite數(shù)據(jù)庫的搭建及使用技巧

    這篇文章主要介紹了C#?Sqlite數(shù)據(jù)庫的搭建及使用技巧,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-08-08
  • C#(.net)水印圖片的生成完整實例

    C#(.net)水印圖片的生成完整實例

    這篇文章主要介紹了C#(.net)水印圖片的生成方法,以一個完整實例的形式講述了水印圖片的生成技巧,非常實用,需要的朋友可以參考下
    2014-09-09
  • C#使用Lazy實現(xiàn)延遲加載的方法示例

    C#使用Lazy實現(xiàn)延遲加載的方法示例

    在C#中,Lazy< T> 類是一個非常有用的工具,它可以用于延遲加載值,在本文中,我們將詳細介紹 Lazy< T> 的實現(xiàn)機制和用法,并提供一些示例來展示它的優(yōu)勢,文中通過代碼示例講解的非常詳細,需要的朋友可以參考下
    2024-06-06
  • C#WinFrom導出Excel過程解析

    C#WinFrom導出Excel過程解析

    這篇文章主要介紹了C#WinFrom導出Excel過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • 淺談C#指針問題

    淺談C#指針問題

    在C#中,有時候希望通過指針來操作內(nèi)存,這樣可以提高效率。我們可以用unsafe關(guān)鍵字修飾含有指針操作的程序段
    2016-01-01
  • C#以流方式讀socket超時設(shè)置的實例

    C#以流方式讀socket超時設(shè)置的實例

    這篇文章主要為大家詳細介紹了C#以流方式讀socket超時設(shè)置的實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • 基于C#?實現(xiàn)?OPC?DA?Server的問題小結(jié)

    基于C#?實現(xiàn)?OPC?DA?Server的問題小結(jié)

    這篇文章主要介紹了基于C#?實現(xiàn)?OPC?DA?Server的相關(guān)知識,關(guān)于C#怎么編寫一個進程外的DCOM組件,這里先不做介紹了,這里主要介紹下OPC?DA?Server?的第一個接口,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • C#中List和數(shù)組之間轉(zhuǎn)換的方法

    C#中List和數(shù)組之間轉(zhuǎn)換的方法

    這篇文章主要介紹了C#中List和數(shù)組之間轉(zhuǎn)換的方法,涉及比較簡單的轉(zhuǎn)換技巧,需要的朋友可以參考下
    2015-02-02
  • C#中Mutex對象用法分析

    C#中Mutex對象用法分析

    這篇文章主要介紹了C#中Mutex對象用法,結(jié)合實例形式分析了Mutex對象的功能與線程操作的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • C#實現(xiàn)簡單串口通訊實例

    C#實現(xiàn)簡單串口通訊實例

    這篇文章主要為大家詳細介紹了C#實現(xiàn)簡單串口通訊的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02

最新評論