MediaWiki fundraising/REL1_35
DjVuImage Class Reference

Support for detecting/validating DjVu image files and getting some basic file metadata (resolution etc) More...

Public Member Functions

 __construct ( $filename)
 
 dump ()
 For debugging; dump the IFF chunk structure.
 
 getImageSize ()
 Return data in the style of getimagesize()
 
 isValid ()
 Check if the given file is indeed a valid DjVu image file.
 
 retrieveMetaData ()
 Return an XML string describing the DjVu image.
 

Private Member Functions

 convertDumpToXML ( $dump)
 Hack to temporarily work around djvutoxml bug.
 
 dumpForm ( $file, $length, $indent)
 
 getInfo ()
 
 getMultiPageInfo ( $file, $formLength)
 
 getPageInfo ( $file)
 
 pageTextCallback ( $matches)
 
 parseFormDjvu ( $line, &$xml)
 
 readChunk ( $file)
 
 skipChunk ( $file, $chunkLength)
 

Private Attributes

string $mFilename
 
const DJVUTXT_MEMORY_LIMIT = 300000
 Memory limit for the DjVu description software.
 

Detailed Description

Support for detecting/validating DjVu image files and getting some basic file metadata (resolution etc)

File format docs are available in source package for DjVuLibre: http://djvulibre.djvuzone.org/

Definition at line 38 of file DjVuImage.php.

Constructor & Destructor Documentation

◆ __construct()

DjVuImage::__construct ( $filename)
Parameters
string$filenameThe DjVu file name.

Definition at line 51 of file DjVuImage.php.

Member Function Documentation

◆ convertDumpToXML()

DjVuImage::convertDumpToXML ( $dump)
private

Hack to temporarily work around djvutoxml bug.

Parameters
string$dump
Returns
string

Definition at line 315 of file DjVuImage.php.

References $line, parseFormDjvu(), and wfDebug().

Referenced by retrieveMetaData().

◆ dump()

DjVuImage::dump ( )

For debugging; dump the IFF chunk structure.

Definition at line 88 of file DjVuImage.php.

References $file, $header, and dumpForm().

◆ dumpForm()

DjVuImage::dumpForm ( $file,
$length,
$indent )
private

Definition at line 99 of file DjVuImage.php.

References $file, and dumpForm().

Referenced by dump(), and dumpForm().

◆ getImageSize()

DjVuImage::getImageSize ( )

Return data in the style of getimagesize()

Returns
array|false Array or false on failure

Definition at line 69 of file DjVuImage.php.

References getInfo().

◆ getInfo()

DjVuImage::getInfo ( )
private

Definition at line 125 of file DjVuImage.php.

References $file, $header, getMultiPageInfo(), getPageInfo(), and wfDebug().

Referenced by getImageSize(), and isValid().

◆ getMultiPageInfo()

DjVuImage::getMultiPageInfo ( $file,
$formLength )
private

Definition at line 181 of file DjVuImage.php.

References $file, getPageInfo(), readChunk(), skipChunk(), and wfDebug().

Referenced by getInfo().

◆ getPageInfo()

DjVuImage::getPageInfo ( $file)
private

Definition at line 210 of file DjVuImage.php.

References $file, readChunk(), and wfDebug().

Referenced by getInfo(), and getMultiPageInfo().

◆ isValid()

DjVuImage::isValid ( )

Check if the given file is indeed a valid DjVu image file.

Returns
bool

Definition at line 59 of file DjVuImage.php.

References getInfo().

Referenced by retrieveMetaData().

◆ pageTextCallback()

DjVuImage::pageTextCallback ( $matches)
private

Definition at line 303 of file DjVuImage.php.

References $matches.

◆ parseFormDjvu()

DjVuImage::parseFormDjvu ( $line,
& $xml )
private

Definition at line 376 of file DjVuImage.php.

References $line.

Referenced by convertDumpToXML().

◆ readChunk()

DjVuImage::readChunk ( $file)
private

Definition at line 161 of file DjVuImage.php.

References $file, and $header.

Referenced by getMultiPageInfo(), and getPageInfo().

◆ retrieveMetaData()

DjVuImage::retrieveMetaData ( )

Return an XML string describing the DjVu image.

Returns
string|bool

Definition at line 252 of file DjVuImage.php.

References $wgDjvuDump, $wgDjvuToXML, $wgDjvuTxt, convertDumpToXML(), isValid(), wfDebug(), and wfShellExec().

◆ skipChunk()

DjVuImage::skipChunk ( $file,
$chunkLength )
private

Definition at line 172 of file DjVuImage.php.

References $file.

Referenced by getMultiPageInfo().

Member Data Documentation

◆ $mFilename

string DjVuImage::$mFilename
private

Definition at line 46 of file DjVuImage.php.

◆ DJVUTXT_MEMORY_LIMIT

const DjVuImage::DJVUTXT_MEMORY_LIMIT = 300000
private

Memory limit for the DjVu description software.

Definition at line 43 of file DjVuImage.php.


The documentation for this class was generated from the following file: