Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QPictureIO Class Reference
[QtGui module]

The QPictureIO class contains parameters for loading and saving pictures. More...

 #include <QPictureIO>

This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.


Public Functions

QPictureIO ()
QPictureIO ( QIODevice * ioDevice, const char * format )
QPictureIO ( const QString & fileName, const char * format )
~QPictureIO ()
QString description () const
QString fileName () const
const char * format () const
float gamma () const
QIODevice * ioDevice () const
const char * parameters () const
const QPicture & picture () const
int quality () const
bool read ()
void setDescription ( const QString & description )
void setFileName ( const QString & fileName )
void setFormat ( const char * format )
void setGamma ( float gamma )
void setIODevice ( QIODevice * ioDevice )
void setParameters ( const char * parameters )
void setPicture ( const QPicture & picture )
void setQuality ( int q )
void setStatus ( int status )
int status () const
bool write ()

Static Public Members

void defineIOHandler ( const char * format, const char * header, const char * flags, picture_io_handler readPicture, picture_io_handler writePicture )
QList<QByteArray> inputFormats ()
QList<QByteArray> outputFormats ()
QByteArray pictureFormat ( const QString & fileName )
QByteArray pictureFormat ( QIODevice * d )

Detailed Description

The QPictureIO class contains parameters for loading and saving pictures.

QPictureIO contains a QIODevice object that is used for picture data I/O. The programmer can install new picture file formats in addition to those that Qt provides.

You don't normally need to use this class; QPicture::load(), QPicture::save().

See also QPicture, QPixmap, and QFile.


Member Function Documentation

QPictureIO::QPictureIO ()

Constructs a QPictureIO object with all parameters set to zero.

QPictureIO::QPictureIO ( QIODevice * ioDevice, const char * format )

Constructs a QPictureIO object with the I/O device ioDevice and a format tag.

QPictureIO::QPictureIO ( const QString & fileName, const char * format )

Constructs a QPictureIO object with the file name fileName and a format tag.

QPictureIO::~QPictureIO ()

Destroys the object and all related data.

void QPictureIO::defineIOHandler ( const char * format, const char * header, const char * flags, picture_io_handler readPicture, picture_io_handler writePicture )   [static]

Defines a picture I/O handler for the picture format called format, which is recognized using the regular expression defined in header, read using readPicture and written using writePicture.

flags is a string of single-character flags for this format. The only flag defined currently is T (upper case), so the only legal value for flags are "T" and the empty string. The "T" flag means that the picture file is a text file, and Qt should treat all newline conventions as equivalent. (XPM files and some PPM files are text files for example.)

format is used to select a handler to write a QPicture; header is used to select a handler to read an picture file.

If readPicture is a null pointer, the QPictureIO will not be able to read pictures in format. If writePicture is a null pointer, the QPictureIO will not be able to write pictures in format. If both are null, the QPictureIO object is valid but useless.

Example:

 void readSVG(QPictureIO *picture)
 {
     // read the picture using the picture->ioDevice()
 }

 void writeSVG(QPictureIO *picture)
 {
     // write the picture using the picture->ioDevice()
 }

     // add the SVG picture handler
     // ...

Before the regular expression test, all the 0 bytes in the file header are converted to 1 bytes. This is done because when Qt was ASCII-based, QRegExp could not handle 0 bytes in strings.

The regexp is only applied on the first 14 bytes of the file.

(Note that if one handlerIO supports writing a format and another supports reading it, Qt supports both reading and writing. If two handlers support the same operation, Qt chooses one arbitrarily.)

QString QPictureIO::description () const

Returns the picture description string.

See also setDescription().

QString QPictureIO::fileName () const

Returns the file name currently set.

See also setFileName().

const char * QPictureIO::format () const

Returns the picture format string or 0 if no format has been explicitly set.

See also setFormat().

float QPictureIO::gamma () const

Returns the gamma value at which the picture will be viewed.

See also setGamma().

QList<QByteArray> QPictureIO::inputFormats ()   [static]

Returns a sorted list of picture formats that are supported for picture input.

QIODevice * QPictureIO::ioDevice () const

Returns the IO device currently set.

See also setIODevice().

QList<QByteArray> QPictureIO::outputFormats ()   [static]

Returns a sorted list of picture formats that are supported for picture output.

const char * QPictureIO::parameters () const

Returns the picture's parameters string.

See also setParameters().

const QPicture & QPictureIO::picture () const

Returns the picture currently set.

See also setPicture().

QByteArray QPictureIO::pictureFormat ( const QString & fileName )   [static]

Returns a string that specifies the picture format of the file fileName, or null if the file cannot be read or if the format is not recognized.

QByteArray QPictureIO::pictureFormat ( QIODevice * d )   [static]

This is an overloaded function.

Returns a string that specifies the picture format of the picture read from IO device d, or 0 if the device cannot be read or if the format is not recognized.

Make sure that d is at the right position in the device (for example, at the beginning of the file).

See also QIODevice::at().

int QPictureIO::quality () const

Returns the quality of the written picture, related to the compression ratio.

See also setQuality() and QPicture::save().

bool QPictureIO::read ()

Reads an picture into memory and returns true if the picture was successfully read; otherwise returns false.

Before reading an picture you must set an IO device or a file name. If both an IO device and a file name have been set, the IO device will be used.

Setting the picture file format string is optional.

Note that this function does not set the format used to read the picture. If you need that information, use the pictureFormat() static functions.

Example:

         QPictureIO iio;
         QPixmap  pixmap;
         iio.setFileName("vegeburger.pic");
         if (iio.read()) {        // OK
             QPicture picture = iio.picture();
             QPainter painter(&pixmap);
             painter.drawPicture(0, 0, picture);
         }

See also setIODevice(), setFileName(), setFormat(), write(), and QPixmap::load().

void QPictureIO::setDescription ( const QString & description )

Sets the picture description string for picture handlers that support picture descriptions to description.

Currently, no picture format supported by Qt uses the description string.

See also description().

void QPictureIO::setFileName ( const QString & fileName )

Sets the name of the file to read or write an picture from to fileName.

See also fileName() and setIODevice().

void QPictureIO::setFormat ( const char * format )

Sets the picture format to format for the picture to be read or written.

It is necessary to specify a format before writing an picture, but it is not necessary to specify a format before reading an picture.

If no format has been set, Qt guesses the picture format before reading it. If a format is set the picture will only be read if it has that format.

See also read(), write(), and format().

void QPictureIO::setGamma ( float gamma )

Sets the gamma value at which the picture will be viewed to gamma. If the picture format stores a gamma value for which the picture is intended to be used, then this setting will be used to modify the picture. Setting to 0.0 will disable gamma correction (i.e. any specification in the file will be ignored).

The default value is 0.0.

See also gamma().

void QPictureIO::setIODevice ( QIODevice * ioDevice )

Sets the IO device to be used for reading or writing an picture.

Setting the IO device allows pictures to be read/written to any block-oriented QIODevice.

If ioDevice is not null, this IO device will override file name settings.

See also setFileName().

void QPictureIO::setParameters ( const char * parameters )

Sets the picture's parameter string to parameters. This is for picture handlers that require special parameters.

Although the current picture formats supported by Qt ignore the parameters string, it may be used in future extensions or by contributions (for example, JPEG).

See also parameters().

void QPictureIO::setPicture ( const QPicture & picture )

Sets the picture to picture.

See also picture().

void QPictureIO::setQuality ( int q )

Sets the quality of the written picture to q, related to the compression ratio.

q must be in the range -1..100. Specify 0 to obtain small compressed files, 100 for large uncompressed files. (-1 signifies the default compression.)

See also quality() and QPicture::save().

void QPictureIO::setStatus ( int status )

Sets the picture IO status to status. A non-zero value indicates an error, whereas 0 means that the IO operation was successful.

See also status().

int QPictureIO::status () const

Returns the picture's IO status. A non-zero value indicates an error, whereas 0 means that the IO operation was successful.

See also setStatus().

bool QPictureIO::write ()

Writes an picture to an IO device and returns true if the picture was successfully written; otherwise returns false.

Before writing an picture you must set an IO device or a file name. If both an IO device and a file name have been set, the IO device will be used.

The picture will be written using the specified picture format.

Example:

         QPictureIO iio;
         QPicture   picture;
         QPainter painter(&picture);
         painter.drawPixmap(0, 0, pixmap);
         iio.setPicture(picture);
         iio.setFileName("vegeburger.pic");
         iio.setFormat("PIC");
         if (iio.write())
             return true; // returned true if written successfully

See also setIODevice(), setFileName(), setFormat(), read(), and QPixmap::save().

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 88
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 29
  5. BlackBerry 10 : premières images du prochain OS de RIM qui devrait intégrer des widgets et des tuiles inspirées de Windows Phone 0
  6. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  7. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
Page suivante

Le Qt Labs au hasard

Logo

Sémantique d'ordonnancement mémoire et opérations atomiques dans Qt

Les Qt Labs sont les laboratoires des développeurs de Qt, où ils peuvent partager des impressions sur le framework, son utilisation, ce que pourrait être son futur. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.6
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web