.NET에서 대체 폰트로 프레젠테이션 렌더링

개요

Aspose.Slides를 사용하면 대체 폰트 규칙을 사용하여 프레젠테이션을 렌더링할 수 있습니다. 이 문서에서는 대체 폰트 규칙 컬렉션을 생성하고, 대체 폰트를 제거하거나 추가하여 규칙을 수정하고, 해당 컬렉션을 FontsManager.FontFallBackRulesCollection 속성에 할당하는 방법을 보여줍니다.

대체 폰트 규칙 컬렉션이 프레젠테이션의 FontsManager에 할당되면 저장, 렌더링 및 프레젠테이션 변환과 같은 작업 중에 규칙이 적용됩니다. 이 예제에서는 슬라이드 썸네일을 렌더링하고 PNG 이미지로 저장할 때 구성된 규칙을 사용하는 방법을 보여줍니다.

대체 폰트 규칙을 사용하여 슬라이드 렌더링

다음 예제는 다음 단계로 구성됩니다:

  1. 우리는 대체 폰트 규칙 컬렉션 만들기.
  2. Remove() 대체 폰트 규칙을 제거하고 AddFallBackFonts() 다른 규칙에 추가합니다.
  3. 규칙 컬렉션을 FontsManager.FontFallBackRulesCollection 속성에 설정합니다.
  4. Presentation.Save() 메서드를 사용하면 프레젠테이션을 동일한 형식으로 저장하거나 다른 형식으로 저장할 수 있습니다. 대체 폰트 규칙 컬렉션이 FontsManager에 설정된 후, 이러한 규칙은 프레젠테이션에 대한 모든 작업(저장, 렌더링, 변환 등) 중에 적용됩니다.
// 규칙 컬렉션의 새 인스턴스 생성
IFontFallBackRulesCollection rulesList = new FontFallBackRulesCollection();

// 여러 규칙 생성
rulesList.Add(new FontFallBackRule(0x400, 0x4FF, "Times New Roman"));
//rulesList.Add(new FontFallBackRule(...));

foreach (IFontFallBackRule fallBackRule in rulesList)
{
	// 로드된 규칙에서 대체 폰트 "Tahoma"를 제거하려고 함
	fallBackRule.Remove("Tahoma");

	// 지정된 범위에 대한 규칙을 업데이트
	if ((fallBackRule.RangeEndIndex >= 0x4000) && (fallBackRule.RangeStartIndex < 0x5000))
		fallBackRule.AddFallBackFonts("Verdana");
}

// 또한 목록에서 기존 규칙을 제거할 수 있음
if (rulesList.Count > 0)
	rulesList.Remove(rulesList[0]);

using (Presentation pres = new Presentation("input.pptx"))
{
    // 사용을 위해 준비된 규칙 목록 할당
    pres.FontsManager.FontFallBackRulesCollection = rulesList;

    // 초기화된 규칙 컬렉션을 사용하여 썸네일을 렌더링하고 PNG로 저장
    using (IImage image = pres.Slides[0].GetImage(1f, 1f))
    {
        image.Save("Slide_0.png", ImageFormat.Png);
    }
}