PDF 阅读器在慢速双指缩放、竖向滚动页高异步更新、页面请求超时和绘画橡皮擦等场景中,存在视口跳动、迟到结果被错误丢弃、缓存边界不明确及笔迹显示与持久化不同步的问题;同一本书的标注读取和并发写入也会产生不必要的磁盘访问或覆盖风险。\n\n调整缩放 inset 计算和竖向阅读锚点恢复,避免缩放变换被重复计入、真实页高到达时改变当前阅读位置。页面请求改为带 token 的超时重试机制,可在缓存窗口内接收有效迟到结果并提供失败重试入口;页面大图、OCR、笔迹和描述缓存统一按当前页前后两页收敛,PDF 标识改为完整内容 SHA-256,避免同名或相近文件复用错误阅读状态。\n\n绘画会话内按路径实时重绘,退出会话后使用按图层派生的位图缓存,确保橡皮擦即时作用于已提交笔迹;同时为笔迹持久化增加版本控制、为标注读写增加同步保护和内存快照,降低复用与并发场景下的状态错乱。\n\n将项目技能统一迁入 .agents/skills,并以 .claude/skills 相对软链接供 Claude Code 读取;新增详细 Git 提交技能,自动审查改动、生成中文提交说明并约束安全推送。 验证:所有项目技能通过 quick_validate;执行 xcodebuild -workspace ReadViewDemo/ReadViewDemo.xcworkspace -scheme ReadViewDemo -configuration Debug -sdk iphonesimulator CODE_SIGNING_ALLOWED=NO build,构建成功。
42 lines
1.1 KiB
Plaintext
42 lines
1.1 KiB
Plaintext
|
|
# Xcode user data
|
|
xcuserdata/
|
|
|
|
# Build artifacts
|
|
.artifacts/
|
|
.deriveddata/
|
|
.swift-module-cache/
|
|
ReadViewDemo/build/
|
|
|
|
# This repository checks in the Demo Pods project. Keep generated files for the
|
|
# local RDEpubReaderView/RDPDFReaderView pods and vendored SnapKit visible even
|
|
# when a global gitignore excludes Pods.
|
|
!ReadViewDemo/Pods/
|
|
!ReadViewDemo/Pods/Local Podspecs/
|
|
!ReadViewDemo/Pods/Local Podspecs/RDEpubReaderView.podspec.json
|
|
!ReadViewDemo/Pods/Local Podspecs/RDPDFReaderView.podspec.json
|
|
!ReadViewDemo/Pods/Target Support Files/
|
|
!ReadViewDemo/Pods/Target Support Files/RDEpubReaderView/
|
|
!ReadViewDemo/Pods/Target Support Files/RDEpubReaderView/**
|
|
!ReadViewDemo/Pods/Target Support Files/RDPDFReaderView/
|
|
!ReadViewDemo/Pods/Target Support Files/RDPDFReaderView/**
|
|
!ReadViewDemo/Pods/SnapKit/
|
|
!ReadViewDemo/Pods/SnapKit/**
|
|
!ReadViewDemo/Pods/Target Support Files/SnapKit/
|
|
!ReadViewDemo/Pods/Target Support Files/SnapKit/**
|
|
|
|
# macOS system files
|
|
.DS_Store
|
|
|
|
# Local backup directories
|
|
*手动解包备份*
|
|
|
|
# AI tool output
|
|
_ssoft-output/
|
|
.claude/*
|
|
!.claude/skills
|
|
|
|
# Python bytecode
|
|
__pycache__/
|
|
*.py[cod]
|