LEADTOOLS PDF應用實例:增強Google Drive搜索功能

由於Google Drive提供了一個安全、可靠、方便的方式來儲存和備份文件、圖像、音樂和其他文件,因此Google Drive雲服務非常受歡迎。然而,對於那些在雲中存儲了大量數據的用戶來說,搜索和查找文件相當頭疼。多數搜索功能受到限制,只能充分利用文件名或者文本格式以及文本本身實現數據的搜索功能。因此,一定程度的定製或者增強對於充分利用 Google Drive雲儲存功能是非常有必要的。

搜索PDF文件比搜索MP3和JPEG 要容易一些,但是Google Drive對PDF文件的搜索有一定的侷限性。例如,你可以掃描一張發票和銀行對賬單,並將其保存爲PDF。即使是你用帶有OCR功能的掃描儀或者軟件提取文本,但你仍然無法以一種可靠的方式搜索該文件。文本中可能包含了公司名稱和日期,但是可能缺少用於查找和歸檔的關鍵字,如, "bank", "insurance"以及"paid with PayPal" 等。這些正是你保存PDF文件時需要包含在關鍵字元數據中的信息,但是Google Drive在搜索索引中沒有使用該元數據。因此,你可以使用LEADTOOLS PDF SDK 讀取和編輯元數據,然後更新Google Drive中文件的IndexableTextData屬性。

接下來,我們將展示如何讀取和編輯PDF文檔中的元數據關鍵字,更新Google Drive中的文件,鏈接本地Google Drive數據庫等。

創建上下文菜單(右鍵菜單)

Google Drive的服務配備了桌面應用程序,可將文件自動同步到帶有在線雲驅動的電腦上。另外方法就是添加上下文菜單。當右鍵點擊PDF文件時,在所彈出的上下文菜單中,選擇"Update File Keywords",將文件名作爲參數傳遞到應用程序中。

using (RegistryKey pdfTypeRegKey =
Registry.ClassesRoot.OpenSubKey(".pdf"))
{
// Create path to registry location
string regPath = string.Format(@"{0}\shell\{1}",
(String)pdfTypeRegKey.GetValue(null), "UpdateFileKeywords");

// Add context menu to the registry
using (RegistryKey key = Registry.ClassesRoot.CreateSubKey(regPath))
{
key.SetValue(null, "Update File Keywords");
}

// Add command that is invoked to the registry
string menuCommand = string.Format("\"{0}\" \"%L\"",
Application.ExecutablePath);
using (RegistryKey key = Registry.ClassesRoot.CreateSubKey(
string.Format(@"{0}\command", regPath)))
{
key.SetValue(null, menuCommand);
}
}

利用LEADTOOLS PDF增強Google Drive搜索功能

利用LEADTOOLS更新PDF文檔元數據關鍵字

LEADTOOLS擁有全面的PDF閱讀,PDF編輯功能,允許直接修改PDF文件屬性,搜索文本,書籤等。當根據右鍵菜單的shell命令加載應用程序時,LEADTOOLS PDFFile對象將檢索關鍵詞,並將關鍵詞顯示在文本框進行編輯。

PDFFile _document = new PDFFile(fileName, password);
_document.Load();
_txtKeywords.Text = _document.DocumentProperties.Keywords;

保存就是這樣簡單,只需幾行代碼即可。正如所看到的,PDF文檔屬性已經更新。

_document.DocumentProperties.Keywords = _txtKeywords.Text;
_document.SetDocumentProperties(fileName);

利用LEADTOOLS PDF增強Google Drive搜索功能

更新Google Drive

在PDF文件中的關鍵字和其他元數據屬性是非常有用而強大的功能,但是Google Drive在其搜索算法中並不它們。Google Drive中每個文件的IndexableTextData屬性都可以在使用Google Drive API時進行修改。

當使用 Google Drive桌面應用程序同步應用程序時,它使用本地SQL數據庫來跟蹤本地文件和在線信息。要實現該操作,我們必需獲取能匹配所更新的本地文件的字段。根據Google Drive文件夾的不同結構,你可能需要添加一些額外的查詢以找到子文件夾中的文件。然而,一旦你獲取了與PDF文件匹配的 inode_number, 你便可以從數據庫中獲取字段,並調用Google Drive的Web服務。

 

發佈了6 篇原創文章 · 獲贊 2 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章