Pythonware Organization
Image and document tools that never leave your machine
Pythonware publishes a working set of utilities for resizing, compressing and converting images and PDFs. Every one of them runs inside your own browser: your files are opened, worked on and saved by your own computer, and never sent to a server.
No upload · no account · no watermark · no advertising
What we publish
Three things, done properly
Image utilities
Hitting an exact file size, resizing in pixels or centimetres, cropping, converting between formats, stripping metadata, and the awkward jobs that upload forms demand.
Document utilities
Merging, splitting, rotating, compressing to a limit, signing, numbering and inspecting PDFs, plus conversion in both directions between pages and images.
Written guides
The background the tools cannot give you: what upload limits actually mean, how JPEG quality maps to file size, and why documents end up so much larger than they should.
How it works
Nothing is uploaded, and you can check
Browsers have been able to decode, redraw and re-encode files locally for years. Once that is true, sending a private document to a stranger's server to shave forty kilobytes off it stops making sense.
-
Choose a tool
Each one does a single job and says plainly what it will and will not do to your file.
-
Work locally
Your file is read by the browser and processed by your own processor. There is no queue, no size cap and no waiting on somebody else's server.
-
Save the result
The finished file is handed back as a download. Close the tab and every trace of it is gone, because there was nowhere else for it to be.
Verify it yourself: open your browser's network tab and run any tool, or disconnect from the internet once the page has loaded and notice that everything still works.
Browse everything
The full index
Every tool on the site, sorted by how often it is needed. Type to narrow the list.
Image tools
about the image tools →| Tool | What it does | Accepts |
|---|---|---|
| compress to 20 KB | For exam and recruitment forms that cap photos and signatures at 20 KB | jpg, png, webp |
| compress to any size | Type any target in KB or MB and hit it | jpg, png, webp |
| compress to 50 KB | Hit a 50 KB upload limit, with or without changing the pixel dimensions | jpg, png, webp |
| compress to 100 KB | A 100 KB budget, sized for email attachments and CMS uploads | jpg, png, webp |
| compress to 200 KB | A 200 KB budget for hero images, with a JPEG against WebP comparison | jpg, png, webp |
| compress to 500 KB | Email and portal attachments, keeping print quality | jpg, png, webp |
| resize in pixels | Set an exact width and height, with or without locking the aspect ratio | jpg, png, webp |
| increase image KB | Pad a file up to a minimum size, or re-encode it larger | jpg, png |
| passport photo | Standard passport and visa sizes at 300 DPI on a white background | jpg, png |
| crop image | Drag a selection, or type exact coordinates, with ratio presets | jpg, png, webp |
| resize in cm | Work in centimetres, millimetres or inches at a chosen DPI | jpg, png |
| blur or pixelate | Hide a face, plate or address by drawing a box over it | jpg, png, webp |
| strip Exif | Delete Exif, GPS and comments without re-encoding a single pixel | jpg, png |
| rotate and flip | Turn by 90 degrees or mirror, without re-compressing more than once | jpg, png, webp |
| watermark image | Text across a photo, tiled or single, with opacity control | jpg, png, webp |
| grayscale and tone | Black and white, sepia or inverted, with adjustable strength | jpg, png, webp |
| circle crop | Round avatar with real transparency, saved as PNG | jpg, png, webp |
| add a border | Even border, or pad to a square for platforms that crop | jpg, png, webp |
| view Exif data | Read the camera, date and GPS tags hidden in a photo | jpg |
| aspect ratio | Work out the missing width or height for a ratio | no upload |
| convert to JPG | PNG, WebP, BMP or GIF to JPEG, several files at a time | png, webp, bmp, gif |
| convert to PNG | Lossless PNG output, keeping transparency where it exists | jpg, webp, gif, bmp |
| convert to WebP | Batch convert to WebP and see exactly how many bytes it saved | jpg, png, gif |
| change DPI | Read and rewrite the density tag, with or without resampling | jpg, png |
| image to Base64 | Data URI, plus ready-made CSS and HTML snippets | any image |
| favicon generator | A real multi-size .ico plus the PNGs and the markup to go with them | png, jpg, svg |
| Base64 to image | Paste a data URI and get the file back | base64 text |
| SVG to PNG | Rasterise a vector file at any size you choose | svg |
| print size | Pixels to centimetres and back at any DPI | no upload |
| split into tiles | Cut an image into a grid and save each piece | jpg, png, webp |
| merge images | Join several images side by side, stacked or in a grid | jpg, png, webp |
| add text to an image | Captions top and bottom, with an outline that stays readable | jpg, png, webp |
| dress up a screenshot | Padding, a background, rounded corners and a shadow | png, jpg |
| pick colours | Click any pixel for its hex code, plus the dominant palette | jpg, png, webp |
| colour converter | Hex, RGB and HSL in every direction, with contrast checks | no upload |
| bulk resize | Resize and compress a whole folder of images in one pass | jpg, png, webp |
| compare two images | Highlight every pixel that differs between two versions | jpg, png, webp |
| megapixel calculator | Pixels to megapixels, and the biggest print it will stand | no upload |
| image size estimator | Predict the file size before you export | no upload |
| savings calculator | What compressing actually saved, in bytes and bandwidth | no upload |
| upload time | How long a file takes to send on a real connection | no upload |
PDF tools
about the PDF tools →| Tool | What it does | Accepts |
|---|---|---|
| compress PDF | Rebuild pages as compressed images, or repack the file losslessly | |
| compress to a size | Type a target in KB or MB and reduce the PDF until it fits | |
| merge PDF | Join several PDFs, reorder them first, no page limit | |
| split PDF | Pull out a page range, or break a document into single pages | |
| JPG to PDF | Photos into one PDF, with page size, margin and orientation control | jpg, png |
| PDF to JPG | Render pages to JPEG or PNG at a resolution you choose | |
| delete pages | Remove pages by number and keep everything else intact | |
| rotate PDF | Turn some or all pages and save the rotation permanently | |
| increase PDF KB | Pad a PDF up to a minimum file size, leaving every page identical | |
| crop PDF | Trim margins by setting a crop box, no rasterising | |
| sign a PDF | Draw a signature and place it on a page | |
| reorder pages | Rearrange, reverse or interleave pages by typing an order | |
| page numbers | Stamp numbers in any corner, with a starting value and a format | |
| watermark PDF | Diagonal or horizontal text stamp, with opacity and colour control | |
| resize to A4 | Put mixed page sizes onto one consistent paper size | |
| extract text | Pull the text layer out as plain text, page by page | |
| pages per sheet | Put 2 or 4 pages on one sheet to save paper | |
| PDF metadata | Read and rewrite the title, author and other document properties | |
| inspect a PDF | Page count, page sizes, text layer, encryption and properties | |
| add blank pages | Insert empty pages at any position, matching the page size | |
| text to PDF | Paste text and get a properly paginated PDF | plain text |
| scan size calculator | How big a scan will be before you start scanning | no upload |
| PDF size estimator | Predict how heavy a PDF will be from what is in it | no upload |
| attachment limit | Why a 25 MB limit will not take a 25 MB file | no upload |
An older domain
pythonware.com published the Python Imaging Library and its documentation for many years. PIL taught a generation of programmers to open, resize and convert images in Python, and the archive is kept for the people who still arrive looking for it.
How this site is built
Plain HTML, one hand-written stylesheet and vanilla JavaScript. No framework, no webfonts, no tracking and no advertising. It loads quickly because there is very little of it.
Corrections welcome
If a tool gives a wrong answer, or a form accepted a file this site said it would not, that is worth knowing. Upload validators vary more than any documentation admits.