| /************************************************************** |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_rendering_FontInfo_idl__ |
| #define __com_sun_star_rendering_FontInfo_idl__ |
| |
| #ifndef __com_sun_star_util_TriState_idl__ |
| #include <com/sun/star/util/TriState.idl> |
| #endif |
| |
| #ifndef __com_sun_star_rendering_Panose_idl__ |
| #include <com/sun/star/rendering/Panose.idl> |
| #endif |
| |
| |
| module com { module sun { module star { module rendering { |
| |
| /** This structure provides information about a specific font.<p> |
| |
| @since OpenOffice 2.0 |
| */ |
| published struct FontInfo |
| { |
| /** The PANOSE font classification.<p> |
| |
| TODO: Document semantics in Panose.idl |
| */ |
| Panose FontDescription; |
| |
| //------------------------------------------------------------------------- |
| |
| /** The name of the font family.<p> |
| |
| The family name is the one normally associated to a font, such |
| as Times New Roman, Thorndale, Andale or Arial.<p> |
| |
| Note: outlined fonts are now specified with 'outline' as part |
| of the family name.<p> |
| */ |
| string FamilyName; |
| |
| //------------------------------------------------------------------------- |
| |
| /** The name of the specific font style within its family.<p> |
| |
| For example, oblique, italic, or narrow.<p> |
| */ |
| string StyleName; |
| |
| //------------------------------------------------------------------------- |
| |
| /** This value specifies which unicode ranges are supported by |
| this font.<p> |
| |
| This is to be interpreted as a split-up 128bit value, see <a |
| href=http://partners.adobe.com/asn/tech/type/opentype/os2.jsp#ur>Adobe's |
| OpenType specification</a> for the specific meaning of each |
| bit. UnicodeRanges0 contains the least significant bits, |
| UnicodeRanges3 the most significant ones.<p> |
| |
| const int128 UNICODE_RANGE_BASIC_LATIN = 1; |
| const int128 UNICODE_RANGE_LATIN_SUPPLEMENT = 2; |
| const int128 UNICODE_RANGE_LATIN_EXTENDED_A = 4; |
| const int128 UNICODE_RANGE_LATIN_EXTENDED_B = 4; |
| ... |
| const int128 UNICODE_RANGE_MASK_LATIN = 1; |
| const int128 UNICODE_RANGE_MASK_CJK = (31<<48) + (3<<55) + |
| (1<<59); |
| const int128 UNICODE_RANGE_MASK_CTL = (1<<11) + (1<<13) + |
| (0x3FFF<<15) + (0x0FFF<<70); |
| |
| */ |
| long UnicodeRanges0; |
| long UnicodeRanges1; |
| long UnicodeRanges2; |
| long UnicodeRanges3; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Specifies whether the font is a symbol font.<p> |
| |
| If yes, text written in this symbol font does not have a |
| specified meaning.<p> |
| */ |
| ::com::sun::star::util::TriState IsSymbolFont; |
| |
| //------------------------------------------------------------------------- |
| |
| /** Set to true, if the font is usable for vertical text |
| output.<p> |
| |
| Vertical fonts have subtle differences to horizontal ones, |
| e.g. rotated or differently shaped glyphs, or special rotated |
| versions of normally upright glyphs (e.g. brackets).<p> |
| */ |
| ::com::sun::star::util::TriState IsVertical; |
| |
| |
| }; |
| |
| }; }; }; }; |
| |
| #endif |