Rapls PDF Image Creator automatically generates thumbnail images when you upload PDF files to your WordPress Media Library. The plugin uses ImageMagick (Imagick PHP extension) to convert a page of a PDF into an image — the first, unless you choose another for the whole site. 👉 Setup guide & trouble
PricingFree downloadThe WordPress.org download is free. Pro versions, add-ons or external services may cost extra.
CompatibilityRequires WordPress 5.0 and PHP 7.4.
SourceWordPress plugins · Oct 30, 2026
01 / Source details
Aboutthistool.
Rapls PDF Image Creator automatically generates thumbnail images when you upload PDF files to your WordPress Media Library. The plugin uses ImageMagick (Imagick PHP extension) to convert a page of a PDF into an image — the first, unless you choose another for the whole site.
👉 Setup guide & troubleshooting: How to fix CMYK black thumbnails and PDF/X issues
Why this one
On a server with an older Ghostscript, a PDF page can come back completely white — and Ghostscript does not report it as an error. Anything that hands the page over and stores whatever comes back saves that white image, including WordPress’s own PDF preview. It looks like a thumbnail. It looks like the job worked.
Measured on a live shared host running Ghostscript 9.27, in a single upload: the built-in preview came back with a standard deviation of 0, one flat colour across every pixel. This plugin’s thumbnail of the same page, in the same request, came back at 0.31.
It looks at what came back. A page that renders as flat white is refused, not stored. WordPress shows its PDF icon and the Status tab says why, which is more use than a white square
It works around the cause. Ghostscript 9.27 and earlier fail on an image inside a transparency group — the kind of file PowerPoint and Illustrator produce. Retried with transparency switched off, the same page went from 11,018 bytes of white to 624,109 bytes of picture. Only ever as a retry: a page that rendered the first time is never touched
Every check is a measurement. Whether this server can read a PDF, render CMYK, or select a page other than the first is answered by doing it, not by reading a version number. On ImageMagick 6 the Status tab names the Ghostscript device your ImageMagick uses for CMYK PDFs
It tells you what to ask your host. “No PDF support”, “the page is too large”, “the uploads folder is not writable” and “the file is missing” are four problems with four different answers, and they no longer look the same
Real colour management, without the weight. CMYK is converted through ICC profiles rather than the arithmetic shortcut that turns greens fluorescent. The bundled sRGB profile is 3 KB, not the 64 KB kind that ends up embedded in every registered size
Nothing starts a process. No exec(), no shell. It works on locked-down shared hosting
A thumbnail made again (“Regenerate Thumbnail”, or Bulk Generate with “Include PDFs that already have thumbnails (regenerate)”) gets a new name with a suffix, such as my-document-pdf-thumbnail-6512a3f0.jpg , so browsers do not keep showing the old image. The old image is deleted, unless a post’s content or excerpt or a widget shows it — by its address, or by its ID in an image or gallery block or a [gallery] shortcode — or a post uses it as its featured image; then it is kept as an ordinary image, and the screen that regenerated it says so, since that post still shows the old picture. A post in the trash counts, as it can be restored; revisions and drafts saved automatically do not. One a translated copy of the PDF shares is kept as that copy’s thumbnail. Block, Text, Custom HTML, Image and Gallery widgets are checked too; other settings that name an image are not. The extension follows the output format you choose.
[rapls_pdf_clickable_thumbnail id="123"] – Thumbnail linked to PDF
[rapls_pdf_download_link id="123"] – Download link with thumbnail
The thumbnail, clickable thumbnail and download link shortcodes take a class attribute, which can hold several classes separated by spaces: [rapls_pdf_thumbnail id="123" class="alignleft shadow"] .
The shortcodes take a PDF’s ID. Up to 1.4.20 they also took any post’s ID and showed its featured image; a site with pages written that way can have it back with add_filter( 'rapls_pdf_image_creator_shortcode_any_post', '__return_true' ); . A post is then shown only to a reader who may see it.
Template Functions
rapls_pic_get_thumbnail_url( $pdf_id, $size ) – Get thumbnail URL
rapls_pic_get_thumbnail_id( $pdf_id ) – Get thumbnail attachment ID
rapls_pic_get_thumbnail_image( $pdf_id, $size, $attr ) – Get thumbnail HTML
rapls_pic_has_thumbnail( $pdf_id ) – Check if PDF has thumbnail
ImageMagick with Imagick PHP extension and PDF support
Most shared hosting providers have ImageMagick available. Check the Status tab in plugin settings to verify your server meets the requirements.
Will it work on my server?
PDF thumbnails depend on ImageMagick being able to read PDFs, and not every host allows that. Rapls PDF Image Creator checks by actually rendering a small test PDF, not by reading a configuration value, and tells you on the Status tab whether PDF rendering works on your server and, if not, what to ask your host for. Site Health flags it too when it doesn’t.
Optional add-on
Everything described above is free and stays free; nothing in this plugin is limited to make room for anything else. A separate, paid add-on, Rapls PDF Image Creator Pro, adds: cropping (white margins trimmed, the top of the page kept, or a fixed shape), a page and a crop for each PDF on its own edit screen, a background queue, replacing a PDF in place with the previous file kept, and rendering with Ghostscript directly where ImageMagick cannot read PDFs. That last one needs a host that lets PHP start programs (exec or proc_open) and has Ghostscript installed; this plugin cannot do it itself, because plugins in the WordPress.org directory may not start other programs. The plugin links to the add-on in five places only: its row on the Plugins screen, a card at the bottom of its Settings tab, the Status tab (as one of three options when this server cannot render PDFs, or a small box when it can), and under the page-number field after you change it, until you dismiss it. The filter rapls_pdf_image_creator_show_upsell , returning false, removes all of them.
rapls_pdf_image_creator_thumbnail_page – PDF page to use (default: 0)
rapls_pdf_image_creator_thumbnail_max_width – Maximum width
rapls_pdf_image_creator_thumbnail_max_height – Maximum height
rapls_pdf_image_creator_thumbnail_resolution – Rendering resolution in DPI (default: 150)
rapls_pdf_image_creator_max_render_pixels – Most pixels the chosen page is drawn at before resizing (default: 40000000 — a little above an A4 page at 600 DPI). A larger page is drawn at a lower resolution instead. The size is read from the PDF’s own page boxes, so this costs nothing for an ordinary PDF; a quick extra Ghostscript run measures the page only when the boxes cannot say, or say a page in the document may be over the limit
rapls_pdf_image_creator_thumbnail_quality – Image quality, 1-100 (the setting itself starts at 10)
rapls_pdf_image_creator_thumbnail_format – Output format
rapls_pdf_image_creator_thumbnail_bgcolor – Background color
rapls_pdf_image_creator_thumbnail_image_attributes – Image tag attributes
rapls_pdf_image_creator_custom_insert_html – Custom insert HTML
rapls_pdf_image_creator_hide_thumbnails_in_library – Hide in Media Library
rapls_pdf_image_creator_policy_paths – ImageMagick policy.xml paths to search when diagnosing blocked PDF support
rapls_pdf_image_creator_delegate_paths – ImageMagick delegates.xml paths to search when diagnosing which Ghostscript device CMYK PDFs are drawn with
rapls_pdf_image_creator_imagick_result – The conversion’s result, before it is returned; anything but a result object is ignored
rapls_pdf_image_creator_refuse_blank_page – Return false to keep a page that comes out all white instead of refusing it (default: true). Its second argument is the conversion’s options
rapls_pdf_image_creator_ghostscript_options – Ghostscript switches for the blank-page retry (default: -dNOTRANSPARENCY ); switches that loosen its sandbox, point at files or change what is drawn are left out
rapls_pdf_image_creator_before_resize – The page as drawn, before
See it in action
Screenshots & previews.
Settings page - Configure image size, quality, and format optionsBulk Generate tab - Generate thumbnails for existing PDFsStatus tab - View ImageMagick availability and server capabilitiesMedia Library - PDFs display with generated thumbnail icons
02 / Source details
Gettingstarted.
01Upload the rapls-pdf-image-creator folder to /wp-content/plugins/
02Activate the plugin through the ‘Plugins’ menu in WordPress
03Go to Settings > Rapls PDF Image Creator
04Check the Status tab to verify ImageMagick is available
05Upload a PDF to test thumbnail generation
03 / Source details
Frequently asked questions.
Where can I find detailed documentation?
A full guide with setup instructions, the fix for the infamous “black thumbnail” problem (CMYK / PDF/X), and real-world usage tips:
Rapls PDF Image Creator — Setup & Troubleshooting Guide
Source code on GitHub
Developer’s blog — Rapls Works
What are the server requirements?
You need ImageMagick with the Imagick PHP extension and PDF support. Most shared hosting providers have this available. Contact your hosting provider if you need to enable it.
How do I check if my server supports PDF conversion?
Go to Settings > Rapls PDF Image Creator > Status tab. The plugin will show whether ImageMagick is available and properly configured.
For detailed troubleshooting including common server setup issues, see the setup guide .
My thumbnail is a completely blank white image. What is wrong?
Check Settings > Rapls PDF Image Creator > Status. If the CMYK PDF Rendering row says “Broken on this server (tested)”, that is the cause. If it says the test could not be run, it may be.
ImageMagick 6 can render a PDF it judges to be CMYK through Ghostscript’s bmpsep8 device, which writes a separation BMP that ImageMagick’s own BMP reader cannot decode. Depending on the exact ImageMagick and Ghostscript versions, the read either fails outright or returns an empty raster — which becomes a blank white thumbnail. ImageMagick 7 uses a different device and is unaffected.
Not every ImageMagick 6 build is affected: on Xserver’s 6.9.13-25 a CMYK page renders correctly. Since 1.3.2 the Status tab renders a test page and reports what this server actually does, rather than warning on the version number.
The plugin cannot work around this, because ImageMagick picks the device from the PDF’s own content and no Imagick API call overrides it. Ask your hosting provider to upgrade to ImageMagick 7, or to change the ps:cmyk delegate in delegates.xml from bmpsep8 to pamcmyk32 . The second has no effect where ImageMagick calls Ghostscript as a library ( gslib in the output of convert -list configure ); then only the upgrade helps.
RGB PDFs are not affected, which is why only some of your PDFs fail.
Why do my thumbnails look more vivid than the original PDF?
If the PDF uses CMYK colours and no ICC profile is available on your server, the plugin falls back to a simple arithmetic conversion, which exaggerates greens and blues. Check Settings > Rapls PDF Image Creator > Status to see whether ICC colour management is active. Installing a CMYK profile on the server, or pointing the rapls_pdf_image_creator_icc_paths filter at one, restores accurate colours.
I updated and my thumbnails still have the old colours. Why?
Thumbnails are not regenerated automatically, because regenerating every PDF on a large site during an update is not something a plugin should decide to do. Go to Settings > Rapls PDF Image Creator > Bulk Generate and regenerate them.
If you would rather keep the previous colours, pin the old behaviour:
Can I generate thumbnails for PDFs uploaded before installing this plugin?
Yes. Go to Settings > Rapls PDF Image Creator > Bulk Generate tab to scan and generate thumbnails for all existing PDFs.
For one PDF, use the “Generate Thumbnail” or “Regenerate Thumbnail” link under it in the Media Library. The link is in the list view only; in the grid view, switch to the list view first.
I raised Max Width and Max Height but the thumbnail is the same size. Why?
Those two settings only scale the rendered page down . They never enlarge it. The size the page is rendered at comes from Rendering Resolution instead, which was fixed at 150 DPI before version 1.2.0 — an A4 page at 150 DPI is about 1240×1754 pixels, and no maximum above that could produce anything bigger.
Raise Rendering Resolution (Settings > Rapls PDF Image Creator > Image Settings) and the rendered page grows with it; the maximum dimensions then cap the result as before. Bear in mind that memory use during generation grows with the square of the resolution, so raise it in steps if your server is small.
I uploaded a PDF and no thumbnail appeared. How do I find out why?
Go to Tools > Site Health. The “PDF thumbnail generation” test says whether this server can render PDFs, and if not, what to ask your hosting provider for. The same report is on the Status tab of the plugin’s settings page, and Site Health > Info has a Rapls PDF Image Creator section you can copy into a support request.
There are two different server problems, and they need different requests:
The Imagick PHP extension is not installed. Ask your host to install and enable it. It is the PHP binding for ImageMagick.
ImageMagick is installed but its security policy forbids reading PDFs. Many hosts ship a policy.xml that denies the PDF coder, a precaution left over from a 2018 Ghostscript vulnerability. Ask your host to give the PDF coder read rights. The plugin shows the path of the file responsible.
The plugin tells these apart for you, so you do not have to guess which request to make.
What image formats are supported?
JPEG, PNG, and WebP. Choose one under Image Settings on the Settings tab. WebP needs WordPress 5.8 or later and an ImageMagick that can write it; the setting says so when this server cannot.
Will thumbnails be deleted when I uninstall the plugin?
By default, yes. To keep generated images as regular attachments, enable “Keep Images on Uninstall” in Display Settings before uninstalling.
Even with that setting off, uninstalling keeps a generated image that a post uses as its featured image, or that a post’s content or excerpt or a widget shows (its address, or its ID or the PDF’s in an image or gallery block, a [gallery] shortcode or this plugin’s own shortcodes), and makes it an ordinary image. A post in the trash counts, as it can be restored; revisions and drafts saved automatically do not. It also keeps one that a translated copy of the PDF shares. Featured images, post content and excerpts, and block, Text, Custom HTML, Image and Gallery widgets are checked — in them, also any number where an ID could stand, as page builders keep an image by ID: an image used in a theme or page-builder setting, or anywhere else, is not found, so turn on “Keep Images on Uninstall” if you use them there. A post whose featured image was a PDF is given that PDF’s image instead, with the setting on or off, so it looks as it did. If any of this cannot be checked, no image is deleted. On a very large site, reading every post can take longer than the server allows; if uninstalling stops there, no image has been deleted.
What happens to the thumbnail when I delete a PDF?
With “Hide Generated Images” on, the PDF’s thumbnail is deleted with it, unless a post or a widget shows it, a post uses it as its featured image, or a translated copy of the PDF shares it. One a post or widget shows is kept as an ordinary image, attached where the PDF was; one a translated copy shares stays that copy’s thumbnail. With the setting off, every thumbnail is kept as an ordinary image, except one a translated copy shares, which stays that copy’s thumbnail.
Why can’t I pick a PDF in my page builder’s or field plugin’s image picker?
Since 1.4.46, PDFs with a thumbnail are offered only in WordPress’s own image pickers: the image, gallery and featured image blocks, and the classic editor’s featured image. An image picker of another plugin may take only images, and a PDF handed to it broke there. If yours takes them, as every picker did up to 1.4.20, turn it back on: add_filter( 'rapls_pdf_image_creator_pdfs_in_every_image_picker', '__return_true' ); .
Can I use a different page for the thumbnail?
Yes. Use the rapls_pdf_image_creator_thumbnail_page filter:
add_filter( 'rapls_pdf_image_creator_thumbnail_page', function( $page, $pdf_id ) { return 1; // Use second page (0-indexed) }, 10, 2 );
Without code, you can set the page for the whole site in Settings > Rapls PDF Image Creator > Page Number (0 is the first page).
How do I customize the insert output?
In Settings > Rapls PDF Image Creator, under Insert Settings, choose Thumbnail Image, Title (text link only) or Custom HTML. A custom template can use %PDF_URL% , %THUMBNAIL_URL% , %TITLE% , %ID% and %ATTACHMENT_URL% . These settings apply to “Insert into post” in the classic editor’s Add Media window; the block editor does not use them.
Does it need Ghostscript?
The plugin itself never runs Ghostscript. ImageMagick does, though: it passes PDFs to Ghostscript to read them, so ImageMagick’s PDF support only works if Ghostscript is installed on the server. You don’t have to check this by hand. The Status tab (Settings > Rapls PDF Image Creator > Status) tells you whether PDFs can be rendered on your server.
Is this plugin affected by the Ghostscript vulnerability CVE-2026-39919?
It is not a fault in this plugin, but PDFs reach Ghostscript through it. CVE-2026-39919 is a buffer overflow in Ghostscript before 10.08.0, set off by a crafted PDF. This plugin never runs Ghostscript itself; ImageMagick does, to draw a PDF, and WordPress’s own PDF preview takes the same path, so turning the plugin off does not take a site out of it. The fix is on the server: ask your hosting provider whether its Ghostscript is 10.08.0 or later, or a distribution package that includes the fix. The version number alone cannot tell, because distributions add the fix to older versions, so the plugin does not check it; where this server renders PDFs, the Status tab and Site Health say what to ask. Until the host confirms it, denying the PDF coder in ImageMagick’s policy.xml keeps PDFs away from Ghostscript, and stops both this plugin’s thumbnails and WordPress’s PDF previews. As of October 17, 2026, no attack using it had been reported, and whether one succeeds depends on the server.
My thumbnails are black.
Two causes of black thumbnails have been fixed: PDF/X-1:2001 files (1.0.9), and transparent areas (1.1.0), which are now flattened onto the background colour you cho
Website LLMs.txt and LLMs-Full.txt Generator is an LLMs.txt generator and llms-full.txt generator for WordPress. It helps site owners generate, manage, preview, validate, and serve AI discovery files from published public content. Use it to create structured /llms.txt and optional /llms-full.txt end
EngageDock AI is a customizable floating contact widget for WordPress websites that want more leads and faster visitor communication. It helps small businesses turn website traffic into calls, texts, emails, and callback requests from one clean contact panel. Key Features: Click-to-Call – One tap ca
Altify AI is an auto ALT text and AI ALT text plugin for WordPress images. It helps generate descriptive image ALT text for accessibility and image SEO. Use bulk image ALT text tools for your Media Library, generate featured image ALT text automatically, and scale WooCommerce image ALT updates with
The Accepted Payment Methods plugin is a straightforward, lightweight solution that enhances your website by displaying visually appealing icons of the payment methods you accept. This plugin is ideal for a variety of websites, including e-commerce platforms, service-oriented websites, and informati