<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # QFontMetricsF Class Reference ## [[QtGui](index.htm) module] 該QFontMetricsF類提供的字體度量信息。[More...](#details) ### Methods * `__init__ (self, QFont)` * `__init__ (self, QFont, QPaintDevice?pd)` * `__init__ (self, QFontMetrics)` * `__init__ (self, QFontMetricsF)` * `float ascent (self)` * `float averageCharWidth (self)` * `QRectF boundingRect (self, QChar)` * `QRectF boundingRect (self, QString?string)` * `QRectF boundingRect (self, QRectF?rect, int?flags, QString?text, int?tabStops?=?0, list-of-int?tabArray?=?0)` * `QRectF boundingRectChar (self, QChar)` * `float descent (self)` * `QString elidedText (self, QString?text, Qt.TextElideMode?mode, float?width, int?flags?=?0)` * `float height (self)` * `bool inFont (self, QChar)` * `bool inFontUcs4 (self, int?character)` * `float leading (self)` * `float leftBearing (self, QChar)` * `float lineSpacing (self)` * `float lineWidth (self)` * `float maxWidth (self)` * `float minLeftBearing (self)` * `float minRightBearing (self)` * `float overlinePos (self)` * `float rightBearing (self, QChar)` * `QSizeF size (self, int?flags, QString?text, int?tabStops?=?0, list-of-int?tabArray?=?0)` * `float strikeOutPos (self)` * `QRectF tightBoundingRect (self, QString?text)` * `float underlinePos (self)` * `float width (self, QChar)` * `float width (self, QString?string)` * `float widthChar (self, QChar)` * `float xHeight (self)` ### Special Methods * `bool __eq__ (self, QFontMetricsF?other)` * `bool __ne__ (self, QFontMetricsF?other)` * * * ## Detailed Description 該QFontMetricsF類提供的字體度量信息。 QFontMetricsF函數計算字符和字符串給定字體的大小。你可以構造一個QFontMetricsF對象與現有[QFont](qfont.html)獲得指標的字體。如果字體是后來改,字體規格對象_not_更新。 一旦創建,該對象提供了訪問字體,它的字符,并在字體渲染字符串的各個指標。 有跡象表明,在字體上運行幾個功能:[ascent](qfontmetricsf.html#ascent)( )[descent](qfontmetricsf.html#descent)( )[height](qfontmetricsf.html#height)( )[leading](qfontmetricsf.html#leading)()和[lineSpacing](qfontmetricsf.html#lineSpacing)( )返回字體的基本大小屬性。該[underlinePos](qfontmetricsf.html#underlinePos)( )[overlinePos](qfontmetricsf.html#overlinePos)( )[strikeOutPos](qfontmetricsf.html#strikeOutPos)()和[lineWidth](qfontmetricsf.html#lineWidth)( )函數,返回強調, overlines或撞擊出的字符的行的屬性。這些功能都是快。 也有一些對集合中的字體字形的操作一些功能:[minLeftBearing](qfontmetricsf.html#minLeftBearing)( )[minRightBearing](qfontmetricsf.html#minRightBearing)()和[maxWidth](qfontmetricsf.html#maxWidth)( ) 。這些都是必然緩慢,我們建議避免他們,如果可能的。 對于每一個字符,就可以得到其[width](qfontmetricsf.html#width)( )[leftBearing](qfontmetricsf.html#leftBearing)()和[rightBearing](qfontmetricsf.html#rightBearing)( ),并找出是否是在使用字體[inFont](qfontmetricsf.html#inFont)( ) 。您也可以把字符作為字符串,并使用字符串函數就可以了。 字符串函數包括:[width](qfontmetricsf.html#width)() ,返回字符串的寬度以像素為單位(或點,用于打印機)[boundingRect](qfontmetricsf.html#boundingRect)( )返回一個矩形足夠大,以包含所呈現的串,并[size](qfontmetricsf.html#size)() ,以返回該矩形的大小。 例如: ``` [QFont](qfont.html) font("times", 24); QFontMetricsF fm(font); [qreal](index.htm#qreal-typedef) pixelsWide = fm.width("What's the width of this text?"); [qreal](index.htm#qreal-typedef) pixelsHigh = fm.height(); ``` * * * ## Method Documentation ``` QFontMetricsF.__init__ (self, QFont) ``` 構造一個字體規格對象為_font_。 字體規格將與用于創建paintdevice兼容_font_。 字體規格對象持有,在它被創建的時候被傳遞在構造函數中的字體的信息,并且不更新,如果字體的屬性后來改。 使用[QFontMetricsF](qfontmetricsf.html)(常量[QFont](qfont.html)& ,[QPaintDevice](qpaintdevice.html)*)來獲取字體度量標準,具有一定的繪圖設備兼容。 ``` QFontMetricsF.__init__ (self, QFont, QPaintDevice?pd) ``` 構造一個字體規格對象為_font_和_paintdevice_。 字體規格將與通過paintdevice兼容。如果_paintdevice_為0時,度量將屏幕兼容的,即得。你得到,如果你使用的字體在繪制文本的指標[widgets](qwidget.html) or [pixmaps](qpixmap.html),而不是在[QPicture](qpicture.html) or [QPrinter](qprinter.html)。 字體規格對象持有,在它被創建的時候被傳遞在構造函數中的字體的信息,并且不更新,如果字體的屬性后來改。 ``` QFontMetricsF.__init__ (self, QFontMetrics) ``` 構造一個字體規格與從給定的浮點精度反對_fontMetrics_對象。 這個函數中引入了Qt 4.2中。 ``` QFontMetricsF.__init__ (self, QFontMetricsF) ``` 構造的副本_fm_。 ``` float QFontMetricsF.ascent (self) ``` 返回字體的上升。 字體的上升是從基線到最高位置的字符延伸到距離。在實踐中,有些字體設計師打破了這個規則,如當他們把一個以上的口音就一個字之上,或者以適應異國的語言不同尋常的性格,所以它是可能的(雖然很少) ,這個值將是太小了。 **See also** [descent](qfontmetricsf.html#descent)( ) 。 ``` float QFontMetricsF.averageCharWidth (self) ``` 返回字形在字體的平均寬度。 這個函數中引入了Qt 4.2中。 ``` QRectF QFontMetricsF.boundingRect (self, QChar) ``` [ 返回字符的邊框由指定的字符串中_text_。邊界矩形總是至少復蓋的像素集合的文本將涵蓋如果畫在( 0 , 0 ) 。 ](qrectf.html) [注意,邊框可以延伸到的(0,0 ),例如左斜體字體,返回的矩形的寬度可能比什么不同](qrectf.html)[width](qfontmetricsf.html#width)( )方法返回。 如果你想知道字符串的超前寬度(布局彼此相鄰一組字符串) ,使用[width](qfontmetricsf.html#width)( )來代替。 換行符的處理方法與普通字符,_not_作為換行符。 的邊界矩形的高度至少一樣大的返回值[height](qfontmetricsf.html#height)( ) 。 **See also** [width](qfontmetricsf.html#width)( )[height](qfontmetricsf.html#height)()和[QPainter.boundingRect](qpainter.html#boundingRect)( ) 。 ``` QRectF QFontMetricsF.boundingRect (self, QString?string) ``` [ 返回字符的邊框_ch_相對于在基準線的最左邊的點。 注意,邊框可以延伸到的(0,0 ),例如左斜體字體和文本輸出可以復蓋_all_像素的邊界矩形。 請注意,矩形通常既基線的上方和下方延伸。 ](qrectf.html) [**See also**](qrectf.html) [width](qfontmetricsf.html#width)( ) 。 ``` QRectF QFontMetricsF.boundingRect (self, QRectF?rect, int?flags, QString?text, int?tabStops?=?0, list-of-int?tabArray?=?0) ``` [ 該_tabArray_參數也可能沒有。 這是一個重載函數。 返回字符的邊框在給定的_text_。這是一組像素的限制時,由指定的矩形邊界的文本將涵蓋若拉_rect_。 該_flags_參數是下列標志的按位或: ](qrectf.html) [](qrectf.html) * [](qrectf.html)[Qt.AlignLeft](qt.html#AlignmentFlag-enum) aligns to the left border, except for Arabic and Hebrew where it aligns to the right. * [Qt.AlignRight](qt.html#AlignmentFlag-enum) aligns to the right border, except for Arabic and Hebrew where it aligns to the left. * [Qt.AlignJustify](qt.html#AlignmentFlag-enum) produces justified text. * [Qt.AlignHCenter](qt.html#AlignmentFlag-enum) aligns horizontally centered. * [Qt.AlignTop](qt.html#AlignmentFlag-enum) aligns to the top border. * [Qt.AlignBottom](qt.html#AlignmentFlag-enum) aligns to the bottom border. * [Qt.AlignVCenter](qt.html#AlignmentFlag-enum) aligns vertically centered * [Qt.AlignCenter](qt.html#AlignmentFlag-enum) (== `Qt.AlignHCenter | Qt.AlignVCenter`) * [Qt.TextSingleLine](qt.html#TextFlag-enum) ignores newline characters in the text. * [Qt.TextExpandTabs](qt.html#TextFlag-enum) expands tabs (see below) * [Qt.TextShowMnemonic](qt.html#TextFlag-enum) interprets "&x" as &lt;u&gt;x&lt;/u&gt;; i.e., underlined. * [Qt.TextWordWrap](qt.html#TextFlag-enum) breaks the text to fit the rectangle. [Qt.Horizontal](qt.html#Orientation-enum)對齊默認為[Qt.AlignLeft](qt.html#AlignmentFlag-enum)和垂直對齊方式默認為[Qt.AlignTop](qt.html#AlignmentFlag-enum)。 如果多個水平或幾個的垂直對齊的標志被設置,所產生的取向是不確定的。 這些標記被定義[Qt.AlignmentFlag](qt.html#AlignmentFlag-enum)。 If [Qt.TextExpandTabs](qt.html#TextFlag-enum)在設置_flags_,以下行為被用來解釋制表符中的文本: * If _tabArray_ is non-null, it specifies a 0-terminated sequence of pixel-positions for tabs in the text. * If _tabStops_ is non-zero, it is used as the tab spacing (in pixels). 注意,邊框可以延伸到的(0,0 ),例如左斜體字體。 換行字符處理為換行符。 盡管在不同的實際字符的高度,的邊界矩形的高度“是”, “是”是相同的。 這個函數返回的邊界矩形是有點比由簡單的計算較大[boundingRect](qfontmetricsf.html#boundingRect)()函數。該函數使用[maximum left](qfontmetricsf.html#minLeftBearing)和[right](qfontmetricsf.html#minRightBearing)字體軸承作為是必要的多行文本正確對齊。此外, fontHeight ()和[lineSpacing](qfontmetricsf.html#lineSpacing)()被用于計算的高度,而不是單個字符的高度。 **See also** [width](qfontmetricsf.html#width)( )[QPainter.boundingRect](qpainter.html#boundingRect)()和[Qt.Alignment](qt.html#AlignmentFlag-enum)。 ``` QRectF QFontMetricsF.boundingRectChar (self, QChar) ``` [ ``` float QFontMetricsF.descent (self) ``` 返回字體的血統。 的下降是從基準線到最低點的字符延伸到距離。 (請注意,這是從X不同,它增加了1個像素。 )在實踐中,有些字體設計師打破了這個規則,如以容納在一個異乎尋常的語言不尋常的字符,所以它是可能的(雖然很少) ,該值將是太小。 ](qrectf.html) [**See also**](qrectf.html) [ascent](qfontmetricsf.html#ascent)( ) 。 ``` QString QFontMetricsF.elidedText (self, QString?text, Qt.TextElideMode?mode, float?width, int?flags?=?0) ``` 如果字符串_text_比更寬_width_,返回字符串的省略版本(即,在用“ ...... ”一個字符串) 。否則,返回原始字符串。 該_mode_參數指定的文本是省略左側(如“ ......技術” ) ,中間(例如,“風帆... CH” ) ,或在右邊(例如,“ TROL ...” ) 。 該_width_指定以像素為單位,而不是以字符。 該_flags_參數是可選的,并且目前只支持[Qt.TextShowMnemonic](qt.html#TextFlag-enum)作為值。 這個函數中引入了Qt 4.2中。 ``` float QFontMetricsF.height (self) ``` 返回字體的高度。 這總是等于[ascent](qfontmetricsf.html#ascent)()+[descent](qfontmetricsf.html#descent)() 1 ( 1是基準線) 。 **See also** [leading](qfontmetricsf.html#leading)()和[lineSpacing](qfontmetricsf.html#lineSpacing)( ) 。 ``` bool QFontMetricsF.inFont (self, QChar) ``` 返回True如果字符_ch_在字體中的有效字符,否則返回False 。 ``` bool QFontMetricsF.inFontUcs4 (self, int?character) ``` 返回True如果給定的字符_ch_,編碼UCS-4/UTF-32 ,是在字體中的有效字符,否則返回False 。 此功能被引入Qt的4.8 。 ``` float QFontMetricsF.leading (self) ``` 返回字體的領先。 這是自然的線間間距。 **See also** [height](qfontmetricsf.html#height)()和[lineSpacing](qfontmetricsf.html#lineSpacing)( ) 。 ``` float QFontMetricsF.leftBearing (self, QChar) ``` 返回字符的左軸承_ch_在字體。 左邊的軸承是從字符的邏輯原點的字符的最左邊的像素的右支距離。這個值是負的,如果該字符的像素延伸到邏輯原點的左邊。 見寬([QChar](qchar.html))這個度量的圖形化描述。 **See also** [rightBearing](qfontmetricsf.html#rightBearing)( )[minLeftBearing](qfontmetricsf.html#minLeftBearing)()和[width](qfontmetricsf.html#width)( ) 。 ``` float QFontMetricsF.lineSpacing (self) ``` 返回從一個基線的距離下。 該值始終等于[leading](qfontmetricsf.html#leading)()+[height](qfontmetricsf.html#height)( ) 。 **See also** [height](qfontmetricsf.html#height)()和[leading](qfontmetricsf.html#leading)( ) 。 ``` float QFontMetricsF.lineWidth (self) ``` 返回下劃線和刪除線,調整字體的點大小的寬度。 **See also** [underlinePos](qfontmetricsf.html#underlinePos)( )[overlinePos](qfontmetricsf.html#overlinePos)()和[strikeOutPos](qfontmetricsf.html#strikeOutPos)( ) 。 ``` float QFontMetricsF.maxWidth (self) ``` 返回最寬的字符的字體的寬度。 ``` float QFontMetricsF.minLeftBearing (self) ``` 返回字體的最小左軸承。 這是字體中的所有字符的最小leftBearing (字符) 。 請注意,此功能可能會非常緩慢,如果字體很大。 **See also** [minRightBearing](qfontmetricsf.html#minRightBearing)()和[leftBearing](qfontmetricsf.html#leftBearing)( ) 。 ``` float QFontMetricsF.minRightBearing (self) ``` 返回字體的最低右側軸承。 這是字體中的所有字符的最小rightBearing (字符) 。 請注意,此功能可能會非常緩慢,如果字體很大。 **See also** [minLeftBearing](qfontmetricsf.html#minLeftBearing)()和[rightBearing](qfontmetricsf.html#rightBearing)( ) 。 ``` float QFontMetricsF.overlinePos (self) ``` 返回從基線的距離,其中一個上劃線應繪制。 **See also** [underlinePos](qfontmetricsf.html#underlinePos)( )[strikeOutPos](qfontmetricsf.html#strikeOutPos)()和[lineWidth](qfontmetricsf.html#lineWidth)( ) 。 ``` float QFontMetricsF.rightBearing (self, QChar) ``` 返回字符的右側軸承_ch_在字體。 右軸承是由一個后續字符的邏輯原點的最右邊的像素的字符的左病房距離。這個值是負的,如果該字符的像素延伸到的權[width](qfontmetricsf.html#width)的字符() 。 See [width](qfontmetricsf.html#width)( )這個指標的圖形化描述。 **See also** [leftBearing](qfontmetricsf.html#leftBearing)( )[minRightBearing](qfontmetricsf.html#minRightBearing)()和[width](qfontmetricsf.html#width)( ) 。 ``` QSizeF QFontMetricsF.size (self, int?flags, QString?text, int?tabStops?=?0, list-of-int?tabArray?=?0) ``` [ 該_tabArray_參數也可能沒有。 返回大小的字符的像素在給定的_text_。 該_flags_參數是下列標志的按位或: ](qsizef.html) [](qsizef.html) * [](qsizef.html)[Qt.TextSingleLine](qt.html#TextFlag-enum) ignores newline characters. * [Qt.TextExpandTabs](qt.html#TextFlag-enum) expands tabs (see below) * [Qt.TextShowMnemonic](qt.html#TextFlag-enum) interprets "&x" as &lt;u&gt;x&lt;/u&gt;; i.e., underlined. * Qt.TextWordBreak breaks the text to fit the rectangle. 這些標記被定義[Qt.TextFlags](index.htm#TextFlags-typedef)。 If [Qt.TextExpandTabs](qt.html#TextFlag-enum)在設置_flags_,以下行為被用來解釋制表符中的文本: * If _tabArray_ is non-null, it specifies a 0-terminated sequence of pixel-positions for tabs in the text. * If _tabStops_ is non-zero, it is used as the tab spacing (in pixels). 換行字符處理為換行符。 注意:盡管在不同的實際字符的高度,的邊界矩形的高度“是”, “是”是相同的。 **See also** [boundingRect](qfontmetricsf.html#boundingRect)( ) 。 ``` float QFontMetricsF.strikeOutPos (self) ``` 返回從基準線的距離,其中應繪制的三振線。 **See also** [underlinePos](qfontmetricsf.html#underlinePos)( )[overlinePos](qfontmetricsf.html#overlinePos)()和[lineWidth](qfontmetricsf.html#lineWidth)( ) 。 ``` QRectF QFontMetricsF.tightBoundingRect (self, QString?text) ``` [ 返回字符周圍緊張的邊界矩形被指定的字符串中_text_。邊界矩形總是至少復蓋的像素集合的文本將涵蓋如果畫在( 0 , 0 ) 。 ](qrectf.html) [注意,邊框可以延伸到的(0,0 ),例如左斜體字體,返回的矩形的寬度可能比什么不同](qrectf.html)[width](qfontmetricsf.html#width)( )方法返回。 如果你想知道字符串的超前寬度(布局彼此相鄰一組字符串) ,使用[width](qfontmetricsf.html#width)( )來代替。 換行符的處理方法與普通字符,_not_作為換行符。 **Warning:**調用此方法將是非常緩慢的Windows 。 此功能被引入Qt的4.3 。 **See also** [width](qfontmetricsf.html#width)( )[height](qfontmetricsf.html#height)()和[boundingRect](qfontmetricsf.html#boundingRect)( ) 。 ``` float QFontMetricsF.underlinePos (self) ``` 返回從基線的距離,其中一個底線應繪制。 **See also** [overlinePos](qfontmetricsf.html#overlinePos)( )[strikeOutPos](qfontmetricsf.html#strikeOutPos)()和[lineWidth](qfontmetricsf.html#lineWidth)( ) 。 ``` float QFontMetricsF.width (self, QChar) ``` 返回的寬度中的字符的像素在給定的_text_。 注意,該值是_not_等于返回的寬度[boundingRect](qfontmetricsf.html#boundingRect)( ) ,寬( ),因為[boundingRect](qfontmetricsf.html#boundingRect)( )返回一個描述像素的矩形這個字符串將復蓋而寬度( )返回的距離應在其中繪制的下一個字符串。 **See also** [boundingRect](qfontmetricsf.html#boundingRect)( ) 。 ``` float QFontMetricsF.width (self, QString?string) ``` 這是一個重載函數。 ![Bearings](https://img.kancloud.cn/00/21/002161b559bf1207921a38f055c6a33b_287x136.png) 返回字符的邏輯寬度_ch_以像素為單位。這是一個距離合適后拉隨后的字符_ch_。 一些度量中的所述圖像中所描述的權利。中央暗矩形復蓋的邏輯[width](qfontmetricsf.html#width)每個字符的( ) 。外蒼白的矩形復蓋[leftBearing](qfontmetricsf.html#leftBearing)()和[rightBearing](qfontmetricsf.html#rightBearing)每個字符的( ) 。注意,在這個特定的字體的“f”的軸承都是負的,而軸承的“o”都是正的。 **Warning:**此功能會產生不正確的結果在一個字符串的中間阿拉伯文字符或無空格標記,作為字形整形和標記的定位是處理字符串時,會發生不能考慮。當實現一個互動的文本控件,使用[QTextLayout](qtextlayout.html)代替。 **See also** [boundingRect](qfontmetricsf.html#boundingRect)( ) 。 ``` float QFontMetricsF.widthChar (self, QChar) ``` ``` float QFontMetricsF.xHeight (self) ``` 返回字體的'X'的高度。這是常常但不總是相同的字符“X”的高度。 ``` bool QFontMetricsF.__eq__ (self, QFontMetricsF?other) ``` ``` bool QFontMetricsF.__ne__ (self, QFontMetricsF?other) ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看