[Phase L2-4/L2-5] 클립보드 OCR 이미지 검색 + Ctrl+Click 다중 선택

Phase L2-4: 클립보드 이미지 OCR 텍스트 추출 및 검색
- AxCopilot.csproj: TFM net8.0-windows → net8.0-windows10.0.17763.0 (Windows OCR API 활성화)
- ClipboardEntry: OcrText 프로퍼티 추가 (set), Preview → OCR 텍스트 우선 표시 (72자 상한)
- SavedClipEntry: OcrText 직렬화 필드 추가, BuildSnapshot/LoadHistory 연동
- ClipboardHistoryService.OnClipboardUpdate: 이미지 저장 후 백그라운드 OCR 트리거
  (EnableOcrSearch 설정 체크, capturedEntry.OcrText 비동기 갱신)
- ClipboardHistoryService.ImageCache.cs: ExtractOcrTextAsync() 추가
  (WinRT BitmapDecoder → SoftwareBitmap → OcrEngine.RecognizeAsync, 5,000자 상한)
  WinRT 별칭(WinBitmapDecoder, WinSoftwareBitmap 등) 으로 WPF 네임스페이스 충돌 방지
- AppSettings.Models.cs: ClipboardHistorySettings.EnableOcrSearch (default=true)
- ClipboardHistoryHandler.GetItemsAsync: OcrText 포함 검색, 'OCR ·' 표시 배지

Phase L2-5: Ctrl+Click 클립보드 항목 다중 선택
- LauncherWindow.Shell.cs: ResultList_PreviewMouseLeftButtonUp에 Ctrl+Click 분기 추가
  (IsClipboardMode + Ctrl 조합 시 ToggleMergeItem 호출, 기존 단일 선택 흐름 유지)
- LauncherWindow.ShortcutHelp.cs: Ctrl+Click / Shift+↑↓ / 병합 단축키 도움말 추가

빌드: 경고 0, 오류 0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-04 10:18:45 +09:00
parent e78da8eb81
commit d6d5f518d0
8 changed files with 120 additions and 8 deletions

View File

@@ -73,8 +73,8 @@
| L2-1 | **클립보드 이미지 원본 해상도 보존** | 원본 PNG를 `clipboard_images/` 캐시 폴더에 저장, 썸네일(80px)은 표시용으로만 사용. 캐시 정리 정책 (30일/500MB). Enter 복원 시 원본 해상도로 클립보드 복사 | ✅ 완료 |
| L2-2 | **Shift+Enter 실행 시 자동 클립보드 복사** | Shift+Enter로 외부 뷰어 열기 전에 해당 항목을 시스템 클립보드에 자동 복사. 텍스트/이미지(원본 해상도) 모두 지원 | ✅ 완료 |
| ✅ L2-3 | **클립보드 이미지 미리보기 창** | `#` 이미지 항목에서 Shift+Enter → `ClipboardImagePreviewWindow`. 원본 해상도 표시, Ctrl+휠/+/0/F 줌, PNG·JPEG·BMP 저장, Ctrl+C 복사 | 중간 |
| L2-4 | **클립보드 검색 강화** | 이미지 OCR 텍스트 추출 → 텍스트 기반 이미지 검색. Windows OCR API (로컬) 활용 | 중간 |
| L2-5 | **클립보드 항목 병합** | 여러 텍스트 항목을 선택하여 하나로 병합 (줄바꿈). Ctrl+Click 다중 선택 | 낮음 |
| L2-4 | **클립보드 검색 강화** | 이미지 OCR 텍스트 추출 → 텍스트 기반 이미지 검색. Windows OCR API (로컬) 활용. `OcrText` 필드, `ExtractOcrTextAsync()`, TFM `net8.0-windows10.0.17763.0` | 중간 |
| L2-5 | **클립보드 항목 병합** | Ctrl+Click 마우스 다중 선택 추가 (Shift+↑/↓ 키보드 선택은 기존). `ResultList_PreviewMouseLeftButtonUp` 분기 | 낮음 |
### Phase L2 추가 완료 (v1.5.3)