fckeditor 를 개조 하여 워드 의 그림 복사 붙 여 넣 기 사 고 를 지원 합 니 다.
다음은 순 전 히 성격 을 탐구 하고 본인 은 js 에 정통 하지 않 습 니 다.
1. 먼저 fckeditor 가 워드 의 문 서 를 붙 인 후에 코드 가 어떻게 되 는 지 알 아야 합 니 다.fckeditor 소스 코드 를 대충 봤 는데 워드 가 일반 텍스트 가 아 닌 것 같 아서 복사 한 후에 클립보드 에 들 어가 raw paste 로 붙 여야 합 니 다.
워드 의 그림:
<v:imagedata o:title="aaa" src =
"file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\01\clip_image003.png"></v:imagedata>
정규 로 모든 < v: imagedata > 를 찾 는 것 은 어 려 운 일이 아 닙 니 다. 하지만 자동 으로 올 리 려 고 했 습 니 다. 본인 은 form 을 숨 기 고 input file 로 자동 으로 값 을 부여 한 다음 submit 하려 고 했 습 니 다. 그러나 security issue 로 인해 input file 의 value 는 읽 기만 하고 동적 으로 값 을 부여 할 수 없 었 습 니 다. 그것 은 답답 합 니 다. 하지만 생각해 보 니 js 라 는 일 을 모두 할 수 있다 면 인터넷 은 아무 도 감히 사용 하지 못 할 것 입 니 다.너무 안전 하지 않 습 니 다. 중요 한 서 류 는 호 의 를 갖 지 않 은 프로그래머 에 게 쉽게 얻 을 수 있 습 니 다. 그것 은 공포 입 니 다!activex 컨트롤 을 사용 하지 않 는 것 은 불가능 한 것 같 습 니 다.
워드 의 공식:
<v:imagedata o:title="" src = "file:///C:\DOCUME~1\ADMINI~\LOCALS~1\Temp\msohtml1\01\clip_image001.wmz">
</v:imagedata>
그림 과 다 를 바 없 이 wmz 나 emz 로 압축 되 었 습 니 다. 자바 에 게 는 식 은 죽 먹 기 입 니 다. 가 져 온 Gzip Input Stream 으로 압축 을 풀 면 됩 니 다.
워드 의 그림:
<v:group> 。。。<v:shapetype.../> <v:shape.../> <v:rect.../> <v:oval.../> <v:line.../>。。。</v:group>
2. 이와 유사 한 라벨 은 w3 의 기준 이 아니 므 로 가입 해 야 합 니 다.
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=gb2312">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 11">
<meta name=Originator content="Microsoft Word 11">
<link rel=File-List href="aaa.files/filelist.xml">
<link rel=Edit-Time-Data href="aaa.files/editdata.mso">
<link rel=OLE-Object-Data href="aaa.files/oledata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
비슷 한 머리 야.
3. 이 사고 에 따라 먼저 fckeditor 에 워드 를 붙 여 그림, 공식 등 요 소 를 표시 하지 못 하 는 문 제 를 해결 합 니 다.fck 열기paste. html 파일 을 찾 아서 수정 합 니 다.
oDoc.write('<html><head><scr' + 'ipt>window.onerror = function() { return true ; };<\/script><\/head><body><\/body><\/html>') ;
... 을 위 하여
// IE xmlns style,
oDoc.write('<html xmlns:v=\'urn:schemas-microsoft-com:vml\'' +
' xmlns:o=\'urn:schemas-microsoft-com:office:office\'' +
' xmlns:w=\'urn:schemas-microsoft-com:office:word\'' +
' xmlns=\'http:\/\/www.w3.org\/TR\/REC-html40\'>' +
' <head>' +
'<!--[if !mso]>' +
'<style>' +
'v\\:* {behavior:url(#default#VML);}' +
'o\\:* {behavior:url(#default#VML);}' +
'w\\:* {behavior:url(#default#VML);}' +
'.shape {behavior:url(#default#VML);}' +
'<\/style>' +
'<![endif]-->' +
'<scr' + 'ipt>window.onerror = function() { return true ; };<\/script><\/head><body><\/body><\/html>') ;
이렇게 하면 fckeditor 붙 여 넣 기 창 에 그림, 공식, 그림 등 요 소 를 표시 하 는 문 제 를 해결 할 수 있 습 니 다.
요약: 이상 fckeditor 의 붙 여 넣 기 디 스 플레이 문 제 를 해결 할 수 있 습 니 다. 그러나 서버 에 업로드 한 후에 로 컬 그림, wmz 와 같은 파일 을 서버 에 자동 으로 업로드 해 야 합 니 다. 그렇지 않 으 면 헛 된 것 입 니 다. 이러한 문 제 를 해결 하려 면 제3자 컨트롤 에 의존 해 야 합 니 다. 현재 본인 은 vc + + 로 쓴 activex 컨트롤 을 테스트 하여 이 기능 을 완성 하고 있 습 니 다.수준 이 제한 되 어 있 으 니 잘못된 점 이 있 으 면 팡 씨 집안 에서 아낌없이 가르침 을 주시 기 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
awk 상용 명령awk 는 모든 입력 줄 을 하나의 기록 으로 인식 하고 그 줄 의 모든 단어 도 메 인 을 하나의 필드 로 인식 합 니 다. ARGC 명령 줄 에 awk 스 크 립 트 가 들 어 오 는 매개...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.