国产老熟女高潮毛片A片仙踪林,欧美喂奶吃大乳,狠狠爱无码一区二区三区,女神的私人医生动漫免费阅读

新聞建站cms系統(tǒng)、政府cms系統(tǒng)定制開(kāi)發(fā)

廣州網(wǎng)站建設(shè)公司-閱速公司

asp.net新聞發(fā)布系統(tǒng)、報(bào)紙數(shù)字報(bào)系統(tǒng)方案
/
http://www.tjsimaide.com/
廣州網(wǎng)站建設(shè)公司
您當(dāng)前位置:首頁(yè)>網(wǎng)站技術(shù)

網(wǎng)站技術(shù)

利用acrobat sdk提取pdf文檔內(nèi)容

發(fā)布時(shí)間:2019/5/18 13:45:28  作者:Admin  閱讀:1608  

廣告:

0x00 背景

HackingTeam泄漏事件影響頗大,415.77G的內(nèi)容大多是郵件內(nèi)容,分析起來(lái)比較麻煩,因而被大多數(shù)人忽略。網(wǎng)上有很多郵件分析的文章HT郵件分析,主要是針對(duì)郵件關(guān)聯(lián)進(jìn)行分析,若對(duì)郵件內(nèi)容進(jìn)行分析則需提取郵件附件中的內(nèi)容,再針對(duì)內(nèi)容做進(jìn)一步分析。本文背景其實(shí)與上文無(wú)關(guān),只是借此提升逼格,下面將介紹如何利用acrobat SDK提取pdf文檔內(nèi)容。

0x01 acrobat導(dǎo)入

只要安裝了Adobe Acrobat,就能在其安裝目錄下找到acrobat.tlb,其中包含了adobe公司提供的接口,可對(duì)pdf進(jìn)行各種操作參考文檔,使用類(lèi)向?qū)⑵鋵?dǎo)入。

提取文本內(nèi)容需導(dǎo)入CAcroApp、CAcroAVDoc、CAcroAVPageView、CAcroPDPage、CAcroPDTextSelect、CAcroHiliteList。

0x02 提取文檔內(nèi)容

首先需要”打開(kāi)”pdf,核心代碼如下:

CAcroApp *pAcrpApp = new CAcroApp;

COleException e;

pAcrpApp->CreateDispatch("AcroExch.App",&e);

CAcroAVDoc *pAvdoc = new CAcroAVDoc;

pAvdoc->CreateDispatch("AcroExch.AVDoc",&e);

//打開(kāi)pdf,其中PDFName為全路徑

if (!pAvdoc->Open(PDFName,NULL))

{

printf("open pdf failed");

...

return 0;

}

打開(kāi)文檔后,通過(guò)pAvdoc可選擇頁(yè)數(shù)(默認(rèn)為第一頁(yè)),創(chuàng)建高亮板(CAcroHiliteList),將選擇頁(yè)數(shù)的內(nèi)容加入高亮板,然后就可以從中提取出該頁(yè)的內(nèi)容,核心代碼如下:

CAcroAVPageView pageView;

CAcroPDPage page;

CAcroPDTextSelect* textSelect = new CAcroPDTextSelect;

CAcroHiliteList* hilite = new CAcroHiliteList;

long selectionSize;

pageView.AttachDispatch(pAvdoc->GetAVPageView(),TRUE);

 

hilite->CreateDispatch("AcroExch.HiliteList");

if (hilite)

{

//設(shè)置為第一頁(yè)

pageView.GoTo(0);

/*

這里是設(shè)置高亮板的大小

由于沒(méi)有找到如何在設(shè)置高亮板前獲取該頁(yè)內(nèi)容長(zhǎng)度的方法,所以采用設(shè)置成極大的長(zhǎng)度

如有朋友知道方法,歡迎提出相互學(xué)習(xí)

*/

hilite->Add(0,4000);

page.AttachDispatch(pageView.GetPage(), TRUE);

textSelect->AttachDispatch(page.CreateWordHilite(hilite->m_lpDispatch));

pAvdoc->SetTextSelection(textSelect->m_lpDispatch);

selectionSize = textSelect->GetNumText();

if (selectionSize && strText.GetLength() < 4000)

{

for(int i = 0;i < selectionSize;i ++)

{

strText += textSelect->GetText(i);

}

}

}

要完整提取出文檔中的全部?jī)?nèi)容,可通過(guò)CAcroPDDoc獲取pdf總頁(yè)數(shù),然后利用pageView.GoTo循環(huán)每一頁(yè),下面給出的完整工程將不包含此部分代碼。

廣告:

相關(guān)文章
acrobat
sdk
cms新聞系統(tǒng)購(gòu)買(mǎi)咨詢
掃描關(guān)注 廣州閱速軟件科技有限公司
掃描關(guān)注 廣州閱速科技
主站蜘蛛池模板: 中西区| 兴海县| 都安| 鄂尔多斯市| 新河县| 阿拉善右旗| 彭泽县| 黎平县| 荃湾区| 水富县| 平昌县| 榆林市| 遂溪县| 民县| 昌江| 大同县| 岳阳市| 平凉市| 砀山县| 万盛区| 柳州市| 航空| 霍山县| 云龙县| 浮山县| 苍南县| 汝城县| 石阡县| 区。| 定兴县| 疏附县| 博客| 土默特右旗| 建始县| 清新县| 新化县| 阳春市| 稻城县| 石渠县| 始兴县| 云浮市|