문제

XHTML 소스에서 DOCX 파일을 생성하기위한 자동화 된 프로세스가 필요합니다. XHTML 파일에는 이미지가 포함되어 있습니다.<img> "SRC"속성이 외부 참조를 가리키는 요소). 그러나 DOCX 파일은 네트워크 연결없이 읽을 수 있어야하므로 이미지를 DOCX 패키지 (즉 /미디어 폴더)에 직접 포함시키는 방법을 찾아야합니다.

지금까지 나는 AltChunk 방법을 사용했습니다 ( 에릭 화이트) .docx 파일을 만듭니다. OpenXML SDK를 사용하여 이미지 부품을 패키지에 삽입하기를 희망했습니다. 그러나 그렇게하려면 단락을 삽입해야합니다 (<p> 노드) 문서에. 불행히도 문서 부분에는 AltChunk에 대한 참조 만 포함되어 있습니다 (DOCX 패키지에 별도로 저장). 물론 DOCX가 열리고 편집 및 저장되면 AltChunk 부품이 제거되고 내용이 Document.xml에 제대로 내장됩니다. 그러나 나는 프로그래밍 방식으로 할 수있는 방법을 모르므로 도움이되지 않습니다.

내가 고려한 기타 옵션 :

  1. XHTML을 세그먼트로 분할하고 각 이미지 사이를 분리 한 다음 각 이미지간에 각 AltChunk를 추가하고 각 이미지 사이의 적절한 이미지 참조를 추가하십시오. (지루하지만 가능해)
  2. 미디어 폴더에 이미지를 삽입 한 다음 WordProcessingML을 XHTML에 직접 포함시켜 <img> 포장 된 이미지 파일을 참조하십시오. (최상의 의심스러운) 누구든지 더 나은 접근 방식을 생각할 수 있습니까?
도움이 되었습니까?

해결책

글쎄, 나는 내 자신의 문제를 해결했다 : 나는 문서를 mhtml (파일에 직접 내장 된 이미지를 포함 할 수 있음)으로 변환하기로 결정한 다음 AltChunk를 사용하여 최종 docx 파일을 만듭니다. 그러나 여전히 파일에 대해 약간의 후 처리를하고 싶었지만 (Word 문서에 endnotes를 삽입하기 위해) 위에서 언급했듯이 이것은 불가능합니다. ~ 후에 AltChunk는 DOCX로 변환되었으며 프로그래밍 방식으로 수행 할 수 없습니다.

그래서 나는 AltChunk 경로를 모두 우회 할 수 있고 mhtml을 XHTML에서 DOCX로 "게이트웨이"로 사용할 수 있다는 것이 나에게 시작되었습니다. 방금 XHTML을 MHTML로 변환했습니다. 그리고 Endnotes는 .doc 확장자로 파일의 이름을 바꿨습니다. 결과 문서는 단어로 직접 열 수 있으며 (후속 저장시 더 올바르게 변환됩니다). 지금까지 그것은 훌륭하게 작동합니다 (Mac의 Word 버전과 Word2003의 일부 버그가 있지만).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top