1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Создание превью Pdf - файлов

Тема в разделе "Web - программирование", создана пользователем evgen, 30 ноя 2010.

Статус темы:
Закрыта.
  1. evgen

    evgen Гость

    Репутация:
    0
    Здравствуйте!

    Создаю превью для pdf - файлов. Нашел в интернете скрипт для конвертации:

    PHP:
    exec('convert "gazeta.pdf[0]" -colorspace RGB -geometry 200 "preview.png"');
    Он работал 3 месяца, потом перестал.
    Задал вопрос в службу технической поддержки хостинга о том установлены ли у них скрипты GhostScript и ImageMagick, на что они мне ответили: "GhostScript и ImageMagick установлены на нашей площадке как модули Perl."

    Подскажите как все таки можно воспользоваться этими модулями для создания превьюшек для pdf-файлов?
     
  2. evgen

    evgen Гость

    Репутация:
    0
    Какой-то странный форум, все молчат, или вопрос до того умный?
     
  3. 1ive

    1ive Well-Known Member

    Репутация:
    0
    Регистрация:
    12 сен 2010
    Сообщения:
    621
    Симпатии:
    0
    установлены на нашей площадке как модули Perl

    два варианта:
    меняй хостера
    переписывай скрипт на perl
     
  4. vital

    vital Больной Компом Детектед

    Репутация:
    0
    Регистрация:
    29 янв 2006
    Сообщения:
    2.432
    Симпатии:
    40
    Для имаджика
    PHP:
    <?php
    $obPdf 
    = new Imagick‘act.pdf[0]‘ ); #Открываем наш PDF и указываем обработчику на первую страницу
    $obPdf->setImageColorspace(255); #устанавливаем цветовую палитру
    $obPdf->setCompression(Imagick::COMPRESSION_JPEG); #Устанавливаем компрессор
    $obPdf->setCompressionQuality(60); #И уровень сжатия
    $obPdf->setImageFormat(‘jpeg’); 
    #При необходимости сделать превью ресайзим изображение
    $obPdf->resizeImage(250250imagick::FILTER_LANCZOS1);
    #Ну и конечно же пишем в jpg-файл.
    $obPdf->writeImage(‘act_preview.jpg’);
    $obPdf->clear();
    $obPdf->destroy();
    ?>
    ^это просто обертка для того же конверта. Лучше юзайте так.
    Если не работает, то узнайте у хостера, у становлен(или возможо ли) установить расширение XPDF. А там..
    PHP:
      1.
    <?php
    $realFileName 
    /uploads/act.pdf’;
    $fileName /path/to/preview/act’;
    exec(‘pdftoppm ‘.$realFileName.‘ -png ‘.$fileName);#вызываем консольную утилиту
    $fileName .= -1.png’;#Добавляем постфикс к имени-пути файла
    LL(‘File’)->createFileFromReal(‘file1′$fileName);
    unlink($fileName);?>
     
  5. evgen

    evgen Гость

    Репутация:
    0
    Да, они говорят, что ImageMagick у них установлен (Версия: ImageMagick-6.6.4.10), даже дали файл с тестом:
    PHP:
    <?php
    $command 
    "/usr/local/bin/convert ./test.jpg -resize 30% 2.jpg";
    exec($command);
    ?>
    Но когда я пытаюсь что сделать таким образом как вы написали:
    мне php пишет в ответ:
    PHP:
    Class 'imagick' not found in /htdocs/www/111/imagick.php on line 2
    как раз на том месте где создается новый объект класса.

    Также вопрос. каким образом можно переписать скрипт на perl. Опыта с perl никакого.

    Заранее благодарю!
     
  6. vital

    vital Больной Компом Детектед

    Репутация:
    0
    Регистрация:
    29 янв 2006
    Сообщения:
    2.432
    Симпатии:
    40
    Такое расширение для пхп не установлено.
    сделайте phpinfo() и посмотрите, есть ли там.
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей