ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
class.ilCountPDFPagesPreProcessors.php
Go to the documentation of this file.
1 <?php
2 
7 
14 {
15  const PAGE_COUNT = 'page_count';
16 
17 
21  public function process(FileStream $stream, Metadata $metadata)
22  {
24  && PATH_TO_GHOSTSCRIPT != ""
25  ) {
26  $PATH_TO_PDF = $stream->getMetadata('uri');
27  $arg = "-q -dNODISPLAY -c \"($PATH_TO_PDF) (r) file runpdfbegin pdfpagecount = quit\";";
28  $return = ilUtil::execQuoted(PATH_TO_GHOSTSCRIPT, $arg);
29 
30  $metadata->additionalMetaData()->put(self::PAGE_COUNT, (string) $return[0]);
31  }
32 
33  return new ProcessingStatus(ProcessingStatus::OK, 'ilCountPDFPagesPreProcessors');
34  }
35 }
process(FileStream $stream, Metadata $metadata)
This method gets invoked by the file upload service to process the file with the help of the processo...
getMimeType()
Client supplied mime type of the uploaded.
Definition: Metadata.php:118
additionalMetaData()
Provides a string map implementation which allows the processors to store additional values...
Definition: Metadata.php:149
static execQuoted($cmd, $args=null)
exec command and fix spaces on windows
Class ilCountPDFPagesPreProcessors.
Interface FileStream The base interface for all filesystem streams.
Definition: FileStream.php:17