Menggunakan @capgo/camera-preview
Antarmuka Utama untuk Plugin Pratinjau Kamera
Pasang
bun add @capgo/camera-preview
bunx cap sync
bunx cap sync Menggandakan kode native code plugin ke proyek native Anda. Jalankan lagi setelah setiap pembaruan plugin.
Impor
import { CameraPreview } from '@capgo/camera-preview';
Lihat API secara singkat
| Metode | Deskripsi |
|---|---|
start |
Mulai tampilan kamera. |
stop |
Berhenti tampilan kamera. |
capture |
Ambil gambar dari kamera. |
captureSample |
Ambil frame tunggal dari aliran tampilan kamera. |
startBarcodeScanner |
Mulai skanning kode barcode pada tampilan kamera aktif. |
stopBarcodeScanner |
Berhenti skanning kode barcode sambil menjalankan tampilan kamera. |
getSupportedFlashModes |
Dapatkan mode kilat yang didukung oleh kamera aktif. |
setAspectRatio |
Set rasio aspek tampilan kamera. |
getAspectRatio |
Dapatkan rasio aspek kamera saat ini. |
setGridMode |
Set mode grid tampilan overlay kamera. |
getGridMode |
Mendapatkan mode grid saat ini dari overlay pratinjau kamera. |
checkPermissions |
Mengecek status izin kamera (dan mikrofon opsional) saat ini tanpa mempromosikan dialog sistem. |
requestPermissions |
Mengajukan izin kamera (dan mikrofon opsional). Jika izin sudah diberikan atau ditolak, status saat ini akan dikembalikan tanpa mempromosikan. showSettingsAlert Jika nilai ini adalah true dan izin ditolak, maka akan ditampilkan peringatan spesifik platform untuk mengarahkan pengguna ke pengaturan aplikasi. |
getHorizontalFov |
Mengambil sudut pandang horizontal (FoV) untuk kamera aktif. Perlu diingat: ini bisa menjadi perkiraan pada beberapa perangkat. |
getSupportedPictureSizes |
Mengambil ukuran gambar yang didukung untuk semua kamera. |
setFlashMode |
Mengatur mode kilasan untuk kamera aktif. |
flip |
Mengganti antara kamera depan dan belakang. |
setOpacity |
Mengatur kejelasan kamera preview. |
stopRecordVideo |
Berhenti Rekaman Video yang Sedang Berlangsung. |
startRecordVideo |
Mengaktifkan rekaman video. |
setVideoQuality |
Mengatur kualitas rekaman video untuk sesi kamera aktif. |
getVideoQuality |
Mengambil kualitas rekaman video saat ini. |
getSupportedVideoQualities |
Mengembalikan kualitas video yang didukung oleh kamera aktif. |
setVideoCodec |
Mengatur codec video yang digunakan saat merekam. |
getVideoCodec |
Mengembalikan codec video yang saat ini digunakan untuk merekam. |
getSupportedVideoCodecs |
Mengembalikan codec video yang didukung oleh kamera aktif. |
isVideoStabilizationSupported |
Mengecek apakah stabilisasi video didukung oleh kamera aktif. |
getSupportedVideoStabilizationModes |
Mengembalikan mode stabilisasi video yang didukung oleh kamera aktif. |
getVideoStabilizationMode |
Mengembalikan mode stabilisasi video saat ini. |
setVideoStabilizationMode |
Mengatur mode stabilisasi video untuk merekam. Tidak dapat diubah saat merekam sedang berlangsung. Anda juga dapat melewati videoStabilizationMode opsi. startRecordVideo() options. |
isRunning |
Mengembalikan semua perangkat kamera yang tersedia. |
getAvailableDevices |
Mengambil semua perangkat kamera yang tersedia. |
getZoom |
Mendapatkan status zoom saat ini, termasuk min/max dan informasi lens saat ini. |
getZoomButtonValues |
Mengembalikan nilai tombol zoom untuk beralih cepat. - iOS/Android: termasuk 0,5 jika ultra-lebar tersedia; 1 dan 2 jika lebar tersedia; 3 jika telefoto tersedia - Web: tidak tersedia. |
setZoom |
Mengatur tingkat zoom kamera. |
getFlashMode |
Mendapatkan mode kilat saat ini. |
setDeviceId |
Mengganti kamera aktif ke satu dengan spesifikasi deviceId. |
getDeviceId |
Mendapatkan ID perangkat kamera yang saat ini terikat. Pada Android, jika permintaan lens fisik jatuh kembali ke kamera logis, ini mengembalikan ID kamera logis yang terikat. |
getPreviewSize |
Mendapatkan ukuran dan posisi preview saat ini. |
setPreviewSize |
Mengatur ukuran dan posisi preview. |
setFocus |
Mengatur fokus kamera ke titik tertentu di preview. |
deleteFile |
Menghapus file di jalur absolut yang diberikan pada perangkat. Gunakan ini untuk membersihkan cepat gambar sementara yang dibuat dengan storeToFilePada web, ini tidak tersedia dan akan melemparkan kesalahan. |
getSafeAreaInsets |
Mendapatkan inset area yang aman untuk perangkat. Mengembalikan inset orientasi-aware notch/kamera cutout dan orientasi saat ini. Pada mode potret: mengembalikan inset atas (notch di atas). Pada mode lanskap: mengembalikan inset kiri (notch dipindahkan ke samping). Ini secara spesifik mengarahkan ke area cutout (notch, lubang punch, dll.) yang semua ponsel modern memiliki. |
getOrientation |
Mengambil orientasi perangkat saat ini dalam format lintas platform. |
getExposureModes |
Mengembalikan mode pencahayaan yang didukung oleh kamera aktif. Mode dapat mencakup: 'terkunci', 'otomatis', 'terus menerus', 'kustom'. |
getExposureMode |
Mengembalikan mode pencahayaan saat ini. |
setExposureMode |
Mengatur mode pencahayaan. |
getExposureCompensationRange |
Mengembalikan rentang nilai kompensasi pencahayaan (EV bias). |
getExposureCompensation |
Mengembalikan nilai kompensasi pencahayaan (EV bias) saat ini. |
setExposureCompensation |
Mengatur kompensasi pencahayaan (EV bias). Nilai akan ditekan ke rentang. |
getWhiteBalanceModes |
Dapatkan mode keseimbangan warna yang didukung oleh kamera aktif. Mode dapat mencakup: 'AUTO', 'LOCK', 'CONTINUOUS'. CUSTOM belum terdaftar sampai dukungan manual gain diimplementasikan. |
getWhiteBalanceMode |
Mengembalikan mode kecerahanan putih saat ini. |
setWhiteBalanceMode |
Mengatur mode kecerahanan putih. CONTINUOUS menggunakan auto kecerahanan putih yang berjalan (direkomendasikan; menghindari bayangan kuning/keemasan), LOCK menghentikan keuntungan saat ini, AUTO melakukan penyesuaian satu kali. CUSTOM ditahan dan ditolak sampai dukungan keuntungan manual diimplementasikan. |
getSupportedVideoFrameRates |
Menampilkan kecepatan frame video yang didukung oleh kamera aktif untuk format saat ini. Nilai yang didukung bergantung pada kamera yang dipilih, lensa, dan kualitas video. |
getVideoFrameRate |
Mengembalikan kecepatan frame video yang dikonfigurasi untuk kamera aktif. Pada Android, kecepatan rekaman aktual masih dapat bervariasi dalam kondisi pencahayaan rendah atau tekanan panas. |
setVideoFrameRate |
Mengatur kecepatan target frame video untuk sesi kamera aktif. Lebih baik melewati frameRate to startRecordVideo() ketika merekam dimulai. Menolak nilai yang tidak didukung dengan pesan kesalahan yang jelas. |
Examples
start()
Menghentikan tampilan kamera.
import { CameraPreview } from '@capgo/camera-preview';
const result = await CameraPreview.start({ parent: 'parent' });
console.log(result);
stop()
Mengambil gambar dari kamera.
import { CameraPreview } from '@capgo/camera-preview';
await CameraPreview.stop();
capture()
Mengambil gambar dari kamera.
import { CameraPreview } from '@capgo/camera-preview';
const result = await CameraPreview.capture({ height: 1920 });
console.log(result);
captureSample()
Mengambil frame tunggal dari aliran pratinjau kamera.
import { CameraPreview } from '@capgo/camera-preview';
const result = await CameraPreview.captureSample({
quality: 85,
mirrorFrontCamera: false,
});
console.log(result);
startBarcodeScanner()
Mengaktifkan skanner kode barcode pada pratinjau kamera aktif.
import { CameraPreview } from '@capgo/camera-preview';
await CameraPreview.startBarcodeScanner();
stopBarcodeScanner()
Menghentikan skanner kode barcode sambil menjalankan pratinjau kamera.
import { CameraPreview } from '@capgo/camera-preview';
await CameraPreview.stopBarcodeScanner();
Daftar metode inti di atas mencakup 56 metode utama. Pembantu pendengar dan versi, serta kontrak lengkap setiap metode, terdokumentasi di repository GitHub.
Dengarkan event
addListener mengembalikan sebuah handle. Panggil handle.remove() ketika layar diunmount, atau CameraPreview.removeAllListeners() untuk membersihkan setiap pendengar.
Referensi lengkap
Teruskan dari Menggunakan @capgo/camera-preview
Jika Anda menggunakan Menggunakan @capgo/camera-preview untuk merencanakan perilaku media dan antarmuka native, hubungkannya dengan @capgo/camera-preview untuk detail implementasi di @capgo/camera-preview, Berikut Langkah Awal untuk detail implementasi di Berikut Langkah Awal, Menggunakan @capgo/capacitor-aktivitas-hidup untuk kemampuan native di Menggunakan @capgo/capacitor-aktivitas-hidup, @capgo/capacitor-aktivitas-hidup untuk detail implementasi di @capgo/capacitor-aktivitas-nyata, dan Menggunakan @capgo/capacitor-pemain-video untuk kemampuan asli di Menggunakan @capgo/capacitor-pemain-video.