Salta al contenuto principale
@capgo/camera-preview Media Open source

Anteprima fotocamera Plugin Capacitor

Visualizza il feed della fotocamera in overlay con controlli personalizzabili e funzioni di cattura

Installa

bun add @capgo/camera-preview bunx cap sync
npm, pnpm o yarn
  • npm install @capgo/camera-preview
  • pnpm add @capgo/camera-preview
  • yarn add @capgo/camera-preview

Guida

Come usare Camera Preview in Capacitor

Testa sul dispositivo

Scarica l'app Capgo, poi scansiona il QR code.

QR anteprima plugin Camera Preview code

Usare @capgo/camera-preview

L'interfaccia principale per il plugin CameraPreview.

Installa

bun add @capgo/camera-preview
bunx cap sync

bunx cap sync copia i code nativi del plugin nei tuoi progetti nativi. Eseguilo di nuovo dopo ogni aggiornamento del plugin.

Importa

import { CameraPreview } from '@capgo/camera-preview';

API in breve

Metodo Descrizione
start Avvia la preview della camera.
stop Ferma la preview della camera.
capture Scatta una foto con la camera.
captureSample Cattura un singolo frame dallo stream della preview.
startBarcodeScanner Avvia la scansione dei barcode sulla preview attiva.
stopBarcodeScanner Ferma la scansione dei barcode mantenendo attiva la preview.
getSupportedFlashModes Ottiene le modalità flash supportate dalla camera attiva.
setAspectRatio Imposta l'aspect ratio della preview della camera.
getAspectRatio Ottiene l'aspect ratio attuale della preview della camera.
setGridMode Imposta la modalità griglia dell'overlay della preview.
getGridMode Ottiene la modalità griglia attuale dell'overlay della preview.
checkPermissions Verifica lo stato dei permessi della fotocamera (e opzionalmente del microfono) senza mostrare il dialog di sistema.
requestPermissions Richiede i permessi per la fotocamera (e il microfono opzionale). Se i permessi sono già stati concessi o negati, viene restituito lo stato attuale senza prompt. Se showSettingsAlert è true e i permessi sono negati, verrà mostrato un alert specifico della piattaforma per guidare l'utente nelle impostazioni dell'app.
getHorizontalFov Ottiene il campo visivo (FoV) orizzontale della fotocamera attiva. Nota: su alcuni dispositivi potrebbe essere una stima.
getSupportedPictureSizes Ottiene le dimensioni delle immagini supportate per tutte le fotocamere.
setFlashMode Imposta la modalità flash per la fotocamera attiva.
flip Passa dalla fotocamera anteriore a quella posteriore.
setOpacity Imposta l'opacità della camera preview.
stopRecordVideo Interrompe una registrazione video in corso.
startRecordVideo Avvia la registrazione di un video.
setVideoQuality Imposta la qualità della registrazione video per la sessione della fotocamera attiva.
getVideoQuality Ottiene la qualità attuale della registrazione video.
getSupportedVideoQualities Restituisce le qualità video supportate dalla fotocamera attiva.
setVideoCodec Imposta il codec video utilizzato durante la registrazione.
getVideoCodec Ottiene il codec video attualmente in uso per la registrazione.
getSupportedVideoCodecs Restituisce i codec video supportati dalla fotocamera attiva.
isVideoStabilizationSupported Verifica se la stabilizzazione video è supportata dalla fotocamera attiva.
getSupportedVideoStabilizationModes Restituisce le modalità di stabilizzazione video supportate dalla fotocamera attiva.
getVideoStabilizationMode Ottiene la modalità di stabilizzazione video corrente.
setVideoStabilizationMode Imposta la modalità di stabilizzazione video per la registrazione. Non può essere modificata durante una registrazione in corso. Puoi anche passare videoStabilizationMode nella startRecordVideo() le opzioni.
isRunning Verifica se l'anteprima della fotocamera è attualmente attiva.
getAvailableDevices Ottiene tutti i dispositivi fotocamera disponibili.
getZoom Ottiene lo stato attuale dello zoom, inclusi min/max e le info sull'obiettivo corrente.
getZoomButtonValues Restituisce i valori dei pulsanti di zoom per uno switch rapido. - iOS/Android: include 0.5 se l'ultra-wide è disponibile; 1 e 2 se il wide è disponibile; 3 se il telephoto è disponibile - Web: non supportato.
setZoom Imposta il livello di zoom della fotocamera.
getFlashMode Ottiene la modalità flash attuale.
setDeviceId Passa la camera attiva a quella con il valore specificato deviceId.
getDeviceId Ottiene l'ID del dispositivo camera attualmente collegato. Su Android, se una richiesta per una lente fisica passa a una camera logica, restituisce l'ID della camera logica collegata.
getPreviewSize Ottiene la dimensione e la posizione correnti dell'anteprima.
setPreviewSize Imposta la dimensione e la posizione dell'anteprima.
setFocus Imposta il focus della fotocamera su un punto specifico dell'anteprima.
deleteFile Elimina un file al percorso assoluto specificato sul dispositivo. Usalo per pulire rapidamente le immagini temporanee create con storeToFile. Sul web non è supportato e lancerà un errore.
getSafeAreaInsets Ottiene gli inset della safe area per i dispositivi. Restituisce l'inset della notch/camera cutout in base all'orientamento e l'orientamento attuale. In modalità portrait: restituisce l'inset superiore (notch in alto). In modalità landscape: restituisce l'inset sinistro (notch spostata sul lato). Si concentra specificamente sull'area di cutout (notch, punch hole, ecc.) presente su tutti i telefoni moderni.
getOrientation Ottiene l'orientamento corrente del dispositivo in un formato cross-platform.
getExposureModes Restituisce le modalità di esposizione supportate dalla fotocamera attiva. Le modalità possono includere: 'locked', 'auto', 'continuous', 'custom'.
getExposureMode Restituisce la modalità di esposizione corrente.
setExposureMode Imposta la modalità di esposizione.
getExposureCompensationRange Restituisce l'intervallo supportato per la compensazione dell'esposizione (EV bias).
getExposureCompensation Restituisce la compensazione dell'esposizione (EV bias) corrente.
setExposureCompensation Imposta la compensazione dell'esposizione (EV bias). Il valore verrà limitato all'intervallo.
getWhiteBalanceModes Restituisce le modalità di bilanciamento del bianco supportate dalla fotocamera attiva. Le modalità possono includere: 'AUTO', 'LOCK', 'CONTINUOUS'. CUSTOM non è elencato finché non viene implementato il supporto ai guadagni manuali.
getWhiteBalanceMode Returns the current white-balance mode.
setWhiteBalanceMode Imposta la modalità di bilanciamento del bianco. CONTINUOUS mantiene attivo il bilanciamento del bianco automatico (consigliato; evita dominanti calde/gialle), LOCK blocca i guadagni attuali, AUTO esegue una regolazione singola. CUSTOM è riservato e verrà rifiutato finché non sarà implementato il supporto manuale.
getSupportedVideoFrameRates Elenca i frame rate video supportati dalla fotocamera attiva per il formato corrente. I valori supportati dipendono dalla fotocamera, dall'obiettivo e dalla qualità video selezionati.
getVideoFrameRate Restituisce il frame rate video configurato per la fotocamera attiva. Su Android, il frame rate di registrazione effettivo può variare in condizioni di scarsa luminosità o sotto stress termico.
setVideoFrameRate Imposta il frame rate video target per la sessione della fotocamera attiva. Si consiglia di passare frameRate a startRecordVideo() all'avvio di una registrazione. Rifiuta i valori non supportati con un errore esplicito.

Esempi

start()

Avvia la camera preview.

import { CameraPreview } from '@capgo/camera-preview';

const result = await CameraPreview.start({ parent: 'parent' });
console.log(result);

stop()

Ferma la camera preview.

import { CameraPreview } from '@capgo/camera-preview';

await CameraPreview.stop();

capture()

Scatta una foto con la fotocamera.

import { CameraPreview } from '@capgo/camera-preview';

const result = await CameraPreview.capture({ height: 1920 });
console.log(result);

captureSample()

Acquisisce un singolo frame dallo stream della camera preview.

import { CameraPreview } from '@capgo/camera-preview';

const result = await CameraPreview.captureSample({
  quality: 85,
  mirrorFrontCamera: false,
});
console.log(result);

startBarcodeScanner()

Avvia la scansione dei barcode sulla camera preview attiva.

import { CameraPreview } from '@capgo/camera-preview';

await CameraPreview.startBarcodeScanner();

stopBarcodeScanner()

Ferma la scansione dei barcode mantenendo attiva la camera preview.

import { CameraPreview } from '@capgo/camera-preview';

await CameraPreview.stopBarcodeScanner();

La tabella sopra elenca i 56 metodi core. Listener, helper di versione e il contratto completo di ogni metodo sono documentati nella repository GitHub.

Ascolta gli eventi

addListener restituisce un handle. Chiama handle.remove() quando la schermata viene smontata, o CameraPreview.removeAllListeners() per rimuovere tutti i listener.

Riferimento completo

Continua da Usare @capgo/camera-preview

Se stai usando Usare @capgo/camera-preview per pianificare il comportamento dei media nativi e dell'interfaccia, collegalo a @capgo/camera-preview per i dettagli di implementazione in @capgo/camera-preview, Per iniziare per i dettagli di implementazione nella guida introduttiva, Uso di @capgo/capacitor-live-activities per la funzionalità nativa nella pagina Uso di @capgo/capacitor-live-activities, @capgo/capacitor-live-activities per i dettagli di implementazione in @capgo/capacitor-live-activities, e Uso di @capgo/capacitor-video-player per la funzionalità nativa in Usare @capgo/capacitor-video-player.

FAQ

FAQ sul plugin Camera Preview

Come installo il plugin Camera Preview in un'app Capacitor?

Esegui "bun add @capgo/camera-preview" (o "npm install @capgo/camera-preview"), poi esegui "bunx cap sync" in modo che i progetti iOS e Android carichino il code nativo. Importalo da "@capgo/camera-preview" nella tua app code.

@capgo/camera-preview funziona con React, Vue e Angular?

Sì. Camera Preview è un pacchetto Capacitor, quindi funziona con qualsiasi framework web che giri all'interno di Capacitor, inclusi Ionic, React, Vue, Angular, Svelte e JavaScript puro.

Quale versione di Capacitor è supportata da @capgo/camera-preview?

I plugin Capgo seguono la major version di Capacitor: usa la major version del plugin che corrisponde alla tua major version di Capacitor (ad esempio plugin v8 con Capacitor 8). La tabella di compatibilità nel README di GitHub elenca le versioni mantenute.

@capgo/camera-preview è free e open source?

Sì. Il codice sorgente code è pubblico su GitHub all'indirizzo https://github.com/Cap-go/capacitor-camera-preview/ e il pacchetto è gratuito su npm. Bug report e pull request sono benvenuti.

Posso aggiornare code che usa Camera Preview senza passare per la revisione dell'App Store?

Installare o aggiornare il plugin modifica il code nativo, quindi serve una nuova build per lo store. Dopo, le modifiche a JavaScript, HTML e CSS che chiamano il plugin possono essere rilasciate subito con le live updates di Capgo.

Distribuisci modifiche alla Camera Preview senza attendere la revisione dell'app

Una volta incluso il plugin nel tuo store build, Capgo invia le modifiche a JavaScript, HTML e CSS tramite live updates in pochi minuti.

Inizia con Capgo