2013-10-05 3 views
1

MS 파워 포인트 (예 : 사각형 또는 화살표)로 그림을 복사하면 MS Word 또는 MS Outlook과 같은 다른 Microsoft 제품에 붙여 넣을 수 있습니다.MS Office에서 HTML로 복사하여 붙여 넣기

그렇게 할 수있는 웹 페이지를 만들 수 있습니까?

파워 포인트에서 contenteditable div 또는 텍스트 영역에 붙여 넣으려고했지만 아무 일도 발생하지 않았습니다.

나는 상자 밖에서 작동하지 않을 것 같지만 어떻게 든 마이크로 소프트 형식의 모든 유형에 있어도 복사하여 붙여 넣기 버퍼의 정보에 어떻게 든 액세스 할 수 있습니까?

답변

0

원시 데이터 만 복사하려는 경우 가능합니다. 왜냐하면 Buffer는 문자 ASCII 만 저장하기 때문에 특정 텍스트의 스타일이 아닙니다. 이 스타일을 원하면 CSS 파일

+0

안녕하세요. 답변 해 주셔서 감사합니다. 서식있는 텍스트를 복사하여 붙여 넣기하면 바로 사용할 수 있습니다. 숫자 (예 : 사각형, 화살표, 이미지) 복사에 더 관심이 있습니다. – Oli

0

그림을 마우스 오른쪽 단추로 클릭하고 그림으로 저장을 선택하고 PNG/JPG에 저장하십시오. 그런 다음 html에 img 태그를 사용하여 이미지를 참조하십시오.

1

'붙여 넣기'이벤트를 수신하고 ClipboardEvent 객체의 이미지 모양을 가져올 수 있습니다. 코드 샘플 :

document.addEventListener('paste', handleClipBoard); 
function handleClipBoard(ev) { 
    ev.preventDefault(); 
    Array.prototype.forEach.call(ev.clipboardData.items, function(item) { 
    if (item.kind === 'string') { 
     item.getAsString(function(content) { 
      ev.target.innerHTML += content; 
     }); 
    } else if(item.kind === 'file') { 
     var blob = item.getAsFile(); 
     console.dir(blob); 
     var img = document.createElement('img'); 
     img.src = URL.createObjectURL(blob); 
     ev.target.appendChild(img); 
    } 
    }); 
} 

ClipboardEvent API는 여기에 지정된 : http://www.w3.org/TR/clipboard-apis 그러나,이 API는 아주 새로운 단지 크롬 지금은 완벽하게 지원합니다.

클립 보드의 내용을 여러 번 붙여 넣을 수 있습니다. 이는 클립 보드의 데이터가 동시에 다른 형식을 취할 수 있기 때문입니다. item.type 속성으로 필터 할 수 있습니다.