바이트 배열에서 글꼴 파일 로드

MemoryStream에서 TTF, WOFF, EOT, Type 1 및 CFF 글꼴을 로드하는 C++ API 솔루션입니다.

 

Aspose.Font API 솔루션은 변환, 글리프 조작, 라틴 기호 감지 등을 포함하여 글꼴 작업을 위한 광범위한 기능을 제공합니다. 그러나 글꼴 조작의 첫 번째 단계는 나중에 사용할 수 있도록 글꼴 파일을 로드하는 것입니다.

이 문서는 스트림에서 글꼴 파일을 로드하는 방법을 설명하지만 글꼴 로드에 대한 자세한 내용은 파일을 로드하는 방법 . 여기에서 수많은 C++ 코드 예제를 찾고 글꼴 로드에 필요한 개체와 매개 변수를 이해할 수 있습니다.

API는 TrueType(단일 글꼴), TrueType(글꼴 모음), Web Open Font Format, Web Open Font Format 버전 2.0, Embedded OpenType, Adobe Type 1 글꼴(pfa, pfb, afm, pfm) 및 컴팩트 글꼴 형식. 제공된 코드 스니펫은 스트림에서 TTF(True Type Font) 파일을 로드하는 방법을 보여줍니다.

Wikipedia 에서 알 수 있듯이 TTF는 TrueType 글꼴을 나타내며 확장 가능한 컴퓨터 글꼴을 위한 파일 형식입니다. 원래 Apple Computer에서 개발했지만 현재는 Mac 및 Windows 운영 체제 모두에서 널리 사용됩니다. TTF 파일에는 글꼴의 각 문자를 다양한 글꼴 크기와 스타일로 렌더링하는 방법에 대한 지침이 포함되어 있으며 품질 저하 없이 쉽게 크기를 조정하고 다양한 응용 프로그램에서 사용할 수 있습니다. TTF 글꼴은 디지털 타이포그래피에 널리 사용되며 웹 디자인, 워드 프로세싱 및 전자 출판에 일반적으로 사용됩니다.

글꼴을 로드하려면 C++ 플랫폼용 강력하고 사용하기 쉬운 문서 조작 및 변환 API인 Aspose.Font for C++ API가 필요합니다. API를 얻으려면 NuGet 패키지 관리자를 열고 Aspose.Font를 검색한 다음 설치하십시오. 패키지 관리자 콘솔에서 다음 명령을 사용할 수도 있습니다.

Package Manager Console Command


    PM> Install-Package Aspose.Font

C++를 사용하여 바이트 배열/MemoryStream에서 TTF 로드

이 코드 스니펫은 C++로 작성되었으며 Aspose.Font API를 사용하여 TrueType 글꼴(TTF) 파일을 로드하는 방법을 보여줍니다. 코드는 다음 단계를 수행합니다.

  1. 글꼴 파일의 경로를 구성합니다. 여기서 DataDir은 글꼴 파일 Montserrat-Regular.ttf가 있는 디렉토리의 경로를 포함하는 미리 정의된 변수입니다. Path.Combine 메서드는 두 경로를 결합하여 글꼴 파일의 전체 경로를 만듭니다.
  2. 글꼴 이진 데이터를 바이트 배열로 로드합니다. File.ReadAllBytes() 메서드는 글꼴 파일의 내용을 읽고 데이터를 바이트 배열로 반환합니다.
  3. FontDefinition 개체를 초기화합니다. FontType.TTF 는 글꼴 파일이 TrueType 글꼴(.ttf)이고 새로운 ByteContentStreamSource (fontBytes)는 fontBytes 배열에 저장된 글꼴 이진 데이터를 기반으로 ByteContentStreamSource 객체를 생성합니다.
  4. 글꼴을 로드합니다. Font.Open() 메서드는 FontDefinition 개체를 매개변수로 사용하고 로드된 글꼴을 반환합니다. , 추가 조작에 사용할 수 있습니다.

스트림에서 글꼴을 로드하기 위한 C++ 코드

    using Aspose::Font;
    using Aspose::Font::Sources;
    using Aspose::Font::Ttf;
     // Construct the path to the file
    System::String fontPath = System::IO::Path::Combine(get_DataDir(), u"Montserrat-Regular.ttf");

	// Load font binary data into the byte array
    System::ArrayPtr<uint8_t> fontBytes = System::IO::File::ReadAllBytes(fontPath);
    
    // Initialize the FontDefinition object  passing TTF as the FontType value, "ttf" as the fileExtension value, 
    // and ByteContentStreamSource object based on the fontBytes array
    System::SharedPtr<FontDefinition> fontDef = System::MakeObject<FontDefinition (Aspose::Font::FontType::TTF, u"ttf", System::MakeObject<ByteContentStreamSource>(fontBytes));

     // Load the font
    System::SharedPtr<Aspose::Font::Font> font = Aspose::Font::Font::Open(fontDef);



자주하는 질문

1. 프로그래밍 방식으로 글꼴을 로드하기 위한 매개변수는 무엇입니까?

올바른 글꼴 로드를 위해서는 두 가지 주요 매개변수를 알아야 합니다. 그들은 글꼴 형식과 저장입니다.

2. 내 컴퓨터에서 글꼴은 어디에 있습니까?

컴퓨터에서 사용 가능한 글꼴을 보려면 C:>Windows>Fonts 디렉토리로 이동하십시오. 거기에서 글꼴을 관리할 수 있습니다.

3. 스트림에서 글꼴을 로드하는 방법은 무엇입니까?

FontFileDefinition을 사용하여 목욕 배열을 설정하고 Open() 메서드를 사용하여 개체를 만듭니다. 글꼴 형식을 지정합니다. Aspose.Font.Font.Open() 메서드를 사용하여 로딩을 마칩니다.