2013-11-21 2 views
1

iframe의 스냅 샷을 수행해야하지만 html2canvass는이 작업을 수행하지 않습니다. 이는 잘 알려져 있습니다.html2canvas, iframe을 잡는 방법은 무엇입니까?

myiframe.contentWindow.document.body 요소와 함께 iframe의 내용을 html2canvas 함수에 전달하려고했는데 iframe 내부 페이지와 페이지가 동일한 도메인 (보안상의 이유)에있는 경우에만이 작업이 가능하지만 꼭 필요한 것입니다. . 지금

html2canvas(divToShare.contentWindow.document.body, { 
    onrendered: function(canvas) { 
     screenshot = canvas.toDataURL(); 
    } 
}; 

그러나

문제가 와서 .... 출력 이미지는 기대에 매우 유사하지 않다. 버튼을 ... 텍스트 필드와 다른 이상한 것 같은 exemple 찾습니다

원래 페이지

enter image description here

의 이미지를 그리고 이것은 html2canvas, 다른 버튼 및 텍스트 상자에서 PNG 결과입니다 배경도 없습니다.

enter image description here

내가 뭘 잘못합니까? 또는 이미지 렌더러가 정확히 동일하지 않은 것이 정상입니까? iframe의 스냅 샷을 만들면됩니다. 다른 방법을 사용하면 나에게 좋습니다.

답변

0

아마도 html2canvas는 사용자 측에서 작동하지만 서버 측에서는 작동하지 않기 때문일 수 있습니다. 그리고 iframe의 페이지 CSS는 렌더링 될 수 없습니다.

+1

아직 코멘트를 게시 할 수는 없지만 코멘트와 비슷한 답변을 게시하지 마십시오. – Markasoftware

+0

죄송합니다, 저는 웹 개발 초보자이며 stackoverflow입니다. 댓글과 같은 답변을 게시하지 않으려면 어떻게해야합니까? 이미지 또는 코드 또는 다른 것을 추가 하시겠습니까? 말해줘. 그리고 그 질문에 대한 답을 알고 있다면 나에게도 말해주십시오. 나는 내 대답이 사실임을 모르지만 나는 진정으로 진정한 대답을 알고 싶다. 고맙습니다. – Yelen

+0

글쎄, StackOverflow에 대한 답변이 완전히 질문에 대답하기로되어 있습니다. 그들은 명확하고 분명한 설명/해답을 제공하는 확실한 대답을하기로되어 있습니다. 답을 이해하는 데 도움이되는 설명은 토론에 사용됩니다. 예를 들어,이 대답은 "어쩌면"과 같은 단어를 사용합니다. 이는 어쩌면 답을 모르거나 그게 실제로 문제가되는지를 의미합니다. 그것은 의견에 속합니다. – Markasoftware

관련 문제