Skip to content
pdfconversionapi

WPD to JPG API

POST /v2/convert/wpd/to/jpg lays out a WordPerfect document and returns one JPEG per page. The sample sends ImageQuality=90 and gets hearing-notice-1.jpg and hearing-notice-2.jpg, each 1,275 × 1,650 pixels at the default 150 DPI.

Endpoint
POST /v2/convert/wpd/to/jpg
Accepts
wpd
Sample timing
0.609 s median of 5 runsHow we measure
Request size
Up to 10 MB on the Free plan or 100 MB on paid plans, all files together

Request and response

Every sample below ran against the API before this page was published. Set PDFCONVERSIONAPI_KEY to your key and run it as is.

curl -sS -X POST \
  https://api.pdfconversionapi.com/v2/convert/wpd/to/jpg \
  -H "Authorization: Bearer $PDFCONVERSIONAPI_KEY" \
  -F File=@hearing-notice.wpd \
  --form-string ImageQuality=90 \
  -o response.json

# FileData is base64. Save the first file in converted/,
# or print the JSON error.
if jq -e '.Files' response.json > /dev/null; then
  mkdir -p converted
  name=$(jq -r '.Files[0].FileName' response.json)
  jq -r '.Files[0].FileData' response.json \
    | base64 --decode > "converted/$name"
else
  cat response.json
fi
200 OK0.609 s median2 files, 327 KB
{
  "ConversionCost": 1,
  "ConversionTime": 0.609,
  "Files": [
    {
      "FileName": "hearing-notice-1.jpg",
      "FileExt": "jpg",
      "FileSize": 189774,
      "FileData": "/9j/4AAQSkZJRgABAgAAAQAB…"
    },
    {
      "FileName": "hearing-notice-2.jpg",
      "FileExt": "jpg",
      "FileSize": 145121,
      "FileData": "/9j/4AAQSkZJRgABAgAAAQAB…"
    }
  ]
}

Response from our test run on 2026-11-03. ConversionTime shows the median of 5 runs. FileData is shortened here; the real response carries the whole file as base64.

The sample, converted

The same file the code sends. Download the input and the output and compare them yourself.

First page of hearing-notice-1.jpg, rendered by the API
Input
hearing-notice.wpd (1.8 KB)
Output
hearing-notice-1.jpg (185 KB)hearing-notice-2.jpg (142 KB)
Source
A two-page WordPerfect 5.1 public hearing notice for a fictional township, which we wrote byte by byte from the file format description (CC0-1.0). How it was made
Made by
2026-11-04, API build 9eeeb0640aba

Parameters

Send these as form fields next to the file. Names are case-insensitive. If you set one of the documented options below that we don't support yet, the request fails with a 400 that names it instead of returning a file made without it.

ParameterWhat it does
ImageQualityinteger, default 85JPEG compression level. Page 1 of the notice weighed 122,240 bytes at 50, 169,690 at the default 85, 189,774 at 90 and 313,968 at 100. 0 returns 400 "ImageQuality must be between 1 and 100".Values: 1 to 100
ImageResolutioninteger, default 150Dots per inch of paper. At 100 a Letter page is 850 × 1,100 pixels and the JPEG header says 100 DPI; when you leave it out the page is drawn at 150 and the header holds no DPI.Values: 36 to 600
ColorSpaceenum, default defaultgray writes a one-channel JPEG: 156,359 bytes for page 1 at quality 90. cmyk returns 400 "ColorSpace cmyk is not supported yet; use rgb, gray or monochrome".Values: default, rgb, gray, monochrome
PageRangestringPages to draw. PageRange=2 returns hearing-notice-2.jpg only; 3 returns 400 because the notice has 2 pages.Values: Page numbers and ranges
ImageWidthintegerWidth in pixels, with the height following the Letter shape: 800 gave 800 × 1,035.Values: 1 to 20,000
ImageHeightintegerHeight in pixels. With ImageWidth too, the page fits inside that box unless ScaleProportions=false.Values: 1 to 20,000
BackgroundColorstringPaper color. The notice has no fill of its own, so #fff4d6 turned the whole sheet cream around the black text.Values: Color name, #RRGGBB or R,G,B
FileNamestringStem of the numbered files; hearing-notice unless you set it.
StoreFileboolean, default falseReturn links to the stored JPEGs, valid for 3 hours, in place of the image data.

What carries over, and what doesn't

Kept

  • The US Letter shape the document prints on: 1,275 × 1,650 pixels at 150 DPI, 850 × 1,100 at 100
  • Every formatting code you can see on paper: the line through the first hearing date, the underlined comment deadline, the raised 'nd' and the small disclaimer at the foot of page 2
  • Neutral black and white: the drawn page holds only shades of gray, so ColorSpace=gray changes nothing you can see
  • One numbered file per page, in document order

Lost or not yet supported

  • Crisp edges on small type: the 7.2 pt disclaimer is drawn at 15 pixels per em at 150 DPI, and JPEG compression softens edges more as quality drops.
  • Text you can select or search. Use the PDF route when the words matter.
  • A DPI value, unless you send ImageResolution: the sample's JFIF header says only that pixels are square.
  • Transparency. JPEG has no alpha channel, so the page is always on an opaque background.

Limits

  • Page setup options such as PageSize and PageOrientation return 400 "... is not supported yet for WPD files"; the paper size comes from the document.
  • ImageResolution outside 36 to 600 returns 400 "ImageResolution must be between 36 and 600".
  • Up to 2,000 pages per request; a page over 100 million pixels returns 413, which ImageWidth=9000 already does for a Letter page.
  • Requests up to 10 MB on the Free plan or 100 MB on paid plans, all files and fields together, and 120 seconds per conversion (then 504).

Where teams use it

Previewing .wpd uploads

A document portal can't display a WordPerfect file in the browser. A JPEG of the first page (PageRange=1) shows users what they uploaded before anyone opens or downloads the original.

Pasting a page into a ticket or an email

When the person on the other end has nothing that opens .wpd, a page image is enough to read a notice or letter. At the default settings a full Letter page of the sample is 169,690 bytes.

Questions

Which ImageQuality suits pages of text?

The default 85 gave page 1 of the sample in 169,690 bytes with clean 12 pt body text. We used 90 for the sample. At 50 the file shrinks by 28% to 122,240 bytes and the body text was still easy to read in our test.

Why does the JPEG carry no DPI?

Pages are drawn at 150 DPI by default, but the number is written into the file only when you send ImageResolution. With ImageResolution=100 the header says 100 DPI and the page is 850 × 1,100 pixels.

Can I get grayscale JPEGs?

Yes, with ColorSpace=gray. The notice is black text on white to begin with, so it looks the same; the file drops from 189,774 to 156,359 bytes for page 1 at quality 90 because one channel is stored instead of three.

What happens to struck-out and superscript text?

Both are drawn as in the document. A line runs through 'January 12, 2027', which wraps from the end of one line to the start of the next, and the 'nd' after '2' sits raised in smaller type.

Convert your first WPD file in a minute.