update dev300-m58
[ooovba.git] / offapi / com / sun / star / rendering / FontInfo.idl
blob274ae938b2b8810ba81d0bf1a76fd7ea1d41e4e4
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: FontInfo.idl,v $
10 * $Revision: 1.5 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_rendering_FontInfo_idl__
31 #define __com_sun_star_rendering_FontInfo_idl__
33 #ifndef __com_sun_star_util_TriState_idl__
34 #include <com/sun/star/util/TriState.idl>
35 #endif
37 #ifndef __com_sun_star_rendering_Panose_idl__
38 #include <com/sun/star/rendering/Panose.idl>
39 #endif
42 module com { module sun { module star { module rendering {
44 /** This structure provides information about a specific font.<p>
46 @since OOo 2.0.0
48 struct FontInfo
50 /** The PANOSE font classification.<p>
52 TODO: Document semantics in Panose.idl
54 Panose FontDescription;
56 //-------------------------------------------------------------------------
58 /** The name of the font family.<p>
60 The family name is the one normally associated to a font, such
61 as Times New Roman, Thorndale, Andale or Arial.<p>
63 Note: outlined fonts are now specified with 'outline' as part
64 of the family name.<p>
66 string FamilyName;
68 //-------------------------------------------------------------------------
70 /** The name of the specific font style within its family.<p>
72 For example, oblique, italic, or narrow.<p>
74 string StyleName;
76 //-------------------------------------------------------------------------
78 /** This value specifies which unicode ranges are supported by
79 this font.<p>
81 This is to be interpreted as a split-up 128bit value, see <a
82 href=http://partners.adobe.com/asn/tech/type/opentype/os2.jsp#ur>Adobe's
83 OpenType specification</a> for the specific meaning of each
84 bit. UnicodeRanges0 contains the least significant bits,
85 UnicodeRanges3 the most significant ones.<p>
87 const int128 UNICODE_RANGE_BASIC_LATIN = 1;
88 const int128 UNICODE_RANGE_LATIN_SUPPLEMENT = 2;
89 const int128 UNICODE_RANGE_LATIN_EXTENDED_A = 4;
90 const int128 UNICODE_RANGE_LATIN_EXTENDED_B = 4;
91 ...
92 const int128 UNICODE_RANGE_MASK_LATIN = 1;
93 const int128 UNICODE_RANGE_MASK_CJK = (31<<48) + (3<<55) +
94 (1<<59);
95 const int128 UNICODE_RANGE_MASK_CTL = (1<<11) + (1<<13) +
96 (0x3FFF<<15) + (0x0FFF<<70);
99 long UnicodeRanges0;
100 long UnicodeRanges1;
101 long UnicodeRanges2;
102 long UnicodeRanges3;
104 //-------------------------------------------------------------------------
106 /** Specifies whether the font is a symbol font.<p>
108 If yes, text written in this symbol font does not have a
109 specified meaning.<p>
111 ::com::sun::star::util::TriState IsSymbolFont;
113 //-------------------------------------------------------------------------
115 /** Set to true, if the font is usable for vertical text
116 output.<p>
118 Vertical fonts have subtle differences to horizontal ones,
119 e.g. rotated or differently shaped glyphs, or special rotated
120 versions of normally upright glyphs (e.g. brackets).<p>
122 ::com::sun::star::util::TriState IsVertical;
127 }; }; }; };
129 #endif