1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
#pragma once
#include "Options.h"
#include "Image.h"
namespace graphics {
/**
* JPEG options.
*/
class JPEGOptions : public FormatOptions {
STORM_CLASS;
public:
// Create, default options.
STORM_CTOR JPEGOptions();
// Create, specify image.
STORM_CTOR JPEGOptions(Nat quality);
// Quality of the image (0-100).
// Note: This value is *not* updated when loading an image. It is not stored in the file itself.
Nat quality;
// Load an image, set options.
virtual Image *STORM_FN load(IStream *from);
using FormatOptions::load;
// Save an image according to options.
virtual void STORM_FN save(Image *image, OStream *to);
using FormatOptions::save;
// Output.
virtual void STORM_FN toS(StrBuf *to) const;
};
// Create an ImageFormat. For internal use.
ImageFormat *jpegFormat(Engine &e);
}
|