最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#提取PDF中指定文本與圖片坐標的示例代碼

 更新時間:2023年12月17日 09:29:01   作者:E-iceblue  
這篇文章主要為大家詳細介紹了如何使用國產PDF庫通過C# 提取PDF中指定文本或圖片的坐標位置(X, Y軸),感興趣的小伙伴可以跟隨小編一起學習一下

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

用于操作PDF文件的第三方庫為Spire.PDF for .NET??梢韵螺d產品包后手動安裝或者直接通用Nuget安裝。

開始前我們首先了解該庫關于PDF中坐標系的一些信息:

Spire.PDF for .NET使用 PdfPageBase 類表示PDF頁面,由內容區(qū)域和四周的頁邊距組成。頁面上坐標系的原點位于內容區(qū)域的左上角,x 軸從原點開始水平向右延伸,y 軸從原點開始垂直向下延伸 (如下圖所示)。

通過指定坐標XY軸,我們可以在PDF頁面指定位置處繪制文本、圖片、表格等元素。當然Spire.PDF for .NET也提供了相應的接口來幫助大家獲取已有PDF文件中指定文本或圖片的坐標信息。具體操作如下。

C# 獲取 PDF 中指定文本的坐標

要指定文本的坐標,主要分為兩步實現(xiàn):

  • 首先需要使用 PdfTextFinder.Find() 方法查找PDF文件中所有指定文本;
  • 查找到文本后,再通過 PdfTextFragment.Positions 屬性進一步獲取其 (X, Y) 坐標信息。

代碼:

using Spire.Pdf;
using Spire.Pdf.Texts;
using System.Drawing;
 
namespace GetCoordinatesOfText
{
    class Program
    {
        static void Main(string[] args)
        {
            //創(chuàng)建PdfDocument對象
            PdfDocument pdf = new PdfDocument();
 
            //加載PDF文件
            pdf.LoadFromFile("大數(shù)據(jù).pdf");
 
            //遍歷所有頁面
            foreach (PdfPageBase page in pdf.Pages)
            {
                //創(chuàng)建PdfTextFinder對象
                PdfTextFinder finder = new PdfTextFinder(page);
 
                //設置查找選項
                PdfTextFindOptions options = new PdfTextFindOptions();
                options.Parameter = TextFindParameter.IgnoreCase;
                finder.Options = options;
 
                //查找頁面中所有指定文本
                List<PdfTextFragment> fragments = finder.Find("海量");
 
                //遍歷所有查找的文本
                foreach (PdfTextFragment fragment in fragments)
                {
                    //獲取文本的坐標信息
                    PointF found = fragment.Positions[0];
                    Console.WriteLine(found);
                }
            }
        }
    }
}

C# 獲取 PDF 中指定圖片的坐標

與獲取文字坐標類似,獲取圖片坐標主要也分為兩步:

  • 首先使用 PdfImageHelper.GetImagesInfo() 方法獲取某個PDF頁面中所有圖片信息;
  • 獲取圖片后,再通過 PdfImageInfo.Bounds 屬性獲取其 (X, Y) 坐標信息。

代碼:

using Spire.Pdf;
using Spire.Pdf.Utilities;
using System;
 
namespace GetCoordinatesOfImage
{
    class Program
    {
        static void Main(string[] args)
        {
            //創(chuàng)建PdfDocument對象
            PdfDocument pdf = new PdfDocument();
 
            //加載PDF文件
            pdf.LoadFromFile("大數(shù)據(jù).pdf");
 
            //獲取指定頁面
            PdfPageBase page = pdf.Pages[0];
 
            //創(chuàng)建PdfImageHelper對象
            PdfImageHelper helper = new PdfImageHelper();
 
            //獲取頁面中的圖片信息
            PdfImageInfo[] images = helper.GetImagesInfo(page);
 
            //獲取第一張圖片的 X、Y 坐標
            float xPos = images[0].Bounds.X;
            float yPos = images[0].Bounds.Y;
            Console.WriteLine("圖片坐標為({0},{1})", xPos, yPos);
        }
    }
}

加載的示例文檔:

獲取PDF中文字坐標的返回結果:

獲取PDF中圖片坐標的返回結果:

到此這篇關于C#提取PDF中指定文本與圖片坐標的示例代碼的文章就介紹到這了,更多相關C#提取PDF文本與圖片坐標內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • c# 根據(jù)NPOI 讀取一個excel 文件的多個Sheet

    c# 根據(jù)NPOI 讀取一個excel 文件的多個Sheet

    這篇文章主要介紹了c# 根據(jù)NPOI 讀取一個excel 文件的多個Sheet,幫助大家更好的利用c#處理excel表格,感興趣的朋友可以了解下
    2020-12-12
  • C#實現(xiàn)DataTable數(shù)據(jù)行列轉換

    C#實現(xiàn)DataTable數(shù)據(jù)行列轉換

    這篇文章介紹了C#實現(xiàn)DataTable數(shù)據(jù)行列轉換的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • C#封裝的Sqlite訪問類實例

    C#封裝的Sqlite訪問類實例

    這篇文章主要介紹了C#封裝的Sqlite訪問類,實例分析了C#針對Sqlite數(shù)據(jù)庫各種常用操作的相關技巧,需要的朋友可以參考下
    2015-04-04
  • 利用C#編寫Linux守護進程實例代碼

    利用C#編寫Linux守護進程實例代碼

    如今的編程是一場程序員和上帝的競賽,程序員要開發(fā)出更大更好、傻瓜都會用到軟件,下面這篇文章主要給大家介紹了關于利用C#編寫Linux守護進程的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下。
    2018-01-01
  • WPF ProgressBar實現(xiàn)實時進度效果

    WPF ProgressBar實現(xiàn)實時進度效果

    這篇文章主要介紹了WPF ProgressBar實現(xiàn)實時進度效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • 基于WPF實現(xiàn)數(shù)字框控件

    基于WPF實現(xiàn)數(shù)字框控件

    這篇文章主要介紹了如何利用WPF實現(xiàn)數(shù)字框控件,文中的示例代碼講解詳細,對我們學習或工作有一定的幫助,需要的小伙伴可以參考一下
    2023-08-08
  • C#利用Refit實現(xiàn)JWT自動續(xù)期詳解

    C#利用Refit實現(xiàn)JWT自動續(xù)期詳解

    Refit?是一個受到Square的Retrofit庫(Java)啟發(fā)的自動類型安全REST庫,這篇文章主要為大家介紹了C#如何利用Refit實現(xiàn)JWT自動續(xù)期,感興趣的可以了解下
    2023-08-08
  • c#編寫的番茄鐘倒計時器代碼

    c#編寫的番茄鐘倒計時器代碼

    番茄鐘是老外做飯用的一個廚具,比如蒸包子,水開后再蒸十分鐘,就把番茄鐘擰一下擰到10的刻度上,然后番茄鐘就嗒嗒嗒的慢慢歸位,等到十分鐘后完全歸位,然后就叮的響一聲,提醒老外把火關掉。
    2015-03-03
  • C#內置泛型委托之Func委托

    C#內置泛型委托之Func委托

    這篇文章介紹了C#內置泛型委托之Func委托的用法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • 使用C#開發(fā)ActiveX控件

    使用C#開發(fā)ActiveX控件

    activex控件以前也叫做ole控件,它是微軟ie支持的一種軟件組件或對象,可以將其插入到web頁面中,實現(xiàn)在瀏覽器端執(zhí)行動態(tài)程序功能,以增強瀏覽器端的動態(tài)處理能力。通常activex控件都是用c++或vb語言開發(fā),本文介紹另一種方式,使用c#語言開發(fā)activex控件。
    2017-02-02

最新評論

崇仁县| 上杭县| 延吉市| 乐亭县| 安塞县| 偏关县| 曲松县| 喀什市| 文安县| 碌曲县| 仁怀市| 旬阳县| 阳泉市| 阿坝| 盐城市| 高邑县| 砚山县| 客服| 临桂县| 柞水县| 鹿泉市| 高尔夫| 汕尾市| 海门市| 奇台县| 阳信县| 航空| 黄冈市| 青州市| 庆阳市| 淮安市| 虎林市| 桃江县| 抚宁县| 淳化县| 凌海市| 明溪县| 英山县| 万州区| 确山县| 正定县|