Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

206
Visualizações
convert taken picture to base64 format

I'm working with BootstrapVue and want to have a integrated camera-function in my project. Taking a picture works well and is handled in function takePicture().

Now I need following - after taking my picture I want to be able to click on my button upload photo and convert my taken picture to base64.

I've tried to find a solution in different forums but nothing really helped me out - so I would be very pleased if you can help me out! Thanks in advance!

Following is standing in my template:

<div>
  <video class="mb-3" ref="video" id="video" width="100%" height="100%" autoplay />
  <canvas class="mb-3" id="responsive-canvas"></canvas>
  <div class="col-md-12">
    <b-button class="mb-2" variant="block success" @click="takePicture()">Make photo</b-button>
  </div>
  <div class="col-md-12">
    <b-button class="mb-2" variant="block success" @click="uploadPicture()">upload photo</b-button>
  </div>
</div>

my script:

export default {
  data() {
    return {
      video: {play: null, onplay: null, srcObject: null},
      canvas: {},
    };
  },

  mounted() {
    this.video = this.$refs.video;
    if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
      navigator.mediaDevices.getUserMedia({ video: true }).then((stream) => {
        this.video.srcObject = stream;
        this.video.play();
        this.video.onplay = function () {};
        this.video.play();
      });
    }

    var canvas = document.getElementById("responsive-canvas");
    var heightRatio = 0.75;
    canvas.height = canvas.width * heightRatio;
  },

  methods: {
    uploadPicture() {
      //need code here
    },

    takePicture() {
      const picture = document.querySelector("canvas");
      const ctx = picture.getContext("2d");
      ctx.imageSmoothingEnabled = true;
      ctx.imageSmoothingQuality = "high";
      ctx.drawImage(document.querySelector("video"), 0, 0, picture.width, picture.height);

      this.takenPicture = ctx.drawImage(document.querySelector("video"), 0, 0, picture.width, picture.height);
    },
  },
};
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda