xtd 0.2.0
Loading...
Searching...
No Matches
xtd::drawing::font_family Class Referencefinal
Inheritance diagram for xtd::drawing::font_family:
xtd::object xtd::iequatable< font_family > xtd::interface xtd::equality_operators< type_t, equatable_t >

Definition

Defines a group of type faces having a similar basic design and certain variations in styles. This class cannot be inherited.

Defines a group of type faces having a similar basic design and certain variations in styles....
Definition font_family.hpp:38
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition object.hpp:42
#define drawing_export_
Define shared library export.
Definition drawing_export.hpp:13
Inheritance
xtd::objectxtd::drawing::font_family
Namespace
xtd::drawing
Library
xtd.drawing
Examples
font_families.cpp.

Public Constructors

 font_family (const xtd::string &name)
 Initializes a new xtd::drawing::font_family with the specified name.
 
 font_family (text::generic_font_families generic_font_families)
 Initializes a new xtd::drawing::font_family from the specified generic font family.
 
 font_family (const xtd::string &name, const text::font_collection &font_collection)
 Initializes a new xtd::drawing::font_family in the specified font_collection with the specified name.
 

Public Properties

const xtd::stringname () const noexcept
 Gets the name of this font_family.
 

Public Methods

bool equals (const font_family &value) const noexcept override
 
int32 get_cell_ascent (font_style style) const
 Returns the cell ascent, in design units, of the font_family of the specified style.
 
int32 get_cell_descent (font_style style) const
 Returns the cell descent, in design units, of the font_family of the specified style.
 
int32 get_em_height (font_style style) const noexcept
 Gets the height, in font design units, of the em square for the specified style.
 
int32 get_line_spacing (font_style style) const
 Returns the line spacing, in design units, of the font_family of the specified style. The line spacing is the vertical distance between the base lines of two consecutive lines of text.
 
xtd::string get_name (int32 language) const
 Returns the name, in the specified language, of this font_family.
 
bool is_style_available (font_style style) const
 Indicates whether the specified font_style enumeration is available.
 
xtd::string to_string () const noexcept override
 Converts this font_family to a human-readable string representation.
 
virtual bool equals (const object &obj) const noexcept
 Determines whether the specified object is equal to the current object.
 
template<typename object_a_t , typename object_b_t >
static bool equals (const object_a_t &object_a, const object_b_t &object_b) noexcept
 Determines whether the specified object instances are considered equal.
 

Public Static Properties

static std::vector< font_familyfamilies () noexcept
 Returns an array that contains all the font_family objects associated with the current graphics context.
 
static font_family generic_monospace () noexcept
 Gets a generic monospace font_family.
 
static font_family generic_sans_serif () noexcept
 Gets a generic sans serif font_family.
 
static font_family generic_serif () noexcept
 Gets a generic serif font_family.
 

Additional Inherited Members

- Public Member Functions inherited from xtd::object
 object ()=default
 Create a new instance of the ultimate base class object.
 
virtual size_t get_hash_code () const noexcept
 Serves as a hash function for a particular type.
 
virtual type_object get_type () const noexcept
 Gets the type of the current instance.
 
template<typename object_t >
xtd::uptr< object_t > memberwise_clone () const
 Creates a shallow copy of the current object.
 
- Public Member Functions inherited from xtd::iequatable< font_family >
virtual bool equals (const font_family &) const noexcept=0
 Indicates whether the current object is equal to another object of the same type.
 
- Static Public Member Functions inherited from xtd::object
template<typename object_a_t , typename object_b_t >
static bool equals (const object_a_t &object_a, const object_b_t &object_b) noexcept
 Determines whether the specified object instances are considered equal.
 
template<typename object_a_t , typename object_b_t >
static bool reference_equals (const object_a_t &object_a, const object_b_t &object_b) noexcept
 Determines whether the specified object instances are the same instance.
 

Constructor & Destructor Documentation

◆ font_family() [1/3]

xtd::drawing::font_family::font_family ( const xtd::string name)
explicit

Initializes a new xtd::drawing::font_family with the specified name.

Parameters
nameThe name of the new xtd::drawing::font_family.
Exceptions
std::invalid_argumentname is an empty string ("") - or - name specifies a font that is not installed on the computer running the application.

◆ font_family() [2/3]

xtd::drawing::font_family::font_family ( text::generic_font_families  generic_font_families)
explicit

Initializes a new xtd::drawing::font_family from the specified generic font family.

Parameters
generic_font_familiesThe xtd::drawing::text::generic_font_families from which to create the new font_family.

◆ font_family() [3/3]

xtd::drawing::font_family::font_family ( const xtd::string name,
const text::font_collection font_collection 
)

Initializes a new xtd::drawing::font_family in the specified font_collection with the specified name.

Parameters
nameThe name of the new xtd::drawing::font_family.
font_collectionThe FontCollection that contains this FontFamily.
Exceptions
std::invalid_argumentname is an empty string ("") - or - name specifies a font that is not installed on the computer running the application - or - name specifies a font that is not a part of specified font_collection..

Member Function Documentation

◆ name()

const xtd::string & xtd::drawing::font_family::name ( ) const
noexcept

Gets the name of this font_family.

Returns
A String that represents the name of this font_family.

◆ families()

static std::vector< font_family > xtd::drawing::font_family::families ( )
staticnoexcept

Returns an array that contains all the font_family objects associated with the current graphics context.

Returns
An array of font_family objects associated with the current graphics context.

◆ generic_monospace()

static font_family xtd::drawing::font_family::generic_monospace ( )
staticnoexcept

Gets a generic monospace font_family.

Returns
A font_family that represents a generic monospace font.
Examples
test_forms.cpp.

◆ generic_sans_serif()

static font_family xtd::drawing::font_family::generic_sans_serif ( )
staticnoexcept

Gets a generic sans serif font_family.

Returns
A font_family that represents a generic sans serif font.
Examples
calculator.cpp.

◆ generic_serif()

static font_family xtd::drawing::font_family::generic_serif ( )
staticnoexcept

Gets a generic serif font_family.

Returns
A font_family that represents a generic serif font.

◆ get_cell_ascent()

int32 xtd::drawing::font_family::get_cell_ascent ( font_style  style) const

Returns the cell ascent, in design units, of the font_family of the specified style.

Parameters
styleA font_style that contains style information for the font.
Returns
The cell ascent for this font_family that uses the specified font_style.

◆ get_cell_descent()

int32 xtd::drawing::font_family::get_cell_descent ( font_style  style) const

Returns the cell descent, in design units, of the font_family of the specified style.

Parameters
styleA font_style that contains style information for the font.
Returns
The cell ascent for this font_family that uses the specified font_style.

◆ get_em_height()

int32 xtd::drawing::font_family::get_em_height ( font_style  style) const
noexcept

Gets the height, in font design units, of the em square for the specified style.

Parameters
styleA font_style that contains style information for the font.
Returns
The height of the em square.

◆ get_line_spacing()

int32 xtd::drawing::font_family::get_line_spacing ( font_style  style) const

Returns the line spacing, in design units, of the font_family of the specified style. The line spacing is the vertical distance between the base lines of two consecutive lines of text.

Parameters
styleA font_style that contains style information for the font.
Returns
The distance between two consecutive lines of text.

◆ get_name()

xtd::string xtd::drawing::font_family::get_name ( int32  language) const

Returns the name, in the specified language, of this font_family.

Parameters
languageThe language in which the name is returned.
Returns
A String that represents the name, in the specified language, of this font_family.
Remarks
To indicate language neutral, you should specify 0 for the language parameter. For a listing of the available languages and sublanguages, see the Winnt.h header file. If you have Visual Studio installed, this header file can typically be found relative to the Visual Studio installation directory at \VC\PlatformSDK\Include.

◆ is_style_available()

bool xtd::drawing::font_family::is_style_available ( font_style  style) const

Indicates whether the specified font_style enumeration is available.

Parameters
styleThe font_style to test.
Returns
true if the specified font_style is available; otherwise, false.

◆ to_string()

xtd::string xtd::drawing::font_family::to_string ( ) const
overridevirtualnoexcept

Converts this font_family to a human-readable string representation.

Returns
The string that represents this font_family.

Reimplemented from xtd::object.

◆ equals() [1/2]

virtual bool xtd::object::equals ( const object obj) const
virtualnoexcept

Determines whether the specified object is equal to the current object.

Parameters
objThe object to compare with the current object.
Returns
true if the specified object is equal to the current object. otherwise, false.
Examples
The following code example compares the current instance with another object.
#include <xtd/console>
using namespace xtd;
auto main() -> int {
auto object1 = new_ptr<object>();
auto object2 = new_ptr<object>();
auto object3 = object2;
console::write_line(object1->equals(*object3));
console::write_line(*object1 == *object3);
object3 = object1;
console::write_line(object1->equals(*object3));
console::write_line(*object1 == *object3);
}
// This code produces the following output :
//
// false
// false
// true
// true
static void write_line()
Writes the current line terminator to the standard output stream using the specified format informati...
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition xtd_about_box.hpp:10

Reimplemented from xtd::object.

◆ equals() [2/2]

template<typename object_a_t , typename object_b_t >
static bool xtd::object::equals ( const object_a_t &  object_a,
const object_b_t &  object_b 
)
inlinestaticnoexcept

Determines whether the specified object instances are considered equal.

Parameters
object_aThe first object to compare.
object_bThe second object to compare.
Returns
true if object_a is the same instance as object_b or if both are null references or if object_a(object_b) returns true. otherwise, false.
Examples
The following code example compares different objects.
#include <xtd/console>
using namespace xtd;
auto main() -> int {
string s1 = "Tom";
string s2 = "Carol";
console::write_line("object::equals(\"{0}\", \"{1}\") => {2}", s1, s2, object::equals(s1, s2));
s1 = "Tom";
s2 = "Tom";
console::write_line("object::equals(\"{0}\", \"{1}\") => {2}", s1, s2, object::equals(s1, s2));
s1 = "";
s2 = "Tom";
console::write_line("object::equals(\"{0}\", \"{1}\") => {2}", s1, s2, object::equals(s1, s2));
s1 = "Carol";
s2 = "";
console::write_line("object::equals(\"{0}\", \"{1}\") => {2}", s1, s2, object::equals(s1, s2));
s1 = "";
s2 = "";
console::write_line("object::equals(\"{0}\", \"{1}\") => {2}", s1, s2, object::equals(s1, s2));
}
// This code produces the following output :
//
// object::equals("Tom", "Carol") => false
// object::equals("Tom", "Tom") => true
// object::equals("", "Tom") => false
// object::equals("Carol", "") => false
// object::equals("", "") => true
virtual bool equals(const object &obj) const noexcept
Determines whether the specified object is equal to the current object.

The documentation for this class was generated from the following file: