Symbol znaku łacińskiego to znak w postaci znaku, znaku lub słowa. Czcionka określa, w jaki sposób znaki/symbole mają być wyświetlane cyfrowo lub w formie do druku przy użyciu zestawu właściwości. Plik czcionki zawiera projekt i inne informacje dotyczące czcionki. W niektórych przypadkach może być konieczne sprawdzenie, czy dana czcionka obsługuje symbole łacińskie, czy nie. W tym artykule dowiemy się, jak sprawdzić obsługę symboli łacińskich dla czcionek TrueType lub Type1 w języku C#.
W tym artykule zostaną omówione następujące tematy:
- C# API do wykrywania obsługi symboli łacińskich w czcionkach
- Wykrywanie symboli łacińskich w czcionkach TrueType przy użyciu języka C#
- Wykryj symbole łacińskie w czcionkach Type1 za pomocą C#
Interfejs API języka C# do wykrywania obsługi symboli łacińskich w czcionkach
Do wykrywania obsługi symboli łacińskich w czcionkach będziemy używać API Aspose.Font for .NET. Umożliwia ładowanie, zapisywanie i wyodrębnianie informacji z obsługiwanych typów czcionek. Pobierz bibliotekę DLL interfejsu API lub zainstaluj ją za pomocą NuGet.
PM> Install-Package Aspose.Font
Wykryj symbole łacińskie w czcionkach TrueType za pomocą C#
Możemy wykryć symbole łacińskie w czcionkach TrueType, wykonując poniższe czynności:
- Najpierw załaduj plik czcionki przy użyciu klasy FontFileDefinition.
- Następnie zainicjuj obiekt klasy FontDefinition z obiektami FontType (TTF) i FontFileDefinition jako argumentami.
- Następnie wywołaj metodę Font.Open() z obiektem FontDefinition jako argumentem i zainicjuj obiekt klasy TtfFont.
- Następnie przejrzyj różne kody i zdekoduj je na identyfikatory Glyph.
- Na koniec sprawdź identyfikatory glifów pod kątem obsługi symboli łacińskich.
Poniższy przykładowy kod pokazuje, jak wykryć, czy określona czcionka TrueType obsługuje symbole łacińskie, czy nie w języku C#.
// Ten przykład kodu pokazuje, jak wykryć, czy dana czcionka TrueType obsługuje symbole łacińskie, czy nie.
// Ścieżka do pliku TTF
string fontPath = @"D:\Files\font\Montserrat-Regular.ttf";
// Załaduj plik czcionki
FontFileDefinition fontFileDefinition = new FontFileDefinition("ttf", new FileSystemStreamSource(fontPath));
// Obiekt definicji czcionki
FontDefinition fd = new FontDefinition(FontType.TTF, fontFileDefinition);
// Otwórz czcionkę
TtfFont font = (TtfFont)Font.Open(fd);
var latinText = true;
// Sprawdź obsługę symboli łacińskich
for (uint code = 65; code < 123; code++)
{
GlyphId gid = font.Encoding.DecodeToGid(code);
if (gid == null || gid == GlyphUInt32Id.NotDefId)
{
latinText = false;
}
}
if (latinText)
{
Console.WriteLine("Font {0} supports latin symbols.", font.FontName);
}
else
{
Console.WriteLine("Latin symbols are not supported by font {0}.", font.FontName);
}
Wykryj symbole łacińskie w czcionkach Type1 za pomocą C#
Możemy również wykryć symbole łacińskie w czcionkach Type1, wykonując poniższe czynności:
- Najpierw załaduj plik czcionki przy użyciu klasy FontFileDefinition.
- Następnie zainicjuj obiekt klasy FontDefinition z obiektami FontType (Type1) i FontFileDefinition jako argumentami.
- Następnie wywołaj metodę Font.Open() z obiektem FontDefinition jako argumentem i zainicjuj obiekt klasy Type1Font.
- Następnie przejrzyj różne kody i zdekoduj je na identyfikatory Glyph.
- Na koniec sprawdź identyfikatory glifów pod kątem obsługi symboli łacińskich.
Poniższy przykładowy kod pokazuje, jak wykryć, czy określona czcionka Type1 obsługuje symbole łacińskie, czy nie w języku C#.
// Ten przykład kodu pokazuje, jak wykryć, czy dana czcionka Type1 obsługuje symbole łacińskie, czy nie.
// Ścieżka pliku czcionki Type1
string fontPath = @"D:\Files\font\courier.pfb";
// Załaduj plik czcionki
FontFileDefinition fontFileDefinition = new FontFileDefinition("pfb", new FileSystemStreamSource(fontPath));
// Obiekt definicji czcionki
FontDefinition fd = new FontDefinition(FontType.Type1, fontFileDefinition);
// Otwórz czcionkę
Type1Font font = (Type1Font)Font.Open(fd);
var latinText = true;
// Sprawdź obsługę symboli łacińskich
for (uint code = 65; code < 123; code++)
{
GlyphId gid = font.Encoding.DecodeToGid(code);
if (gid == null || gid == GlyphUInt32Id.NotDefId)
{
latinText = false;
}
}
if (latinText)
{
Console.WriteLine("Font {0} supports latin symbols.", font.FontName);
}
else
{
Console.WriteLine("Latin symbols are not supported by font {0}.", font.FontName);
}
Uzyskaj bezpłatną licencję
Możesz uzyskać bezpłatną tymczasową licencję, aby wypróbować bibliotekę bez ograniczeń ewaluacyjnych.
Wniosek
W tym artykule dowiedzieliśmy się, jak określić, czy dana czcionka TrueType lub Type1 obsługuje symbole łacińskie w języku C#. Poza tym możesz dowiedzieć się więcej o Aspose.Font for .NET API korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.