2016-12-06 2 views
0

북마크 텍스트를 설정하는 매우 기본적인 도우미 메소드가 있습니다. 내가 필요로 무엇Aspose.Words 북마크가 포함 된 행 (행) 삭제

public static Bookmark SetBookmark(this Document doc, string bookmarkName, string value) 
{ 
     var bm = doc.Range.Bookmarks[bookmarkName]; 
     if(bm == null) 
      throw new NullReferenceException(string.Format("Bookmark {0} Not Found!", bookmarkName)); 
     bm.Text = value ?? string.Empty; 
     return bm; 
} 

는, 예를 책갈피를 제거하고 특정 조건이 충족 될 때 포함 된 텍스트의 라인을 삭제하는 것입니다 value == null 일 때. 어떤 제안?

샘플 문서는 다음과 같습니다
안녕하세요
[즐겨 찾기]
안녕

결과 문서 제거 후 :
안녕하세요
안녕

답변

0

빈에 Bookmark.Text 속성 값을 설정하십시오 문자열을 사용하여 내용을 제거한 다음 Bookmark.Remove 메서드를 사용하여 문서에서 책갈피를 제거합니다. Bookmark.Remove 메서드는 책갈피 안의 텍스트를 제거하지 않습니다.

저는 Aspose as Developer Evangelist와 협력합니다.

+0

Bookmark.Remove는 북마크 자체를 삭제합니다. 필요한 것은 북마크가있는 문서의 전체 줄을 꺼내는 것입니다. – Sherlock

+0

무료 파일 공유자 서버를 통해 샘플 입력 및 예상 출력 문서를 공유하십시오. 드롭 박스. 그러면 코드 예제를 공유합니다. - 저는 Aspose Developer Evangelist로 일합니다. –

+0

기업 정책으로 인해 업로드 할 수 없으므로 여기에 추상 견본을 제시하십시오. – Sherlock

0

다음 코드 예제와 같이 Bookmark.Text 속성의 값을 빈 문자열로 설정하여 내용을 제거하십시오. 나는 이전의 대답에서 이것을 이미 공유했다.

Document doc = new Document(MyDir + "Bookmark.doc"); 

// Use the indexer of the Bookmarks collection to obtain the desired bookmark. 
Bookmark bookmark = doc.Range.Bookmarks["MyBookmark"]; 

// Remove the contents of bookmark. 
bookmark.Text = ""; 

doc.Save(MyDir + @"Out.docx"); 

개발자 용 전도사로 Aspose와 협력합니다.