Update plugin PDF处理 v1.2.0 - #370
Merged
Merged
Conversation
- Initial commit - chore: add pdf-lib dependency - feat: configure all PDF features in plugin.json - feat: add TypeScript types for PDF services - feat: add Sidebar component - feat: add FileUpload component - feat: add Settings component - feat: add feature routing in App.tsx - feat: add PDF processing services to preload - feat: add PDF compress feature - feat: add PDF merge feature - feat: add PDF split feature - feat: add PDF watermark feature - feat: add extract images feature - feat: add PDF to image feature - feat: add PDF to Word feature (mock) - feat: add PDF to PPT feature (mock) - feat: add PDF to Excel feature (mock) - feat: add PDF edit feature (placeholder) - chore: final build and cleanup - fix: 13 bugs - services APIs, React types, settings JSON, watermark centering - fix: use getPathForFile for all FileUpload features, embed CJK font for Chinese watermarks - fix: Chinese watermark with subset font, extractImages stream decode, compression quality slider, pdfToImage via system ImageMagick - chore: archive audit-and-repair - chore: fix archive metadata paths - fix: ensure output directory exists for compressPdf, mergePdfs, addWatermark - tweak: remove extractImages, fix splitPdf ranges, fix addWatermark syntax - chore: add .worktrees to gitignore - 1 - chore: remove accidentally tracked .worktrees and Windows residue - chore: gitignore .worktrees, .comet, %SystemDrive% to prevent future accidental tracking - docs: update ZTools developer documentation - tweak: 优化前端和操作逻辑,统一 UI 组件与交互 - docs: design doc for pure local PDF→Word/PPT/Excel conversion - fix: pdfcpu watermark 改为正确位置参数语法,CJK 字体自动检测 feat: 每个操作隔离到独立任务文件夹(useTaskFolder hook) - chore: archive local-pdf-to-word-mammoth change (branch deleted) - fix: pdfcpu 字体名映射 + 每次操作生成独立任务文件夹 - fix: 自动安装完整 CJK 字体到 pdfcpu,修复水印不可见 - docs: design doc for portable LibreOffice local PDF-to-Office conversion - docs: implementation plan for portable LibreOffice PDF-to-Office conversion - feat: update Services/SettingsData types for portable LO and remove cloud API fields - feat: add useLibreOffice hook for portable LO lifecycle - fix: add source fallback, unmount safety, useCallback wrappers to useLibreOffice - feat: add LONotInstalledBanner component for LO missing prompt - feat: add PdfToWord component with LO detection - feat: add PdfToPpt component with LO detection - feat: add PdfToExcel component with LO detection - feat: wire up PdfToWord/Ppt/Excel routes and onOpenSettings prop in App - feat: replace cloud API UI with LibreOffice management in Settings - test: update mock services and rewrite Settings tests for LO management UI - feat: implement downloadFile/cancelDownload/uninstallLibreOffice in services.js for portable LO - fix: update LO portable URL to 26.2.4 paf.exe, handle paf extraction via 7z/silent - fix: paf.exe extraction - use 7z with fallback, recursive soffice search, correct file extension - fix: setCustomPath now calls installLibreOffice, support directory paths for pre-extracted LO - fix: strip trailing slashes from path, call 7z directly via Node, better error logging per step - feat: bundle 7zr.exe in bin/, use as primary extraction method before 7z/Expand-Archive/silent - fix: replace 7zr.exe with 7za.exe (NSIS support) to extract paf.exe archives - fix: suppress LO first-run wizard — add SAL_USE_VCLPLUGIN=svp, pre-create profile, --nofirststartwizard, capture stdout - feat(ai): add DocumentSchema normalize and fixtures - fix(ai): drop out-of-scope convert scripts from Task 1 package.json - feat(ai): write Word via docx from DocumentSchema - feat(ai): write Excel and PPT from DocumentSchema via Node - feat(ai): extract per-page PDF text with pdfjs in preload - feat(ai): OpenAI and Anthropic compatible JSON completion client - feat(ai): wire convertPdfAi orchestration into preload services - feat(ai): settings UI for OpenAI/Anthropic conversion config - feat(ai): local/AI mode toggle on PDF convert pages - docs: document AI convert mode and setup - test: exclude preload AI tests from jsdom suite (use test:ai) - fix(build): restore publicDir so vite copies public/ into dist - fix(ai): lazy-load convert stack, cancel toast, unique sheets, batch test - refactor(convert): drop convert.exe; PDF to Office is AI-only - fix(ai): set pdfjs workerSrc for Electron preload (asar-safe) - fix(ai): cMap via fs factory + vision fallback for scan PDFs - feat: remove PDF edit; local convert fallback without API - v0.9 - v0.9.5 - v0.9.6 - v0.9.7 - v0.9.8 - v0.9.9 - fix(0.9.9): path-added files get preview, selection, and drop-to-add - v1.0.0 - fix(0.9.9): import files from ZTools super panel onPluginEnter - v1.0.0 preview - v1.0.0 review - Add preload dependency installation hooks - fix: install preload deps in ci - chore: bump plugin version to 1.0.1 - chore: 统一根 package.json 版本号为 1.0.1 - fix: preload PPT 转换写盘并完善 PR 打包流程 - chore: 清除废弃的 Python 转换与测试产物 - fix: 支持无磁盘路径的浏览器文件加水印等本地处理 - chore: bump version to 1.2.0
Contributor
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
Taitres
marked this pull request as ready for review
August 2, 2026 04:41
Contributor
|
Caution The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
插件信息
本次变更
截图 / 演示
自检清单
plugins/pdf-process/目录此 PR 由 ztools-plugin-cli 自动管理:每次
ztools publish在分支上追加一个 commit,PR 链接保持不变。