Carregue uma fonte do arquivo ttf | C ++
Contents
[
Hide
Show
]Aqui estão descritos quatro exemplos de diferentes cumprimentos sobre como carregar uma fonte do arquivo Montserrat-Regular.ttf.
Primeiro aprenda os fundamentos de carregamento na página Como carregar fontes?.
Adicione os próximos namespaces à frente do arquivo:
1using namespace Aspose::Font;
2using namespace Aspose::Font::Sources;
3using namespace System.IO;
Carregando do arquivo usando o objeto FileSystreamSource
Dê os próximos passos para cumprir a operação:
- Construa o caminho para o arquivo.
- Iniciar fontDefiniton Objeto.
- Definir
FILEEXTENNENTE como
TTF
. - Carregue a fonte.
1 // Construct path to the file
2 System::String fontPath = System::IO::Path::Combine(get_DataDir(), u"Montserrat-Regular.ttf");
3
4 // Initialize FontDefinition object passing TTF as FontType value and using FontFileDefinition
5 // based on FileSystemStreamSource object, set fileExtension to "ttf"
6 System::SharedPtr<FontFileDefinition> fileDef = System::MakeObject<FontFileDefinition>(u"ttf", System::MakeObject<FileSystemStreamSource>(fontPath));
7 System::SharedPtr<FontDefinition> fontDef = System::MakeObject<FontDefinition>(Aspose::Font::FontType::TTF, fileDef);
8
9 // Load font
10 System::SharedPtr<Font> font = Font::Open(fontDef);
Carregando do arquivo usando o objeto FileInfo
Para cumprir o carregamento, faça o próximo:
- Construa o caminho para o arquivo.
- Iniciar
fontDefiniton Passagem do objeto
ttf
como fontType valor. - Obtenha o valor calculado automaticamente FILEEXTENNENTE.
- Carregue a fonte.
1 // Construct path to the file
2 System::String fontPath = System::IO::Path::Combine(get_DataDir(), u"Montserrat-Regular.ttf");
3
4 // Initialize FontDefinition object passing TTF as FontType value and using FontFileDefinition
5 // based on FileInfo object, fileExtension value is calculated automatically from FileInfo fields.
6 System::SharedPtr<FontFileDefinition> fileDef = System::MakeObject<FontFileDefinition>(System::MakeObject<System::IO::FileInfo>(fontPath));
7 System::SharedPtr<FontDefinition> fontDef = System::MakeObject<FontDefinition>(Aspose::Font::FontType::TTF, fileDef);
8
9 // Load the font
10 System::SharedPtr<Aspose::Font::Font> font = Aspose::Font::Font::Open(fontDef);
Carregando do arquivo excluindo o objeto FontfiledEfinition da cadeia de inicialização
As próximas ações devem ser tomadas para carregar a fonte desta maneira:
- Construa o caminho para o arquivo.
- Inicie
fontDefiniton Passagem do objeto
ttf
como fontType Valor,ttf
como fileExtension valor e FIOSSYSTEMSTREAMSOURCE objeto. Parâmetro fileExtension Aqui não há um valor duplicado para o parâmetro FontType. - Carregue a fonte.
1 // Construct path to the file
2 System::String fontPath = System::IO::Path::Combine(get_DataDir(), u"Montserrat-Regular.ttf");
3
4 // Initialize FontDefinition object passing TTF as FontType value, "ttf" as fileExtension value,
5 // and FileSystemStreamSource object. Parameter 'fileExtension' here is not duplicate value
6 // for parameter 'FontType' and it's needed for correct font format detection
7 System::SharedPtr<FontDefinition> fontDef = System::MakeObject<FontDefinition>(Aspose::Font::FontType::TTF, u"ttf", System::MakeObject<FileSystemStreamSource>(fontPath));
8
9 // Load the font
10 System::SharedPtr<Aspose::Font::Font> font = Aspose::Font::Font::Open(fontDef);
Carregando a fonte da matriz de bytes
Para carregar a fonte da matriz de bytes:
- Construa o caminho para o arquivo.
- Carregue dados binários da fonte na matriz de bytes.
- Inicialize
fontDefiniton Passagem do objeto
ttf
como fontType valor,ttf
como fileExtension valor e byteContentSTreamSource objeto baseado em fontbytes Array. - Carregue a fonte.
1 // Construct path to the file
2 System::String fontPath = System::IO::Path::Combine(get_DataDir(), u"Montserrat-Regular.ttf");
3
4 // Load font binary data into byte array
5 System::ArrayPtr<uint8_t> fontBytes = System::IO::File::ReadAllBytes(fontPath);
6
7 // Initialize FontDefinition object passing TTF as FontType value, "ttf" as fileExtension value,
8 // and ByteContentStreamSource object based on fontBytes array
9 System::SharedPtr<FontDefinition> fontDef = System::MakeObject<FontDefinition>(Aspose::Font::FontType::TTF, u"ttf", System::MakeObject<ByteContentStreamSource>(fontBytes));
10
11 // Load the font
12 System::SharedPtr<Aspose::Font::Font> font = Aspose::Font::Font::Open(fontDef);
Mais exemplos sobre como usar aspose.font estão em asposit.font.examples.cpp.sln solução, nos cpp-examples da documentação aspose.font.