2016-11-11 2 views
0

: MS Word 자동화 interop, C#, 2000 섹션 및 3 헤더가있는 문서.Word Interop - 한 번만 처리 머리글과 바닥 글

문제 : 헤더과 바닥 글의 효율적인 처리 (예 : 텍스트 검색 & 헤더에 교체는)

그것은이 같은 것입니다 단어에서 머리글 (또는 바닥 글)를 처리 할 수있는 방법을 보인다

foreach (Microsoft.Office.Interop.Word.Section section in theDoc.Sections) 
{ 
    foreach (Microsoft.Office.Interop.Word.HeaderFooter header in section.Headers) 
    { 
     //processRange(theDoc, header.Range); 
    } 
} 

문제는 단지 하나의 헤더가 비록 마주하는이 문서에 대한 시간의 수천을 실행 루프 입니다. 섹션은 실제로 다른 헤더를 가질 수 있으므로 분명히 헤더에서 첫 번째 히트 한 후에 멈출 수는 없습니다. 그러나이 경우 목표는 이고 헤더는 3 개뿐입니다., 6000이 아닙니다.

헤더를 고유하게 만드는 것에 대해 생각하고있어서 해시 세트에 키를 보관할 수 있으며 이미 있으면 건너 뛸 수 있습니다.

해당 키가 있다면 무엇입니까? range.Start + range.End + range.StoryType (headerfooter의 범위)? range.text? 다른 것 ?

중복성을 피하는 더 좋은 방법이 있습니까?

도움 주셔서 감사합니다. 이 단지 하나 또는 몇 개의 부분 또는 여러 부분이있는 경우 story_range 모드를 사용하는 경우

는 -Cristian

내가 하이브리드 솔루션 결국

답변