テキスト検索機能を使用して Web 上に PDF ファイルを表示する方法を教えてください。
質問する
533 次
2 に答える
2
PDFファイル内を検索する場合は、次のようにします。
- この dll Interop.Cisso.DLL をダウンロードし、参照として追加します。
- カタログを作成します (カタログ内を検索するには、インデックス サービスでカタログを定義する必要があります)。
最後に、検索を行うためのコードを次に示します。
DataSet ds = new DataSet("IndexServerResults"); CissoQueryClass q = new CissoQueryClass(); CissoUtilClass util = new CissoUtilClass(); OleDbDataAdapter da = new OleDbDataAdapter(); string query = ""; if (lstSearchIntegration.SelectedValue == "-1") { query = "@all Contains " + txtKeywordOne.Text + " and not #filename *.log"; } else { string operation = ""; if (lstSearchIntegration.SelectedValue.ToLower == "and") { operation = "and"; } else { operation = "or"; } query = "@all Contains " + txtKeywordOne.Text + " " + operation + " " + txtKeywordTwo.Text; } switch (lstDocType.SelectedValue) { case "doc": query += " and #filename *.doc"; break; case "pdf": query += " and #filename *.pdf"; break; case "ppt": query += " and #filename *.ppt"; break; case "pps": query += " and #filename *.pps"; break; } q.Query = query; q.Catalog = "YourCatalogName"; q.SortBy = "rank[d]"; q.Columns = "DocAppName,rank, path, size, FileName,VPath, Create"; q.MaxRecords = 1000; util.AddScopeToQuery(q, "YourFolder", "deep"); object obj = q.CreateRecordset("nonsequential"); da.Fill(ds, obj, "IndexServerResults"); DataTable mydt = new DataTable(); mydt = ds.Tables[0];
その点に注意してください:
- よりスマートな検索のために and/or 操作を使用しています
- doc、pdf、ppt、pps 内を検索しています
- 検索からログ ファイルを除外しています
于 2012-04-04T07:06:27.813 に答える
0
Aspose.PDFを提案できますが、費用がかかります
于 2012-04-04T07:00:05.993 に答える