直接提供 PDF URL 會導致檔案被瀏覽器下載或由外掛開啟,使用者可任意複製、另存。若需管控(如僅允許線上閱覽、禁止下載、加浮水印),可透過 IHttpHandler 攔截請求,配合開源元件 PDFBox 解析 PDF 文字內容,僅輸出 HTML 或純文字給前端。
iTextSharp 擅長建立 PDF,但讀取/解析 API 複雜難用。PDFBox 同為 Java 移植(via IKVM.NET),專注內容萃取,代碼極簡:
private static string parseUsingPDFBox(string filename)
{
PDDocument doc = PDDocument.load(filename);
PDFTextStripper stripper = new PDFTextStripper();
return stripper.getText(doc);
}
搭配 IHttpHandler 即可實現「按需解析、流式輸出、權限控管」的 PDF 線上閱覽方案。