PDFViewer 组件 — sgcHTML | eSeGeCe

PDFViewer

TsgcHTMLComponent_PDFViewer — 渲染基于 pdf.js 的页内 PDF 查看器,支持翻页导航、缩放、搜索、下载和打印,适用于 Delphi、C++ Builder 和 .NET。

TsgcHTMLComponent_PDFViewer

PDFURL 指向一个文档(或使用 Base64Data 直接嵌入),调整工具栏,然后读取 HTML 属性;pdf.js 在客户端完成渲染。

组件类

TsgcHTMLComponent_PDFViewer

渲染为

工具栏 + 画布 + 作用域 CSS(pdf.js 来自 CDN)

语言

Delphi, C++ Builder, .NET

指向一个 PDF,渲染它

设置 PDFURL(或使用 Base64Data 直接嵌入字节数据),选择 InitialPageZoomTheme,然后读取 HTML

uses
  sgcHTML_Component_PDFViewer;

var
  oViewer: TsgcHTMLComponent_PDFViewer;
begin
  oViewer := TsgcHTMLComponent_PDFViewer.Create(nil);
  try
    oViewer.ViewerID := 'invoice';
    oViewer.PDFURL := '/invoices/INV-2026-0042.pdf';
    oViewer.Height := '700px';
    oViewer.InitialPage := 1;
    oViewer.Zoom := 'page-width';
    oViewer.Theme := pvLight;
    oViewer.DownloadFileName := 'invoice-0042.pdf';

    WebModule.Response := oViewer.HTML;   // toolbar + canvas + pdf.js init script
  finally
    oViewer.Free;
  end;
end;
// includes: sgcHTML_Component_PDFViewer.hpp

TsgcHTMLComponent_PDFViewer *oViewer = new TsgcHTMLComponent_PDFViewer(NULL);
try
{
  oViewer->ViewerID = "invoice";
  oViewer->PDFURL = "/invoices/INV-2026-0042.pdf";
  oViewer->Height = "700px";
  oViewer->InitialPage = 1;
  oViewer->Zoom = "page-width";
  oViewer->Theme = pvLight;
  oViewer->DownloadFileName = "invoice-0042.pdf";

  String html = oViewer->HTML;   // toolbar + canvas + pdf.js init script
}
__finally
{
  delete oViewer;
}
using esegece.sgcWebSockets;

var viewer = new TsgcHTMLComponent_PDFViewer();
viewer.ViewerID = "invoice";
viewer.PDFURL = "/invoices/INV-2026-0042.pdf";
viewer.Height = "700px";
viewer.InitialPage = 1;
viewer.Zoom = "page-width";
viewer.Theme = TsgcHTMLPDFViewerTheme.pvLight;
viewer.DownloadFileName = "invoice-0042.pdf";

string html = viewer.HTML;   // toolbar + canvas + pdf.js init script

关键属性与方法

您最常使用的成员。

来源

PDFURL 加载一个 URL 托管的文档;Base64Data 直接嵌入字节数据(会自动去除可选的 data:application/pdf;base64, 前缀)。

工具栏开关

ShowToolbarShowPageNavShowZoomControlsShowDownloadShowPrintShowSearch 分别显示或隐藏一组控件。

缩放与页面

InitialPage 设置起始页;Zoom 接受 autopage-widthfit、百分比或数值缩放系数。

主题

ThemeTsgcHTMLPDFViewerThemepvLightpvDark)切换工具栏和画布的配色方案。

自托管 pdf.js

PDFJSLibURL/PDFJSWorkerURL 默认指向 jsDelivr CDN 构建版本;覆盖两者即可自托管该库。

布局与下载

Width/Height 设置查看器尺寸;DownloadFileName 命名由下载按钮保存的文件。

继续探索

在线帮助此组件的完整 API 参考和使用指南。
所有 sgcHTML 组件浏览 80 多个组件的完整功能矩阵。
下载免费试用版30 天试用版附带 60.HTML 演示项目。
价格Single、Team 和 Site 授权,均含完整源代码。

准备好开始了吗?

下载免费试用版,开始在 Delphi、C++ Builder 和 .NET 中构建 Web 界面。