Skip to content

Instantly share code, notes, and snippets.

@soycake
Forked from umidjons/pdf-thumbnail-php.md
Created October 11, 2017 01:18
Show Gist options
  • Save soycake/d69c714a5d4a2dbdedacb97112097ab6 to your computer and use it in GitHub Desktop.
Save soycake/d69c714a5d4a2dbdedacb97112097ab6 to your computer and use it in GitHub Desktop.
Creating PDF thumbnails in PHP

Creating PDF thumbnails in PHP

Install Ghostscript

Download and install right version of ghostscript. In my case my PHP was x86 architecture, so I download Ghostscript 9.14 for Windows (32 bit).

Enable ImageMagick

Check, is imagick extension available and loaded.

This line should be present in your php.ini:

extension=php_imagick.dll

Also, check php_imagick.dll in PHP's ext directory.

PHP function

<?php
	function genPdfThumbnail($source, $target)
	{
		//$source = realpath($source);
		$target = dirname($source).DIRECTORY_SEPARATOR.$target;
		$im     = new Imagick($source."[0]"); // 0-first page, 1-second page
		$im->setImageColorspace(255); // prevent image colors from inverting
		$im->setimageformat("jpeg");
		$im->thumbnailimage(160, 120); // width and height
		$im->writeimage($target);
		$im->clear();
		$im->destroy();
	}

Call that function:

<?php
genPdfThumbnail('/uploads/my.pdf','my.jpg'); // generates /uploads/my.jpg
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment