Heim Web-Frontend H5-Tutorial HTML5 Canvas JS steuert die Kamera auf Ihrem Computer oder Mobiltelefon. Instanz_html5-Tutorial-Fähigkeiten

HTML5 Canvas JS steuert die Kamera auf Ihrem Computer oder Mobiltelefon. Instanz_html5-Tutorial-Fähigkeiten

May 16, 2016 pm 03:47 PM
canvas html5 js 摄像头

Client-APIs auf Mobilgeräten und Desktop-Computern werden zunächst nicht synchronisiert. Bestimmte Funktionen und entsprechende APIs werden zunächst immer auf mobilen Geräten verfügbar sein, langsam werden diese APIs aber auch auf Desktop-Computern Einzug halten. Eine solche Anwendungsschnittstellentechnologie ist die getUserMedia-API, die Anwendungsentwicklern den Zugriff auf die Kamera des Benutzers oder die integrierte Kamera ermöglicht. Ich zeige Ihnen, wie Sie über einen Browser auf Ihre Kamera zugreifen und Screenshots extrahieren.

HTML-Code

Ich habe einige Kommentare in den folgenden Code geschrieben, bitte lesen Sie:

Kopieren Sie den Code
Der Code lautet wie folgt :

<!--
Idealerweise sollten wir zunächst feststellen, ob sich
auf Ihrem Gerät befindet Es gibt eine Webcam oder eine Kamera, aber der Einfachheit halber machen wir es einfach hier
Schreiben Sie HTML-Tags, anstatt JavaScript zur Beurteilung von
zu verwenden Dann generieren Sie diese Tags dynamisch
-->
<video id="video" width="640" height="480" automatische Wiedergabe></video>
<button id="snap">Foto aufnehmen</button>
<canvas id="canvas" width="640" height="480"></canvas>

Bevor Sie die oben genannten Tags schreiben, sollten Sie feststellen, ob der Client des Benutzers über Kameraunterstützung verfügt. Um Probleme zu vermeiden, werden diese HTML-Tags jedoch direkt hier geschrieben. Beachten Sie, dass die hier verwendete Länge und Breite 640 × 480 beträgt.

JavaScript-Code

Da wir den HTML-Code manuell geschrieben haben, ist der folgende js-Code viel einfacher als Sie denken.

Code kopieren
Der Code lautet wie folgt:

// Event-Listener einrichten
window.addEventListener("DOMContentLoaded", function() {
// Elemente greifen, Einstellungen erstellen usw.
var canvas = document.getElementById("canvas"),
context = canvas.getContext("2d"),
video = document.getElementById("video"),
videoObj = { "video": true },
errBack = function(error) {
console.log("Videoaufnahmefehler: ", error.code); };
// Video-Listener einrichten
if(navigator.getUserMedia) { // Standard
navigator.getUserMedia(videoObj, function(stream) {
video.src = stream;
video.play();
}, errBack);
} else if(navigator.webkitGetUserMedia) { // WebKit-prefixed
navigator.webkitGetUserMedia(videoObj, function(stream){
video.src = window.webkitURL.createObjectURL(stream);
video.play();
}, errBack);
}
else if(navigator.mozGetUserMedia) { // Firefox-Präfix
navigator.mozGetUserMedia(videoObj, function(stream){
video.src = window.URL.createObjectURL(stream);
video.play();
}, errBack);
}
}, false);
Sobald festgestellt wurde, dass der Browser des Benutzers getUserMedia unterstützt, ist Folgendes ganz einfach: Sie müssen nur den Quellcode des Videoelements auf die Live-Videoverbindung der Kamera des Benutzers festlegen. Das ist alles, was Sie tun müssen, um über Ihren Browser auf die Kamera zuzugreifen!
Die Funktion zum Aufnehmen von Bildern kann nur als etwas kompliziert bezeichnet werden. Wir fügen der Schaltfläche einen Listener hinzu und zeichnen den Videobildschirm auf die Leinwand.



Code kopierenDer Code lautet wie folgt:
//Fotoaktion auslösen
document.getElementById("snap")
.addEventListener("click", function() {
context.drawImage(video, 0, 0, 640, 480);
});
Natürlich können Sie dem Bild auch einige Filtereffekte hinzufügen…
Früher mussten wir ein Plug-in eines Drittanbieters verwenden, um über den Browser auf die Kamera des Benutzers zuzugreifen, was etwas kompliziert war. Jetzt benötigen wir nur noch die HTML5-Canvas-Technologie und JavaScript und können die Kamera des Benutzers einfach und schnell bedienen. Es ist nicht nur der Zugriff auf die Kamera, sondern dank der leistungsstarken Canvas-Technologie von HTML5 können wir den Bildern auch verschiedene bezaubernde Filtereffekte hinzufügen. Machen Sie jetzt ein Foto von sich mit Ihrer eigenen Kamera in Ihrem Browser!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Verschachtelte Tabelle in HTML Verschachtelte Tabelle in HTML Sep 04, 2024 pm 04:49 PM

Verschachtelte Tabelle in HTML

Tabellenrahmen in HTML Tabellenrahmen in HTML Sep 04, 2024 pm 04:49 PM

Tabellenrahmen in HTML

HTML-Rand links HTML-Rand links Sep 04, 2024 pm 04:48 PM

HTML-Rand links

HTML-Tabellenlayout HTML-Tabellenlayout Sep 04, 2024 pm 04:54 PM

HTML-Tabellenlayout

Text in HTML verschieben Text in HTML verschieben Sep 04, 2024 pm 04:45 PM

Text in HTML verschieben

HTML-geordnete Liste HTML-geordnete Liste Sep 04, 2024 pm 04:43 PM

HTML-geordnete Liste

HTML-Onclick-Button HTML-Onclick-Button Sep 04, 2024 pm 04:49 PM

HTML-Onclick-Button

HTML-Eingabeplatzhalter HTML-Eingabeplatzhalter Sep 04, 2024 pm 04:54 PM

HTML-Eingabeplatzhalter

See all articles