시작하기
-
플러그인 설치
Terminal window npm i @capgo/capacitor-document-scannerTerminal window pnpm add @capgo/capacitor-document-scannerTerminal window yarn add @capgo/capacitor-document-scannerTerminal window bun add @capgo/capacitor-document-scanner -
네이티브 플랫폼 동기화
Terminal window npx cap syncTerminal window pnpm cap syncTerminal window yarn cap syncTerminal window bunx cap sync
import { DocumentScanner, ResponseType, ScanDocumentResponseStatus,} from '@capgo/capacitor-document-scanner';
const result = await DocumentScanner.scanDocument({ croppedImageQuality: 90, letUserAdjustCrop: true, maxNumDocuments: 10, responseType: ResponseType.ImageFilePath,});
if (result.status === ScanDocumentResponseStatus.Success) { console.log('스캔된 파일:', result.scannedImages);} else { console.log('사용자가 스캔을 취소했습니다');}base64 데이터 반환
Section titled “base64 데이터 반환”const result = await DocumentScanner.scanDocument({ responseType: ResponseType.Base64,});
const [firstPage] = result.scannedImages ?? [];if (firstPage) { const dataUrl = `data:image/jpeg;base64,${firstPage}`; // 미리보기 표시 또는 서버에 업로드}플랫폼 요구사항
Section titled “플랫폼 요구사항”- iOS:
ios/App/App/Info.plist에 카메라 사용 방법을 설명하는NSCameraUsageDescription을 추가합니다. - Android:
CAMERA권한이 선언되어 있는지 확인하고(Capacitor가 자동으로 추가) UI에 맞게croppedImageQuality,letUserAdjustCrop및maxNumDocuments를 조정합니다. - 저장소:
ResponseType.ImageFilePath를 사용할 때 앱 세션이 종료되기 전에 스캔된 파일을 원하는 저장 위치로 이동하거나 복사합니다.