public function geraLeitura(array $parPages)
 {
     $dirFrom = $this->_documentoImagem->getUploadPath();
     $dirTo = $this->_documentoImagem->getCachePath();
     $imageName = $this->_documentoImagem->getImageName();
     $arrPaginasGeradas = array();
     //Opção comum
     $gsOptions = "-quiet -dSAFER -dBATCH -dNOPAUSE -dNumRenderingThreads=2";
     foreach ($parPages as $page) {
         $page = (int) str_replace($imageName . '_', '', $page);
         //Verifica se o parametro é numérico
         if (!is_numeric($page) || $page <= 0) {
             $rowset = $this->_documentoImagem->getRowSet();
             $digital = $rowset[0]['DIGITAL'];
             throw new \Exception("DocumentoImagemPDF::geraLeitura() - Página [{$page}] da Digital {$digital} não é numérica!");
         }
         //Gerar uma página por vez
         $paramPage = "-dFirstPage={$page} -dLastPage={$page}";
         //Nomenclartura do arquivo formato Leitura
         $absoluteFileName = sprintf("{$dirTo}{$imageName}_%04d.png", $page);
         /**
          * Realiza a geração da imagem em formato leitura somente caso ela não exista em disco
          * Como a criação efetiva do arquivo não é um processo imediato por depender de uma chamada ao sistema,
          * pode haver um problema no carregamento do Cache gerado, operação realizada em seguida.
          * @todo Pensar em estratégia para resolver essa assincronia
          */
         if (!file_exists($absoluteFileName)) {
             /* @todo pamametrizar resolução */
             $msg = shell_exec("gs -sDEVICE=png16m -r250 -sPAPERSIZE=a4 {$gsOptions} {$paramPage} -sOutputFile={$absoluteFileName} {$dirFrom}{$imageName}.pdf");
             // Verifica se houve erro na conversão do pdf
             $this->_errorExists($msg);
         }
         $formatoPNG = new Formato\FormatoPNG($absoluteFileName);
         $formatoPNG->rotaciona();
         $arrPaginasGeradas[] = $formatoPNG;
     }
     return $arrPaginasGeradas;
 }
 public function geraLeitura(array $parPages)
 {
     $dirFrom = $this->_documentoImagem->getUploadPath();
     $dirTo = $this->_documentoImagem->getCachePath();
     $arrPaginasGeradas = array();
     foreach ($parPages as $page) {
         $absoluteSourceFileName = "{$dirFrom}{$page}.tif";
         $absoluteDestFileName = "{$dirTo}{$page}.png";
         //Realiza a geração da imagem em formato leitura somente caso ela não exista em disco
         if (!file_exists($absoluteSourceFileName)) {
             throw new \Exception('GeraCachePNGBehavior::geraLeitura() - Arquivo solicitado não existe-' . $absoluteSourceFileName);
         }
         //Se arquivo de cache não existe, gera a partir do source
         if (!file_exists($absoluteDestFileName)) {
             shell_exec("/usr/local/bin/convert -rotate '-90>' -quality 200 -resize 595x842 {$absoluteSourceFileName}[0] {$absoluteDestFileName}");
         }
         $formatoPNG = new Formato\FormatoPNG($absoluteDestFileName);
         $formatoPNG->rotaciona();
         $arrPaginasGeradas[] = $formatoPNG;
     }
     return $arrPaginasGeradas;
 }
 public function geraLeitura(array $parPages)
 {
     $dirFrom = $this->_documentoImagem->getUploadPath();
     $dirTo = $this->_documentoImagem->getCachePath();
     $arrPaginasGeradas = array();
     foreach ($parPages as $page) {
         $absoluteSourceFileName = "{$dirFrom}{$page}.png";
         $absoluteDestFileName = "{$dirTo}{$page}.png";
         //Realiza a geração da imagem em formato leitura somente caso ela não exista em disco
         if (!file_exists($absoluteSourceFileName)) {
             throw new \Exception('GeraCachePNGBehavior::geraLeitura() - Arquivo solicitado não existe-' . $absoluteSourceFileName);
         }
         //Se arquivo de cache não existe, copia do source
         if (!file_exists($absoluteDestFileName)) {
             //Preserva a imagem original, copiando a mesma para a pasta cache, onde poderá ser rotacionada e etc
             shell_exec("cp {$absoluteSourceFileName} {$absoluteDestFileName}");
         }
         $formatoPNG = new Formato\FormatoPNG($absoluteDestFileName);
         $formatoPNG->rotaciona();
         $arrPaginasGeradas[] = $formatoPNG;
     }
     return $arrPaginasGeradas;
 }