Photo Printing

Lithophane Generator: control the thickness map

Control how a photo becomes plastic thickness. Compare minimum, maximum and frame settings in a backlit preview, then generate the flat panel STL.

Local browser processing · No upload · No account required

JPG, PNG, WebP, HEIC or AVIF. Flat rectangles only. The width includes the frame; frame height is its thickness.

Choose a photo to begin.

Mesh limit: at most 40,000 grid cells and 400 cells on either side. Photos are reduced to a preview up to 1,600 pixels on its longest side; the output uses that preview.

Size, triangles and file size appear here before saving.

How to generate a lithophane thickness map

  1. Load a supported image and choose the area for the panel. Settle the crop before you compare thickness settings, so the subject stays in the same place.
  2. Set a minimum that leaves a continuous sheet and a maximum for the darkest tones. The generator rejects a maximum that is no greater than the minimum.
  3. Choose a frame width and a frame height within the thickness range. Set its width to zero if you want the photo to reach the outer edge without a uniform border.
  4. Compare normal and inverted mapping only if your source requires it. Read the mesh report and save the STL when the thickness settings are ready for inspection in your slicer.

I want the mapping to be readable

I show the thickness controls together because they describe the same surface. Changing the maximum affects the dark end; changing the minimum affects the bright end. The frame is another part of that surface, and it should not silently become thicker than the maximum entered above it.

The values in the table are what the generator calculates, not measurements of transmitted light. Use the preview to see which way a change goes, and the STL for the dimensions to check in a slicer.

Normal and inverted thickness calculations

With the default 0.8 mm minimum and 3.0 mm maximum, a tone halfway between black and white lands halfway through the thickness range. Brightness and contrast are unchanged in these checked calculations.

InputNormalInvert on
Black endpoint3.0 mm0.8 mm
Half brightness1.9 mm1.9 mm
White endpoint0.8 mm3.0 mm

Thickness and brightness are different controls

Under a light, thicker regions of a panel look darker. The generator reads the image tones and maps them into the material range you choose: minimum thickness sets the bright endpoint and maximum thickness the dark endpoint. Both are physical dimensions in the downloaded file.

Brightness and contrast edit the input to that mapping. They do not change the endpoints themselves. Brightness moves the image values together, while contrast separates values around middle gray. A strong edit clips values at black or white, which can flatten detail even though the resulting surface remains closed.

Understand the border as part of the surface

Frame width is the band inside the outside rectangle. Frame height is the thickness of that band from the flat back. The generator uses the same front surface for the photo and frame, joining their sampled values. It is an integrated border rather than a separate removable picture frame.

Keep the frame narrower than half the smaller panel dimension. The tool checks that there is still room for the picture. Its outline follows the mesh grid, so coarse resolution also limits how precisely that border can be represented. A border set to the maximum makes the panel reach that thickness even if the photograph contains no black.

Resolution is a sampling choice

Pixels per millimetre sets the requested surface sampling density. Increasing it creates more triangles until the mesh limit is reached. The page then reports the capped grid instead of trying to create an unbounded file. Physical width and height stay fixed while the spacing between sampled points changes.

The preview is a simple light attenuation simulation of those sampled thicknesses. It is useful for deciding if a subject has become too dark or a border too dominant. It cannot predict the layer lines, material texture or brightness of a particular lamp. Inspect the slice preview for gaps and isolated paths before you prepare the printer.

Tips for better results

  • Change one thickness endpoint at a time, so you can see which tones move.
  • A wider thickness range also changes the relief depth; recheck the sliced surface after editing it.
  • Keep inversion off unless a deliberate reversal of light and dark is needed.

Privacy

Your photo is processed in your browser and never leaves your device. No upload or account is needed to create the STL.

Frequently asked questions

What does invert do in this generator?

Invert swaps the bright and dark thickness directions after brightness and contrast are applied. A black input becomes thin and a white input thick. It is useful for special source images, but reverses the usual backlit photo appearance.

Does minimum thickness add a backing plate?

The minimum is the thinnest part of the photo surface above the flat back. There is no extra plate added beneath that number. The complete solid already includes a back and sides in the STL.

Will a higher resolution change the print size?

No. Resolution changes how densely the surface is sampled within the same dimensions. Width remains the value you entered and height follows the crop. Above the mesh limit, the report shows the lower effective resolution actually used.

Why is my unframed model thinner than the maximum?

Maximum thickness is the value assigned to black after tonal adjustments. If your image contains only lighter tones, its highest point is lower. A frame set to the maximum reaches that value independently of the photograph.

Related tools and guides