95 lines
3.5 KiB
Text
95 lines
3.5 KiB
Text
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/*
|
|
* This file is part of the LibreOffice project.
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*
|
|
* This file incorporates work covered by the following license notice:
|
|
*
|
|
* 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 .
|
|
*/
|
|
|
|
|
|
module com { module sun { module star { module rendering {
|
|
|
|
interface XCanvas;
|
|
interface XTextLayout;
|
|
interface XPolyPolygon2D;
|
|
|
|
/** This interface provides access to a specific, XCanvas-dependent
|
|
font incarnation. This font is not universally usable, but belongs
|
|
to the XCanvas it was queried from.
|
|
*/
|
|
interface XCanvasFont : ::com::sun::star::uno::XInterface
|
|
{
|
|
/** Create a text layout interface.<p>
|
|
|
|
Create a text layout interface for the given string, using
|
|
this font to generate the glyphs from.<p>
|
|
|
|
@param aText
|
|
The text to layout.
|
|
|
|
@param nDirection
|
|
Main text direction for the string specified. The main text
|
|
direction is e.g. important for characters that are not
|
|
strong, i.e. that change affinity according to the current
|
|
writing direction. Make sure that across text portions and
|
|
lines, the direction is set consistently.
|
|
|
|
@param nRandomSeed
|
|
Optional random seed for OpenType glyph variations.
|
|
*/
|
|
XTextLayout createTextLayout( [in] StringContext aText, [in] byte nDirection, [in] hyper nRandomSeed );
|
|
|
|
|
|
/** Query the FontRequest that was used to generate this object.
|
|
*/
|
|
FontRequest getFontRequest();
|
|
|
|
|
|
/** Query metric information about the font, that is generic to
|
|
all its glyphs.<p>
|
|
|
|
Note that the metric values in the returned result are in the
|
|
font coordinate system, i.e. relative to the corresponding
|
|
size of this font. That is, when this font was created with a
|
|
cell size of 20 units, the metrics returned are calculated
|
|
relative to this size.
|
|
*/
|
|
FontMetrics getFontMetrics();
|
|
|
|
|
|
/** Query the list of available font sizes.<p>
|
|
|
|
This method queries the list of available font sizes (in
|
|
device units) for this font. For scalable fonts that are not
|
|
restricted to discrete sizes, this list is <em>empty</em>,
|
|
meaning that every size is possible. Fonts that <em>do</em>
|
|
restrict the device size to certain discrete values, setting
|
|
an overall transformation that scales the
|
|
FontRequest::CellSize to something not
|
|
contained in the list returned by this method can lead to
|
|
visible disturbances.<p>
|
|
*/
|
|
sequence< double > getAvailableSizes();
|
|
|
|
|
|
/** Query the list of additional font properties.<p>
|
|
*/
|
|
sequence< ::com::sun::star::beans::PropertyValue > getExtraFontProperties();
|
|
|
|
|
|
};
|
|
|
|
}; }; }; };
|
|
|
|
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|