关于 syncfusion-winforms-pdf-viewer
用于生成 Syncfusion WinForms PdfViewer 的 C# 示例代码。它会根据代码是集成到现有应用还是新建项目,以及所选 .NET 目标框架调整项目配置与代码。
主要功能
- 01生成 WinForms PdfViewer C# 代码示例
- 02按现有或新建项目调整代码
- 03适配 .NET Framework 与 .NET 版本
- 04涵盖查看、保存、打印和搜索 PDF
- 05提供导航、缩放与主题示例
适用场景
- 01为现有 WinForms 应用集成 PDF 查看器
- 02创建指定目标框架的 PdfViewer 示例项目
- 03实现 PDF 文本搜索或提取
- 04配置 PDF 打印、导航或主题
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ syncfusion/ pdf-viewer-sdk-skills --skill syncfusion-winforms-pdf-viewer安装后在 Claude Code 中输入/syncfusion-winforms-pdf-viewer确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.mdreferences/document-information.mderror-handling.mdextract-text.mdhost-wpf-pdfviewer-in-winforms.mdinteraction-modes.mdlocalization.mdmagnifying.mdmouse-position.mdnavigation.mdpdf-rendering-engines.mdprinting-pdf-files.mdsaving-pdf-files.mdsearching-text.mdthemes.mdtoolbar.mdview-pdf-stream.mdview-pdfviewer.md详细介绍
Syncfusion WinForms PdfViewer - UI 示例生成器
为用户的项目生成 C# 代码 (默认)
触发关键词:“code”“snippet”“how to write”“Program.cs”“show me”“sample”“integrate”“example code”“generate code for”“create sample”“winforms pdfviewer”。
**用途:**生成简洁、可直接使用的 C# 代码片段,可直接插入用户的 WinForms 应用程序,用于处理 Syncfusion WinForms PdfViewer 控件。
工作流:
- 使用 references/*.md 文件中提供的代码片段编写 C# 代码。
- 生成示例前,询问用户希望将代码:集成到现有 WinForms 项目中,还是创建为新的 WinForms 应用程序。
- 如果用户选择创建新的 WinForms 项目,询问他们想使用哪个目标框架:
- .NET Framework(例如 4.6、4.7、4.8)——使用 Syncfusion.PdfViewer.WinForms,并以经典 .NET Framework 为目标。
- .NET / .NET Core(例如 .NET 8、.NET 10)——使用 Syncfusion.PdfViewer.WinForms,并指定 net8.0-windows(或所选版本)。
- 根据用户的选择: 生成具有正确 值的 .csproj 文件。 添加所需的 NuGet 包。 相应地调整框架专属代码,例如命名空间导入、窗体初始化、启动代码(Program.cs)和 PDF Viewer 设置。
- 只添加满足用户所需功能的 API。不要包含可选 API 或其他内容。
代码参考
所有模板和代码片段都位于 references/ 文件夹中。每个文件都包含一个专门的代码片段或模板,Agent 会在生成示例时将它们组合起来:
| 文件 | 内容 |
|---|---|
| view-pdfviewer.md | NuGet 配置,添加 PdfViewerControl/PdfDocumentView,加载 PDF |
| saving-pdf-files.md | 通过工具栏保存 PDF,使用 LoadedDocument.Save() 以编程方式保存,BeginSave 和 EndSave 事件 |
| printing-pdf-files.md | 通过工具栏打印 PDF,使用 Print() 静默打印,自定义打印大小(ActualSize、Fit、CustomScale),打印方向(Auto、Portrait、Landscape),隐藏打印状态对话框,BeginPrint、PrintProgress 和 EndPrint 事件 |
| extract-text.md | 使用 ExtractText(pageIndex, out textLines) 提取单页文本,使用 PageCount 循环提取整个文件的文本,通过 TextLines/TextLine 提取带行边界的文本,通过 WordCollection/TextWord 提取带边界的单词 |
| pdf-rendering-engines.md | 使用 RenderingEngine 属性切换渲染引擎(默认使用 PDFium,也可使用 SfPdf),在访问受限的环境中通过 ReferencePath 设置自定义 PDFium 二进制文件路径 |
| searching-text.md | 使用 SearchNextText()/SearchPreviousText() 搜索下一个/上一个文本实例,使用 FindText() 查找所有文本实例及其边界,统计匹配总数,通过 TextSearchSettings.HighlightAllInstance 启用/禁用所有实例的高亮显示,通过 TextSearchSettings.CurrentInstanceColor/OtherInstanceColor 自定义高亮颜色 |
| navigation.md | 书签导航、超链接处理和页面导航(以编程方式调用 GoToBookmark()、HyperlinkClicked/HyperlinkMouseOver、GoToPageAtIndex()) |
| localization.md | 本地化工具提示和上下文菜单的静态文本,默认的 en-US 本地化键表,添加特定区域性的 Resx 文件(例如,Syncfusion.PdfViewer.Windows.fr.resx),使用 LocalizationManager.SetResources() 设置用于本地化的自定义程序集/命名空间 |
| themes.md | 使用 ThemeName 属性应用内置主题(Office2016Colorful、Office2016Black、Office2016DarkGray、Office2016White、Office2019Colorful、HighContrastBlack),通过 SkinManager.LoadAssembly() 加载主题程序集,重置为默认主题 |
| interaction-modes.md | 使用 CursorMode 属性切换光标模式 — PdfViewerCursorMode.SelectTool 用于选择文本(默认),PdfViewerCursorMode.HandTool 用于平移/滚动 |
| error-handling.md | 订阅 ErrorOccurred 事件,处理 ErrorOccurredEventArgs.Message 以记录错误或向用户显示消息 |
| magnifying.md | 使用 ZoomTo() 缩放到指定百分比,通过 ZoomPercentage 获取当前缩放比例,使用 ZoomMode 属性切换缩放模式(FitPage、FitWidth) |
| view-pdf-stream.md | 使用 Load(stream) 重载从 FileStream 加载 PDF |
| document-information.md | 通过 DocumentInformation.FileName 和 DocumentInformation.FilePath 获取已加载 PDF 的文件名和文件路径;通过 PageCount 获取页数 |
| mouse-position.md | 处理 PageClicked 和 PageMouseMove 事件,以获取页面索引和相对于 PDF 页面的鼠标位置 |
| host-wpf-pdfviewer-in-winforms.md | 使用 ElementHost 在 WinForms 应用中承载 WPF PdfViewer,以使用高级功能(批注、表单填写、签名) |
| toolbar.md | 使用 ToolbarSettings.<Button>.IsVisible 显示/隐藏单个工具栏按钮(Open、Save、Zoom、Print、Pan) |
先决条件
- 开发环境:Visual Studio 2022 或 Visual Studio insider 2026(推荐用于 .NET 10)。
- .NET Framework 4.5+ 或 .NET Core/NET 8+
- Syncfusion WinForms NuGet 包:Syncfusion.PdfViewer.Windows
文档
评论
支持 Markdown