| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- <?xml version="1.0" encoding="utf-8"?>
- <?xml-stylesheet type="text/xsl" href="../Xsl/doc2html.xsl"?>
- <doc>
- <title>File Format Extensions</title>
- <chapter>
- <title>File Format Extensions</title>
- <par>
- These extensions allow Imaging to load and save images from/to
- files in various formats.
- File formats included in Imaging core (that is in
- <keyword>Source</keyword> directory) must satisfy these requirements:
- both loading and saving support, native crossplatform
- Object Pascal implementation, support as many data formats as possible,
- be stream safe (you have multiple images in one stream and you load them
- one by one without exactly knowing where they start - after loading one
- stream position must be precisely at the beginning of another - some
- file formats (e.g. Daggerfall images) need to know exact file size during loading so
- they are inherently unsafe).
- File format loaders/savers that do not meet these requirements are
- located in Extras package (<keyword>Extras\Extensions</keyword> directory).
- </par>
-
- <par>
- Some complex file formats make compiled binaries significantly larger.
- Most notably <b>JPEG</b> (around 100 KiB), <b>JPEG2000</b> (around 150 KiB), and <b>PNG</b>
- (around 50 KiB). Some formats use others internally - <b>MNG</b> and <b>JNG</b> use
- PNG and JPEG. If you know you won't be needing some of those formats
- and you don't want large binaries you can disable them at compile stage.
- This is done by defining/undefining <icode>LINK_*</icode>
- symbols in <icode>ImagingOptions.inc</icode> include file
- located in <keyword>Source</keyword> directory.
- All core file formats have corresponding symbols here and all
- are defined/enabled by default in this include file.
- There is also <icode>LINK_EXTRAS</icode> symbol that controls
- automatic linking with file formats declared in Extras package
- (individual file formats can be turned on/off in <ref>ImagingExtras.pas</ref>
- unit located in <keyword>Extras\Extensions</keyword> directory).
- </par>
-
- <linklist>
- <title>More on supported file formats</title>
- <lslink url="../FileFormats/FileFormats.xml">Supported File Formats</lslink>
- </linklist>
- </chapter>
- </doc>
|