Privacy
The picture you drop is decoded into this page's memory, divided there, and written straight to your downloads folder; no server is in that path, so there is no copy anywhere for us to keep or delete.
The short version
- The picture never travels. It is decoded, divided and encoded inside the browser tab you are reading this in.
- Nothing about the picture is stored — not the file, not its name, not its dimensions, not a thumbnail. Closing the tab is the whole deletion process.
- There are no accounts, so there is nothing to sign in to and no profile to attach anything to.
- The archive you download is assembled in the tab and handed straight to your browser’s download machinery.
What happens to a file you open
Choosing, dragging or pasting a picture hands the browser a reference to bytes that are already on your device. The page reads those bytes to work out what format the file really is and to read its orientation flag, then asks the browser to decode it into an in-memory bitmap. From there the tiles are drawn with a 2D canvas, encoded, and written into an archive as a temporary object in the same tab.
There is no request that carries picture data, because there is no server to send it to: this site is a set of static files and a JavaScript bundle. A build-time audit fails the release if any module that touches a picture buffer gains a network call, a storage call or an API route, which is a mechanical check rather than a promise anyone has to remember to keep.
What the analytics sees
Nothing at all, because there is no analytics on this domain today. The token in src/lib/analytics.ts is still the scaffold placeholder it shipped with, and the layout emits the beacon tag only once that placeholder has been swapped for a real one, so no analytics script loads and nothing about your visit is recorded — not the address of the page, not the page you arrived from, not a coarse country, not a browser family. There is no visit counter here and no log sitting behind one.
Should measurement be added later it will be Cloudflare Web Analytics, on a property belonging to this domain alone: cookie-free, setting no identifier, following nobody from one site to the next, and with no way of learning that a picture was opened, what it was, or whether any tiles were written. The paragraph above cannot outlive that change — a release gate reads the token and refuses the build while this page still denies measurement that has started happening.
What the advertising sees
This site is built to show third-party advertising from Google AdSense in its reading sections, and advertising is not yet enabled: the master switch in src/lib/ads/slots.ts reads false, the placement component returns nothing, and the AdSense loader is on no page, so no ad request leaves your browser at the moment. What follows describes those units as they will behave once Google approves this domain and the switch goes across — approval is what starts them, not an edit to this page.
A filled unit is an ordinary third-party slot. Google would receive the request for the ad and, with it, the address of the page it sat on, an IP address, a user agent, and whatever its own cookies and your own choices in its settings already tell it. It would receive nothing from the splitter. The picture, the tile rectangles, the file names and the archive cannot form part of an ad request, because none of them exists outside this tab to be sent.
Three unit ids are written down and not one of them renders: one below the troubleshooting prose on each of the two cutting routes, two inside each of the two notes, and one at the foot of the notes index. None may sit above the working surface or within it, none would load on a preview host, and while the switch is off no height is held either, so nothing on the page is reserved for something that cannot arrive. A content blocker changes nothing about the splitter in either state.
Where the law sits
Because no picture data is collected, there is no picture data to request, correct or erase. Rights under the GDPR, the UK GDPR and comparable regimes attach to Google’s own processing from the moment its units begin serving, and are exercised with Google rather than here — this site holds nothing on you to hand over, before that day or after it. Where a jurisdiction requires a consent prompt for advertising cookies, the prompt would come from the ad stack and would cover the ad stack; none is raised while no ad stack is loaded.
If this ever changes
A change that moved any part of the cutting to a server would be a different product, and it would be labelled as one on the page where it happened rather than amended quietly into this policy. Nothing of that kind is planned.