1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XFont.idl,v $
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_awt_XFont_idl__
31 #define __com_sun_star_awt_XFont_idl__
33 #ifndef __com_sun_star_uno_XInterface_idl__
34 #include
<com
/sun
/star
/uno
/XInterface.idl
>
37 #ifndef __com_sun_star_awt_FontDescriptor_idl__
38 #include
<com
/sun
/star
/awt
/FontDescriptor.idl
>
41 #ifndef __com_sun_star_awt_SimpleFontMetric_idl__
42 #include
<com
/sun
/star
/awt
/SimpleFontMetric.idl
>
46 //=============================================================================
48 module com
{ module sun
{ module star
{ module awt
{
50 //=============================================================================
52 /** decribes a font on a specific device.
54 <p>All values are in pixels within this device.</p>
56 published
interface XFont
: com
::sun
::star
::uno
::XInterface
58 //-------------------------------------------------------------------------
60 /** returns the description of the font.
62 <p>The unit of measurement is pixels for the device.
64 com
::sun
::star
::awt
::FontDescriptor getFontDescriptor
();
66 //-------------------------------------------------------------------------
68 /** returns additional information about the font.
70 com
::sun
::star
::awt
::SimpleFontMetric getFontMetric
();
72 //-------------------------------------------------------------------------
74 /** returns the width of the specified character.
77 the character width measured in pixels for the device.
79 short getCharWidth
( [in] char c
);
81 //-------------------------------------------------------------------------
83 /** returns the widths of the specified characters.
86 a sequence of the widths of subsequent characters for this font.
88 sequence
<short> getCharWidths
( [in] char nFirst
, [in] char nLast
);
90 //-------------------------------------------------------------------------
92 /** returns the string width.
95 the width of the specified string of characters
96 measured in pixels for the device.
98 long getStringWidth
( [in] string str
);
100 //-------------------------------------------------------------------------
102 /** returns the string and the character widths.
105 the width of the specified string of characters
106 measured in pixels for the device.
109 receives the width of every single character
110 measured in pixels for the device.
112 long getStringWidthArray
( [in] string str
,
113 [out] sequence
<long> aDXArray
);
115 //-------------------------------------------------------------------------
117 /** queries the kerning pair table.
119 void getKernPairs
( [out] sequence
<char> Chars1
,
120 [out] sequence
<char> Chars2
,
121 [out] sequence
<short> Kerns
);
125 //=============================================================================