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

163
Visualizações
Problema en safari al capturar la imagen de html, incluido el lienzo de la firma

Estoy trabajando en un proyecto de reactjs y estoy tratando de capturar el HTML para crear imágenes, incluido el lienzo de la firma. Funciona en Firefox y Chrome, pero no en Safari. La imagen se genera con el lienzo vacío.

Reaccionar lienzo de firma

HTML a imagen

 this.setState({ formInput: document.getElementById("form-pdf") }) generateImage(data) { const input = this.state.formInput; let apiService = new ApiServices(); if (input) { await htmlToImage.toBlob(input) .then((blob) => { console.log(blob,'blob') let file = new File([blob], "image.png", { type: "image/png" }) if (data) { let body = new FormData(); apiService.http.post(this.getAPINames().Upload, body, { headers: { 'Accept': 'application/json', 'Content-Type': 'multipart/form-data', }, timeout: 100000, }).then(response => { console.log("Success") }).catch(failure => { hideLoader(); if (isDev) { console.log("on upload image error:", failure) } }); } }) .catch((error) => { if (isDev) { console.log(error) } }) } }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Resolví este problema simplemente con una doble ejecución de la función html-to-image, por lo que en tu caso podría ser así:

 generateImage(data) { const input = this.state.formInput; let apiService = new ApiServices(); if (input) { await htmlToImage.toBlob(input) .then(function(){ await htmlToImage.toBlob(input) .then((blob) => { console.log(blob,'blob') let file = new File([blob], "image.png", { type: "image/png" }) if (data) { let body = new FormData(); apiService.http.post(this.getAPINames().Upload, body, { headers: { 'Accept': 'application/json', 'Content-Type': 'multipart/form-data', }, timeout: 100000, }).then(response => { console.log("Success") }).catch(failure => { hideLoader(); if (isDev) { console.log("on upload image error:", failure) } }); } }) .catch((error) => { if (isDev) { console.log(error) } }) }) } }
about 4 years ago · Juan Pablo Isaza Relatório
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