92 lines
3.2 KiB
C#
92 lines
3.2 KiB
C#
using CPF.Mac.Foundation;
|
|
using CPF.Mac.ObjCRuntime;
|
|
using System;
|
|
|
|
namespace CPF.Mac.CoreText
|
|
{
|
|
[Since(3, 2)]
|
|
public static class CTFontDescriptorAttributeKey
|
|
{
|
|
public static readonly NSString Url;
|
|
|
|
public static readonly NSString Name;
|
|
|
|
public static readonly NSString DisplayName;
|
|
|
|
public static readonly NSString FamilyName;
|
|
|
|
public static readonly NSString StyleName;
|
|
|
|
public static readonly NSString Traits;
|
|
|
|
public static readonly NSString Variation;
|
|
|
|
public static readonly NSString Size;
|
|
|
|
public static readonly NSString Matrix;
|
|
|
|
public static readonly NSString CascadeList;
|
|
|
|
public static readonly NSString CharacterSet;
|
|
|
|
public static readonly NSString Languages;
|
|
|
|
public static readonly NSString BaselineAdjust;
|
|
|
|
public static readonly NSString MacintoshEncodings;
|
|
|
|
public static readonly NSString Features;
|
|
|
|
public static readonly NSString FeatureSettings;
|
|
|
|
public static readonly NSString FixedAdvance;
|
|
|
|
public static readonly NSString FontOrientation;
|
|
|
|
public static readonly NSString FontFormat;
|
|
|
|
public static readonly NSString RegistrationScope;
|
|
|
|
public static readonly NSString Priority;
|
|
|
|
public static readonly NSString Enabled;
|
|
|
|
static CTFontDescriptorAttributeKey()
|
|
{
|
|
IntPtr intPtr = Dlfcn.dlopen("/System/Library/Frameworks/ApplicationServices.framework/Frameworks/CoreText.framework/CoreText", 0);
|
|
if (!(intPtr == IntPtr.Zero))
|
|
{
|
|
try
|
|
{
|
|
Url = Dlfcn.GetStringConstant(intPtr, "kCTFontURLAttribute");
|
|
Name = Dlfcn.GetStringConstant(intPtr, "kCTFontNameAttribute");
|
|
DisplayName = Dlfcn.GetStringConstant(intPtr, "kCTFontDisplayNameAttribute");
|
|
FamilyName = Dlfcn.GetStringConstant(intPtr, "kCTFontFamilyNameAttribute");
|
|
StyleName = Dlfcn.GetStringConstant(intPtr, "kCTFontStyleNameAttribute");
|
|
Traits = Dlfcn.GetStringConstant(intPtr, "kCTFontTraitsAttribute");
|
|
Variation = Dlfcn.GetStringConstant(intPtr, "kCTFontVariationAttribute");
|
|
Size = Dlfcn.GetStringConstant(intPtr, "kCTFontSizeAttribute");
|
|
Matrix = Dlfcn.GetStringConstant(intPtr, "kCTFontMatrixAttribute");
|
|
CascadeList = Dlfcn.GetStringConstant(intPtr, "kCTFontCascadeListAttribute");
|
|
CharacterSet = Dlfcn.GetStringConstant(intPtr, "kCTFontCharacterSetAttribute");
|
|
Languages = Dlfcn.GetStringConstant(intPtr, "kCTFontLanguagesAttribute");
|
|
BaselineAdjust = Dlfcn.GetStringConstant(intPtr, "kCTFontBaselineAdjustAttribute");
|
|
MacintoshEncodings = Dlfcn.GetStringConstant(intPtr, "kCTFontMacintoshEncodingsAttribute");
|
|
Features = Dlfcn.GetStringConstant(intPtr, "kCTFontFeaturesAttribute");
|
|
FeatureSettings = Dlfcn.GetStringConstant(intPtr, "kCTFontFeatureSettingsAttribute");
|
|
FixedAdvance = Dlfcn.GetStringConstant(intPtr, "kCTFontFixedAdvanceAttribute");
|
|
FontOrientation = Dlfcn.GetStringConstant(intPtr, "kCTFontOrientationAttribute");
|
|
FontFormat = Dlfcn.GetStringConstant(intPtr, "kCTFontFormatAttribute");
|
|
RegistrationScope = Dlfcn.GetStringConstant(intPtr, "kCTFontRegistrationScopeAttribute");
|
|
Priority = Dlfcn.GetStringConstant(intPtr, "kCTFontPriorityAttribute");
|
|
Enabled = Dlfcn.GetStringConstant(intPtr, "kCTFontEnabledAttribute");
|
|
}
|
|
finally
|
|
{
|
|
Dlfcn.dlclose(intPtr);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|