qfontmanager_qws-h.html
来自「QT 下载资料仅供参考」· HTML 代码 · 共 248 行
HTML
248 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><!-- /home/reggie/tmp/qt-3.0-reggie-5401/qt-x11-commercial-3.0.5/include/qfontmanager_qws.h:1 --><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>qfontmanager_qws.h Include File</title><style type="text/css"><!--h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm; }a:link { color: #004faf; text-decoration: none }a:visited { color: #672967; text-decoration: none }body { background: #ffffff; color: black; }--></style></head><body><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr bgcolor="#E5E5E5"><td valign=center> <a href="index.html"><font color="#004faf">Home</font></a> | <a href="classes.html"><font color="#004faf">All Classes</font></a> | <a href="mainclasses.html"><font color="#004faf">Main Classes</font></a> | <a href="annotated.html"><font color="#004faf">Annotated</font></a> | <a href="groups.html"><font color="#004faf">Grouped Classes</font></a> | <a href="functions.html"><font color="#004faf">Functions</font></a></td><td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>qfontmanager_qws.h</h1><p>This is the verbatim text of the qfontmanager_qws.h include file. It is provided only for illustration; the copyright remains with Trolltech.<hr><pre>/****************************************************************************** $Id: qt/qfontmanager_qws.h 3.0.5 edited Oct 12 2001 $**** Definition of font rendering infrastructure for Embedded Qt**** Created : 940721**** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.**** This file is part of the kernel module of the Qt GUI Toolkit.**** This file may be distributed and/or modified under the terms of the** GNU General Public License version 2 as published by the Free Software** Foundation and appearing in the file LICENSE.GPL included in the** packaging of this file.**** Licensees holding valid Qt Enterprise Edition or Qt Professional Edition** licenses for Qt/Embedded may use this file in accordance with the** Qt Embedded Commercial License Agreement provided with the Software.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.**** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for** information about Qt Commercial License Agreements.** See http://www.trolltech.com/gpl/ for GPL licensing information.**** Contact info@trolltech.com if any conditions of this licensing are** not clear to you.************************************************************************/#ifndef QFONTMANAGER_QWS_H#define QFONTMANAGER_QWS_H#ifndef QT_H#include "qfont.h"#include "qptrlist.h"#endif // QT_H// These are stored in the shared memory segment in front of their// data, and indexed at the start of the segment// This needs to be a multiple of 64 bitsclass QFontDef;class Q_PACKED QGlyphMetrics {public: Q_UINT8 linestep; Q_UINT8 width; Q_UINT8 height; Q_UINT8 padding; Q_INT8 bearingx; // Difference from pen position to glyph's left bbox Q_UINT8 advance; // Difference between pen positions Q_INT8 bearingy; // Used for putting characters on baseline Q_INT8 reserved; // Do not use};class QGlyph {public: QGlyph() { } QGlyph(QGlyphMetrics* m, uchar* d) : metrics(m), data(d) { } QGlyphMetrics* metrics; uchar* data;};class QFontFactory;class QDiskFont;// This is a particular font instance at a particular resolution// e.g. Truetype Times, 10 point. There's only one of these though;// we want to share generated glyphsclass QRenderedFont {public: // Normal font-type is monochrome; glyph data is a // bitmap, which doesn't use much memory // Initialise for name A, renderer B, font type C, D glyphs QRenderedFont(QDiskFont *,const QFontDef&); virtual ~QRenderedFont(); int refcount; int ptsize; bool italic; unsigned int weight; void ref() { refcount++; } bool deref() { refcount--; return (refcount<1); } QDiskFont* diskfont; int fascent,fdescent; int fleftbearing,frightbearing; int fmaxwidth; int fleading; int funderlinepos; int funderlinewidth; bool smooth; int maxchar; int ascent() { return fascent; } int descent() { return fdescent; } int width(int); int width( const QString&, int =-1 ); int leftBearing(int); int rightBearing(int); // Calling any of these can trigger a full-font metrics check // which can be expensive int minLeftBearing(); int minRightBearing(); int maxWidth(); virtual bool inFont(QChar ch) const=0; virtual QGlyph render(QChar)=0;private:};// Keeps track of available renderers and which font is whichclass QDiskFontPrivate {};class QDiskFont {public: QDiskFont(QFontFactory *f, const QString& n, bool i, int w, int s, const QString &fl, const QString& fi) : factory(f), name(n), italic(i), weight(w), size(s), flags(fl), file(fi) { loaded=false; p=0; } QRenderedFont* load(const QFontDef &); QFontDef fontDef() const; QFontFactory *factory; QString name; bool italic; int weight; int size; QString flags; QString file; bool loaded; QDiskFontPrivate * p;};class QFontManager {public: QPtrList<QFontFactory> factories; QPtrList<QRenderedFont> cachedfonts; QPtrList<QDiskFont> diskfonts; QFontManager(); ~QFontManager(); // Font definition, type and color QDiskFont * get(const QFontDef &); static int cmpFontDef(const QFontDef & goal, const QFontDef & choice); static void initialize(); static void cleanup();};class QFontFactory {public: QFontFactory() {} virtual ~QFontFactory() {} virtual QRenderedFont * get(const QFontDef &,QDiskFont *)=0; virtual void load(QDiskFont *) const=0; virtual QString name()=0;};void qt_init_fonts();extern QFontManager * qt_fontmanager;#endif</pre><!-- eof --><p><address><hr><div align=center><table width=100% cellspacing=0 border=0><tr><td>Copyright © 2002 <a href="http://www.trolltech.com">Trolltech</a><td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a><td align=right><div align=right>Qt version 3.0.5</div></table></div></address></body></html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?