xref: /trunk/main/offapi/com/sun/star/awt/FontDescriptor.idl (revision 1ecadb572e7010ff3b3382ad9bf179dbc6efadbb)
1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_awt_FontDescriptor_idl__
28#define __com_sun_star_awt_FontDescriptor_idl__
29
30#ifndef __com_sun_star_awt_FontSlant_idl__
31#include <com/sun/star/awt/FontSlant.idl>
32#endif
33
34
35//=============================================================================
36
37 module com {  module sun {  module star {  module awt {
38
39//=============================================================================
40
41/** describes the characteristics of a font.
42
43    <p>For example, this can be used to select a font.</p>
44 */
45published struct FontDescriptor
46{
47    //-------------------------------------------------------------------------
48
49    /** specifies the exact name of the font.
50     */
51    string Name;
52
53    //-------------------------------------------------------------------------
54
55    /** specifies the height of the font in the measure of the
56        destination.
57     */
58    short Height;
59
60    //-------------------------------------------------------------------------
61
62    /** specifies the width of the font in the measure of the
63        destination.
64     */
65    short Width;
66
67    //-------------------------------------------------------------------------
68
69    /** specifies the style name of the font.
70     */
71    string StyleName;
72
73    //-------------------------------------------------------------------------
74
75    /** specifies the general style of the font.
76
77        <p>Use one value out of the constant group
78        <type scope="com::sun::star::awt">FontFamily</type>.</p>
79     */
80    short Family;
81
82    //-------------------------------------------------------------------------
83
84    /** specifies the character set which is supported by the font.
85
86        <p>Use one value out of the constant group
87        <type scope="com::sun::star::awt">CharSet</type>.</p>
88     */
89    short CharSet;
90
91    //-------------------------------------------------------------------------
92
93    /** specifies the pitch of the font.
94
95        <p>Use one value out of the constant group
96        <type scope="com::sun::star::awt">FontPitch</type>.</p>
97     */
98    short Pitch;
99
100    //-------------------------------------------------------------------------
101
102    /** specifies the character width.
103
104        <p>Depending on the specified width, a font that supports this
105        width may be selected.</p>
106
107        <p>The value is expressed as a percentage.</p>
108     */
109    float CharacterWidth;
110
111    //-------------------------------------------------------------------------
112
113    /** specifies the thickness of the line.
114
115        <p>Depending on the specified weight, a font that supports this
116        thickness may be selected.</p>
117
118        <p>The value is expressed as a percentage.</p>
119     */
120    float Weight;
121
122    //-------------------------------------------------------------------------
123
124    /** specifies the slant of the font.
125     */
126    com::sun::star::awt::FontSlant Slant;
127
128    //-------------------------------------------------------------------------
129
130    /** specifies the kind of underlining.
131
132        <p>Use one value out of the constant group
133        <type scope="com::sun::star::awt">FontUnderline</type>.</p>
134     */
135    short Underline;
136
137    //-------------------------------------------------------------------------
138
139    /** specifies the kind of strikeout.
140
141        <p>Use one value out of the constant group
142        <type scope="com::sun::star::awt">FontStrikeout</type>.</p>
143     */
144    short Strikeout;
145
146    //-------------------------------------------------------------------------
147
148    /** specifies the rotation of the font.
149
150        <p>The unit of measure is degrees; 0 is the baseline.</p>
151     */
152    float Orientation;
153
154    //-------------------------------------------------------------------------
155
156    /** For requesting, it specifies if there is a kerning table available.
157        For selecting, it specifies if the kerning table is to be used.
158     */
159    boolean Kerning;
160
161    //-------------------------------------------------------------------------
162
163    /** specifies if only words get underlined.
164
165        <p><TRUE/> means that only non-space characters get underlined,
166        <FALSE/> means that the spacing also gets underlined.</p>
167
168        <p>This property is only valid if the property
169        <member scope="com::sun::star::awt">FontDescriptor::Underline</member>
170        is not <const>FontUnderline::NONE</const>.</p>
171     */
172    boolean WordLineMode;
173
174    //-------------------------------------------------------------------------
175
176    /** specifies the technology of the font representation.
177
178        <p>One or more values out of the constant group
179        <type scope="com::sun::star::awt">FontType</type> can be combined by
180        an arithmetical or-operation.</p>
181     */
182    short Type;
183
184};
185
186//=============================================================================
187
188}; }; }; };
189
190#endif
191