About SplitPicture
This site does one thing: it takes a single picture and returns several picture files. The count is the product. Everything on it exists to make that division exact and to tell you what it cost before you commit to it.
The test this site is held to
One file in, more than one file out. If a feature does not produce more files than it consumed, it belongs somewhere else, and the discipline is worth more than the feature would be. Joining pictures back together, choosing a crop, growing a canvas, hitting a target file size, stamping a mark on each tile — all real jobs, none of them this one.
The result is a tool with a narrow surface and a deep one. There is no mode switcher hiding four unrelated products, and the parts that are here — remainder distribution, the framing decision, the gutter preview, the naming pattern, the order the files go out in — are the parts that decide whether a split is usable.
How it is built
The whole thing is a static site with no server behind it. The picture you open is decoded by the browser into this page’s memory, divided there with a 2D canvas, encoded there, and written to your downloads folder as an archive. There is no upload step to fail, no queue to wait in and no account to make.
- Geometry is arithmetic, not estimation: boundaries are cumulative offsets and the tiles reassemble to the exact source rectangle.
- The preview runs on a copy no larger than 2560 pixels; the export re-runs the same plan against the full-resolution decode, so nothing changes between what you approved and what you save.
- Tile encoding moves to a Web Worker wherever the browser offers OffscreenCanvas.convertToBlob, so the 144 encodes of a twelve-by-twelve grid do not freeze the page; where it is missing — Safari before 16.4 — the same encode runs on the main thread and a large grid will stutter.
- HEIC is read by a WebAssembly build of libheif — roughly 2 MB of chunk, near 700 KB over the wire — fetched the first time a HEIC arrives and never on page load.
What is not here yet
Carousel slides and poster tiling across printable sheets are both within what this site is for, and neither is built in this version. Poster mode in particular needs millimetres, DPI and printer margins to be first-class, and half of that is worse than none of it. Puzzle pieces with interlocking tabs are further out again.
Advertising is not yet enabled here. The AdSense account is unapproved, the switch in the ad module reads false, and the placement component draws nothing at all rather than an empty band with a label over it, which is why the reading pages currently earn the site nothing. The rule those placements were designed under holds either way — never above the tool, never inside it — and each will reserve its height before it loads, so nothing moves under the cursor once Google approves the domain.