Word 문서에서 책갈피 숨기기 표시
이 기사에서는 위의 C# 소스 코드를 탐색하여 .NET용 Aspose.Words 라이브러리에서 Show Hide Bookmarks 기능을 사용하는 방법을 이해합니다. 이 기능을 사용하면 Word 문서에서 특정 책갈피를 표시하거나 숨길 수 있습니다.
전제조건
- C# 언어에 대한 기본 지식.
- Aspose.Words 라이브러리가 설치된 .NET 개발 환경.
1단계: 문서 로드
우리는Document
파일에서 기존 문서를 로드하는 클래스:
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "Bookmarks.docx");
2단계: 특정 북마크 표시 또는 숨기기
우리는ShowHideBookmarkedContent
문서 내 특정 북마크를 표시하거나 숨기는 기능입니다. 이 함수는 문서, 북마크 이름, 북마크 표시 여부를 나타내는 부울 값을 매개변수로 사용합니다.
ShowHideBookmarkedContent(doc, "MyBookmark1", false);
3단계: 수정된 문서 저장
우리는Save
수정된 문서를 파일에 저장하는 방법:
doc.Save(dataDir + "WorkingWithBookmarks.ShowHideBookmarks.docx");
.NET용 Aspose.Words를 사용하여 북마크 숨기기 표시에 대한 예제 소스 코드
다음은 .NET용 Aspose.Words를 사용하여 특정 북마크를 표시하거나 숨기는 방법을 보여주는 전체 예제 소스 코드입니다.
// 문서 디렉터리의 경로입니다.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "Bookmarks.docx");
ShowHideBookmarkedContent(doc, "MyBookmark1", false);
doc.Save(dataDir + "WorkingWithBookmarks.ShowHideBookmarks.docx");
ShowHideBookmarkedContent 소스 코드
public void ShowHideBookmarkedContent(Document doc, string bookmarkName, bool showHide)
{
Bookmark bm = doc.Range.Bookmarks[bookmarkName];
DocumentBuilder builder = new DocumentBuilder(doc);
builder.MoveToDocumentEnd();
// {IF "{MERGEFIELD 북마크}" = "true" "" ""}
Field field = builder.InsertField("IF \"", null);
builder.MoveTo(field.Start.NextSibling);
builder.InsertField("MERGEFIELD " + bookmarkName + "", null);
builder.Write("\" = \"true\" ");
builder.Write("\"");
builder.Write("\"");
builder.Write(" \"\"");
Node currentNode = field.Start;
bool flag = true;
while (currentNode != null && flag)
{
if (currentNode.NodeType == NodeType.Run)
if (currentNode.ToString(SaveFormat.Text).Trim() == "\"")
flag = false;
Node nextNode = currentNode.NextSibling;
bm.BookmarkStart.ParentNode.InsertBefore(currentNode, bm.BookmarkStart);
currentNode = nextNode;
}
Node endNode = bm.BookmarkEnd;
flag = true;
while (currentNode != null && flag)
{
if (currentNode.NodeType == NodeType.FieldEnd)
flag = false;
Node nextNode = currentNode.NextSibling;
bm.BookmarkEnd.ParentNode.InsertAfter(currentNode, endNode);
endNode = currentNode;
currentNode = nextNode;
}
doc.MailMerge.Execute(new[] { bookmarkName }, new object[] { showHide });
}
결론
이 기사에서는 .NET용 Aspose.Words의 Show Hide Bookmarks 기능을 사용하는 방법을 이해하기 위해 C# 소스 코드를 살펴보았습니다. 문서에서 특정 책갈피를 표시하거나 숨기는 단계별 가이드를 따랐습니다.
Word 문서에서 북마크 숨기기에 대한 FAQ
Q: 동일한 문서에서 여러 북마크를 표시하거나 숨길 수 있나요?
A: 예, 처리하려는 각 북마크에 대해 2단계와 3단계를 반복하여 동일한 문서에서 여러 북마크를 표시하거나 숨길 수 있습니다.
Q: 제공된 코드는 .doc 또는 .docm과 같은 다른 Word 문서 형식에서도 작동합니까?
A: 예, 제공된 코드는 .doc 및 .docm과 같이 Aspose.Words가 지원하는 다양한 Word 문서 형식에서 작동합니다. 문서를 로드하고 저장할 때 올바른 파일 이름과 경로를 사용했는지 확인하세요.
Q: 숨겨진 북마크를 다시 표시하려면 어떻게 해야 합니까?
A: 숨겨진 북마크를 다시 표시하려면 동일한 북마크를 사용해야 합니다.ShowHideBookmarkedContent
값을 전달하는 함수true
북마크를 표시할지 숨길지를 나타내는 부울 매개변수입니다.
Q: 조건을 사용하여 문서의 병합 필드 값을 기반으로 책갈피를 표시하거나 숨길 수 있나요?
A: 예, 조건과 병합 필드 값을 사용하여 북마크를 표시할지 숨길지 결정할 수 있습니다. 코드를 사용자 정의할 수 있습니다.ShowHideBookmarkedContent
적절한 조건과 값을 고려하는 기능입니다.
Q: Aspose.Words for .NET을 사용하여 Word 문서에서 북마크를 어떻게 삭제할 수 있나요?
A: .NET용 Aspose.Words를 사용하여 Word 문서에서 책갈피를 제거하려면 다음을 사용할 수 있습니다.RemoveBookmarks
의 방법Document
수업. 다음은 샘플 코드입니다.
doc.RemoveBookmarks("BookmarkName");