Vue implementiert die Funktion zum Aufrufen der Handykamera und des Albums

Vue implementiert die Funktion zum Aufrufen der Handykamera und des Albums

In diesem Artikel wird der spezifische Code von Vue zum Zugriff auf die Handykamera und das Album zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt

Meine eigene Zusammenfassung der nativen Methode zum Aufnehmen von Fotos und Alben auf Mobiltelefonen

HTML Code

<div>
//Anzuzeigendes Bild <div class="imgBox name">
      <img:src="imgQuelle" />
  </div>
  <van-Aktionsblatt v-Modell="show1">
   <ul>
    <li class="paizhao" @click="captureImage()">Machen Sie ein Foto</li>
    <li class="paizhao" @click="galleryImg()">Aus Album auswählen</li>
    <li class="paizhao" @click="quxiao()">Abbrechen</li>
   </ul>
  </van-action-sheet> 
</div>

js Logikcode

//In data () deklarierte Variablen {
zurückkehren {
 imgSrc: "", //Der angezeigte Bildpfad tupianlist: "", //Der angezeigte Bildcontainer }
}

Definieren Sie den Ereignisnamen in der Ereignismethode

Methoden: {
     // Wähle ein Bild aus dem Album galleryImg() {
      lass Dies = dies;
      console.log("Wählen Sie ein Bild aus dem Album aus:");
      plus.gallery.pick(Funktion(Pfad) {
        This.imgSrc = Pfad; //Pfad ist ein lokaler Pfad let img = neues Image();
        img.src = Pfad;
        img.onload = Funktion(Pfad) {
          var das = img;
          var w = diese.Breite, //320
            h = diese.Höhe, //426
            Maßstab = B / H;
          b = 320 || b;
          h = b / Maßstab;
          var Leinwand = Dokument.createElement("Leinwand");
          canvas.width = 300; //Diese Einstellung kann nicht verloren gehen, sonst wird die Canvas-Standardgröße von 300*150 übernommen. canvas.height = 300; //Diese Einstellung kann nicht verloren gehen, sonst wird die Canvas-Standardgröße von 300*150 übernommen. var ctx = canvas.getContext("2d");
          ctx.drawImage(das, 0, 0, 300, 300);
          var base64 = canvas.toDataURL(
            "Bild/PNG",
            "Bild/JPEG",
            "bild/jpg",
            1 || 0,8
          );     
          Dies.tupianlist = base64;
          // console.log(This.tupianlist + "Ich bin die transkodierte Basis");
 
  //Die Schnittstelle können Sie hier anfordern};
      });
    },
    // Mach ein Foto captureImage() {
      lass Dies = dies;
      var cmr = plus.camera.getCamera(); //Kameraverwaltungsobjekt abrufen var res = cmr.supportedImageResolutions[0]; //String-Array, von der Kamera unterstützte Auflösungen var fmt = cmr.supportedImageFormats[0]; //String-Array, von der Kamera unterstützte Dateiformate // console.log("Fotoauflösung: " + res + ", Fotodateiformat: " + fmt);
      cmr.captureImage(
        Funktion(Pfad) {
          plus.gallery.save(Pfad, Parameter => {
            let Datei = Parameter.Datei;
            //Als Base64 kodieren
            var img = neues Bild();
            img.src = Datei;
            img.onload = Funktion() {
              var das = img;
              var w = diese.Breite,
                h = diese Höhe,
                Maßstab = B / H;
              b = 320 || b;
              h = b / Maßstab;
              var Leinwand = Dokument.createElement("Leinwand");
              canvas.width = 300; //Diese Einstellung kann nicht verloren gehen, sonst wird die Canvas-Standardgröße von 300*150 übernommen. canvas.height = 300; //Diese Einstellung kann nicht verloren gehen, sonst wird die Canvas-Standardgröße von 300*150 übernommen. var ctx = canvas.getContext("2d");
              ctx.drawImage(das, 0, 0, 300, 300);
              var base64 = canvas.toDataURL(
                "Bild/PNG",
                "Bild/JPEG",
                "bild/jpg",
                1 || 0,8
              );
              // konsole.log(base64);
              Dies.tupianlist = base64;
  //Die Schnittstelle können Sie hier anfordern};
          });
          //Fotoaufnahmevorgang ausführen// Verzeichnisobjekt oder Dateiobjekt über URL-Parameter abrufen plus.io.resolveLocalFileSystemURL(Pfad, Funktion(Eintrag) {
            var tmpPath = entry.toLocalURL(); //Verzeichnispfad abrufen und in die lokale Pfad-URL-Adresse konvertieren This.imgSrc = tmpPath;
            // alert("Aufnahme erfolgreich: " + tmpPath);
          });
        },
        Funktion (Fehler) {
          //Rückruf, wenn die Bildaufnahme fehlgeschlagen ist // alert("Bildaufnahme fehlgeschlagen: " + error.message);
        },
        { Auflösung: res, Format: fmt }
      );
      dies.show1 = falsch;
    },
}

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Vue ruft die PC-Kamera auf, um die Fotofunktion zu realisieren
  • Vue ruft die Computerkamera auf, um die Fotofunktion zu realisieren
  • Vue ruft die lokale Kamera auf, um die Fotofunktion zu realisieren
  • Beispielcode für Live-Video der Vue Yingshi-Kamera
  • Vue2.0 implementiert die Funktion zum Aufrufen der Kamera zum Aufnehmen von Bildern, und exif.js implementiert die Funktion zum Hochladen von Bildern
  • Vue implementiert den Anruf der PC-Kamera, um Fotos in Echtzeit aufzunehmen

<<:  So konfigurieren Sie MGR Single Master und mehrere Slaves in MySQL 8.0.15

>>:  Detaillierte Bereitstellung von Docker+Gitlab+Gitlab-Runner

Artikel empfehlen

Wie viele Daten können in einer MySQL-Tabelle gespeichert werden?

Programmierer müssen sich viel mit MySQL befassen...

So fragen Sie die Schnittmenge von Zeiträumen in MySQL ab

Mysql-Abfragezeitraum-Schnittmenge Anwendungsszen...

Detailliertes Tutorial zur Installation von VirtualBox 6.0 auf CentOS 8 / RHEL 8

VirtualBox ist ein kostenloses Open Source-Virtua...

HTML erstellt eine einfache und schöne Anmeldeseite

Schauen wir uns das zunächst einmal an. HTML Quel...

Zusammenfassung der Verwendung von vue Watch und Computed

Inhaltsverzeichnis 01. Hörer beobachten (1) Funkt...

So verwenden Sie Nginx, um einen RTMP-Liveserver auszuführen

Dieses Mal haben wir einen RTMP-Liveübertragungss...

So installieren Sie MySql in CentOS 8 und erlauben Remoteverbindungen

Herunterladen und installieren. Prüfen Sie zunäch...