Install
- Download the latest release from GitHub Releases.
- Drag AltProcessDensitone into your Applications folder.
- Double-click it. The build is signed and notarized by Apple, so there is no Gatekeeper warning to click past and no right-click Open trick to remember.
Requires macOS 13 (Ventura) or later.
What you need
- The source image — the positive digital image your negative was made from, before inversion and before the correction curve.
- A scan of the print made from that negative, dried, and scanned with fixed settings — RAW with a straight curve, no automatic adjustments. See Scanning a Print for Measurement.
- Optionally, the
.acvcurve that was active when the negative was printed. Without it the correction is computed from linear.
1. Load the pair
Source… and Scan… in the toolbar, or drag both files onto the
window. The canvas opens on Both, where each pane is its own drop
target — drop the positive on the left pane and the scan on the right, and
neither file needs a menu. In every other view a dropped image fills the
scan slot. Dropping an .acv loads it as the active curve, and dropping an
.apdt restores a session.

The app matches the source into the scan on load and places a four-corner registration quad over the print area. Analysis then runs by itself and re-runs on every change you make.

2. Verify the registration
The Detect row in the inspector reports a match percentage — green when the detector is confident. Then look, rather than trust:
- Both puts source and scan side by side while you drag corners.
- Overlay blends the warped scan over the source; misalignment shows as ghosting.
- Diff is a heat map of local differences — registration error lights up along edges.

Drag any corner handle to correct the quad; the analysis re-runs when you let go.
3. Load the curve the print was made through
Inspector → Curve → Active → Open…, or File → Load Active Curve…
(⌘L). This is what makes the export a replacement for that curve rather
than a correction from nowhere.
4. Read the result
The status pill reads CURVE READY with the tonal coverage. The bin table, the response graph and the statistics panel are all live.

Coverage is the number to respect: a high-key portrait cannot say anything about deep shadows, and the app will not invent a correction there.
5. Export
⌘E, or Export → Adjusted Curve… (.acv), writes the replacement curve.
The same menu has the ICC profile for soft-proofing and the PDF and CSV
reports. ⌘S saves the session as an .apdt.
Before the next sheet, write what mattered into the inspector’s Notes — exposure, humidity, coating batch — and use File → Close Session to hand the window an empty canvas while keeping your curve, process and analysis settings.
Where to go next
- Interface Reference — every control in the window
- Registration & Analysis
- Curves, Aim & Proofing
- Typical Workflow