⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qimage-h.html

📁 qtopiaphone英文帮助,用于初学者和开发人员,初学者可以用来学习,开发人员可以用来资料查询.
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Qt Toolkit - qimage.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: white; color: black; }--></style></head><body bgcolor="#ffffff"><table width="100%"><tr><td><a href="index.html"><img width="100" height="100" src="qtlogo.png"alt="Home" border="0"><img width="100"height="100" src="face.png" alt="Home" border="0"></a><td valign="top"><div align="right"><img src="dochead.png" width="472" height="27"><br><a href="classes.html"><b>Classes</b></a>- <a href="annotated.html">Annotated</a>- <a href="hierarchy.html">Tree</a>- <a href="functions.html">Functions</a>- <a href="index.html">Home</a>- <a href="topicals.html"><b>Structure</b>  <font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" align="center" size=32>Qte</font></a></div></table><h1 align=center>qimage.h</h1><br clear="all">This is the verbatim text of the qimage.h include file.  It isprovided only for illustration; the copyrightremains with Trolltech.<hr><pre>/****************************************************************************** &#36;Id&#58; qt/src/kernel/qimage.h   2.3.8   edited 2004-05-12 $**** Definition of QImage and QImageIO classes**** Created : 950207**** 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 under the terms of the Q Public License** as defined by Trolltech AS of Norway and appearing in the file** LICENSE.QPL included in the packaging of this file.**** 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 may use this file in accordance with the Qt 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/qpl/ for QPL licensing information.** 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 QIMAGE_H#define QIMAGE_H#ifndef QT_H#include "qpixmap.h"#include "qstrlist.h"#include "qstringlist.h"#endif // QT_Hclass QImageDataMisc; // internal#ifndef QT_NO_IMAGE_TEXTclass QImageTextKeyLang {public:    QImageTextKeyLang(const char* k, const char* l) : key(k), lang(l) { }    QImageTextKeyLang() { }    QCString key;    QCString lang;    int operator &lt; (const QImageTextKeyLang&amp; other) const        { return key &lt; other.key || key==other.key &amp;&amp; lang &lt; other.lang; }    int operator == (const QImageTextKeyLang&amp; other) const        { return key==other.key &amp;&amp; lang==other.lang; }};#endif //QT_NO_IMAGE_TEXTclass Q_EXPORT <a href="qimage.html">QImage</a>{public:    enum Endian { IgnoreEndian, BigEndian, LittleEndian };    QImage();    QImage( int width, int height, int depth, int numColors=0,            Endian bitOrder=IgnoreEndian );    QImage( const QSize&amp;, int depth, int numColors=0,            Endian bitOrder=IgnoreEndian );    QImage( const QString &amp;fileName, const char* format=0 );    QImage( const char *xpm[] );    QImage( const QByteArray &amp;data );    QImage( uchar* data, int w, int h, int depth,                QRgb* colortable, int numColors,                Endian bitOrder );#ifdef _WS_QWS_    QImage( uchar* data, int w, int h, int depth, int pbl,                QRgb* colortable, int numColors,                Endian bitOrder );#endif    QImage( const QImage &amp; );   ~QImage();    QImage     &amp;operator=( const QImage &amp; );    QImage     &amp;operator=( const QPixmap &amp; );    bool        operator==( const QImage &amp; ) const;    bool        operator!=( const QImage &amp; ) const;    void        detach();    QImage      copy()          const;    QImage      copy(int x, int y, int w, int h, int conversion_flags=0) const;    QImage      copy(QRect&amp;)    const; // constness srong - REMOVE in Qt 3.0    QImage      copy(const QRect&amp;)      const;    bool        isNull()        const   { return data-&gt;bits == 0; }    int         width()         const   { return data-&gt;w; }    int         height()        const   { return data-&gt;h; }    QSize       size()          const   { return QSize(data-&gt;w,data-&gt;h); }    QRect       rect()          const   { return QRect(0,0,data-&gt;w,data-&gt;h); }    int         depth()         const   { return data-&gt;d; }    int         numColors()     const   { return data-&gt;ncols; }    Endian      bitOrder()      const   { return (Endian) data-&gt;bitordr; }    QRgb        color( int i )  const;    void        setColor( int i, QRgb c );    void        setNumColors( int );    bool        hasAlphaBuffer() const;    void        setAlphaBuffer( bool );    bool        allGray() const;    bool        isGrayscale() const;    uchar      *bits()          const;    uchar      *scanLine( int ) const;    uchar     **jumpTable()     const;    QRgb       *colorTable()    const;    int         numBytes()      const;    int         bytesPerLine()  const;#ifdef _WS_QWS_    QGfx * graphicsContext();#endif        bool        create( int width, int height, int depth, int numColors=0,                        Endian bitOrder=IgnoreEndian );    bool        create( const QSize&amp;, int depth, int numColors=0,                        Endian bitOrder=IgnoreEndian );    void        reset();    void        fill( uint pixel );    void        invertPixels( bool invertAlpha = TRUE );    QImage      convertDepth( int ) const;#ifndef QT_NO_IMAGE_TRUECOLOR    QImage      convertDepthWithPalette( int, QRgb* p, int pc, int cf=0 ) const;#endif    QImage      convertDepth( int, int conversion_flags ) const;    QImage      convertBitOrder( Endian ) const;#ifndef QT_NO_IMAGE_SMOOTHSCALE    QImage      smoothScale(int width, int height) const;#endif    QImage      createAlphaMask( int conversion_flags=0 ) const;    QImage      createHeuristicMask( bool clipTight=TRUE ) const;    QImage      mirror() const;    QImage      mirror(bool horizontally, bool vertically) const;    QImage      swapRGB() const;    static Endian systemBitOrder();    static Endian systemByteOrder();    static const char* imageFormat( const QString &amp;fileName );    static QStrList inputFormats();    static QStrList outputFormats();#ifndef QT_NO_STRINGLIST    static QStringList inputFormatList();    static QStringList outputFormatList();#endif    bool        load( const QString &amp;fileName, const char* format=0 );    bool        loadFromData( const uchar *buf, uint len,                              const char *format=0 );    bool        loadFromData( QByteArray data, const char* format=0 );    bool        save( const QString &amp;fileName, const char* format ) const; // ### remove 3.0    bool        save( const QString &amp;fileName, const char* format,                      int quality ) const; // ### change to quality=-1 in 3.0    bool        valid( int x, int y ) const;    int         pixelIndex( int x, int y ) const;    QRgb        pixel( int x, int y ) const;    void        setPixel( int x, int y, uint index_or_rgb );    // Auxiliary data    int dotsPerMeterX() const;    int dotsPerMeterY() const;    void setDotsPerMeterX(int);    void setDotsPerMeterY(int);    QPoint offset() const;    void setOffset(const QPoint&amp;);#ifndef QT_NO_IMAGE_TEXT    QValueList&lt;QImageTextKeyLang&gt; textList() const;    QStringList textLanguages() const;    QStringList textKeys() const;    QString text(const char* key, const char* lang=0) const;    QString text(const QImageTextKeyLang&amp;) const;    void setText(const char* key, const char* lang, const QString&amp;);#endifprivate:    void        init();    void        reinit();    void        freeBits();    static void warningIndexRange( const char *, int );    struct QImageData : public QShared {        // internal image data        int     w;                              // image width        int     h;                              // image height        int     d;                              // image depth        int     ncols;                          // number of colors        int     nbytes;                         // number of bytes data        int     bitordr;                        // bit order (1 bit depth)        QRgb   *ctbl;                           // color table        uchar **bits;                           // image data        bool    alpha;                          // alpha buffer        int     dpmx;                           // dots per meter X (or 0)        int     dpmy;                           // dots per meter Y (or 0)        QPoint  offset;                         // offset in pixels#ifndef QT_NO_IMAGE_TEXT        QImageDataMisc* misc;                   // less common stuff#endif        bool    bits_mine;                      // this allocated bits        bool    ctbl_mine;                      // this allocated ctbl    } *data;#ifndef QT_NO_IMAGE_TEXT    QImageDataMisc&amp; misc() const;#endif    friend Q_EXPORT void bitBlt( QImage* dst, int dx, int dy,                                 const QImage* src, int sx, int sy,                                 int sw, int sh, int conversion_flags );};// QImage stream functions#ifndef QT_NO_DATASTREAMQ_EXPORT QDataStream &amp;operator&lt;&lt;( QDataStream &amp;, const QImage &amp; );Q_EXPORT QDataStream &amp;operator&gt;&gt;( QDataStream &amp;, QImage &amp; );#endifclass <a href="qiodevice.html">QIODevice</a>;typedef void (*image_io_handler)( QImageIO * ); // image IO handlerstruct QImageIOData; //### use instead of params in 3.0class Q_EXPORT <a href="qimageio.html">QImageIO</a>{public:    QImageIO();    QImageIO( QIODevice  *ioDevice, const char *format );    QImageIO( const QString &amp;fileName, const char* format );   ~QImageIO();    const QImage &amp;image()       const   { return im; }    int         status()        const   { return iostat; }    const char *format()        const   { return frmt; }    QIODevice  *ioDevice()      const   { return iodev; }    QString     fileName()      const   { return fname; }    const char *parameters()    const   { return params; }    QString     description()   const   { return descr; }    void        setImage( const QImage &amp; );    void        setStatus( int );    void        setFormat( const char * );    void        setIODevice( QIODevice * );    void        setFileName( const QString &amp;);    void        setParameters( const char * );    void        setDescription( const QString &amp;);    bool        read();    bool        write();    static const char* imageFormat( const QString &amp;fileName );    static const char *imageFormat( QIODevice * );    static QStrList inputFormats();    static QStrList outputFormats();    static void defineIOHandler( const char *format,                                 const char *header,                                 const char *flags,                                 image_io_handler read_image,                                 image_io_handler write_image );private:    QImage      im;                             // image    int         iostat;                         // IO status    QCString    frmt;                           // image format    QIODevice  *iodev;                          // IO device    QString     fname;                          // file name    char       *params;                         // image parameters //### change to QImageIOData *d in 3.0    QString     descr;                          // image descriptionprivate:        // Disabled copy constructor and operator=#if defined(Q_DISABLE_COPY)    QImageIO( const QImageIO &amp; );    QImageIO &amp;operator=( const QImageIO &amp; );#endif};Q_EXPORT void bitBlt( QImage* dst, int dx, int dy, const QImage* src,                      int sx=0, int sy=0, int sw=-1, int sh=-1,                      int conversion_flags=0 );/*****************************************************************************  QImage member functions *****************************************************************************/inline bool QImage::hasAlphaBuffer() const{    return data-&gt;alpha;}inline uchar *QImage::bits() const{    return data-&gt;bits ? data-&gt;bits[0] : 0;}inline uchar **QImage::jumpTable() const{    return data-&gt;bits;}inline QRgb *QImage::colorTable() const{    return data-&gt;ctbl;}inline int QImage::numBytes() const{    return data-&gt;nbytes;}inline int QImage::bytesPerLine() const{    return data-&gt;h ? data-&gt;nbytes/data-&gt;h : 0;}// REMOVE in Qt 3.0inline QImage QImage::copy(QRect&amp; r) const{    return copy(r.x(), r.y(), r.width(), r.height());}inline QImage QImage::copy(const QRect&amp; r) const{    return copy(r.x(), r.y(), r.width(), r.height());}inline QRgb QImage::color( int i ) const{#if defined(CHECK_RANGE)    if ( i &gt;= data-&gt;ncols )        warningIndexRange( "color", i );#endif    return data-&gt;ctbl ? data-&gt;ctbl[i] : (QRgb)-1;}inline void QImage::setColor( int i, QRgb c ){#if defined(CHECK_RANGE)    if ( i &gt;= data-&gt;ncols )        warningIndexRange( "setColor", i );#endif    if ( data-&gt;ctbl )        data-&gt;ctbl[i] = c;}inline uchar *QImage::scanLine( int i ) const{#if defined(CHECK_RANGE)    if ( i &gt;= data-&gt;h )        warningIndexRange( "scanLine", i );#endif    return data-&gt;bits ? data-&gt;bits[i] : 0;}inline int QImage::dotsPerMeterX() const{    return data-&gt;dpmx;}inline int QImage::dotsPerMeterY() const{    return data-&gt;dpmy;}inline QPoint QImage::offset() const{    return data-&gt;offset;}#endif // QIMAGE_H</pre><p><address><hr><div align="center"><table width="100%" cellspacing="0" border="0"><tr><td>Copyright 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -