ForHosting KIT · Images

Paper-white tint adjust

Navy #3366cc printed at full coverage on cream paper #f5e6c8 previews as #315ca0, a touch darker and warmer than on screen. See your brand color on the real stock before you print invitations, letterhead or mailers. Free in your browser.

  • Free
  • Runs in your browser
  • No sign-up
  • Your data stays on your device
Use it from WebAPIEmailTelegramApp soon
If you enter
Color
#3366cc
Paper white
#f5e6c8
Coverage
100
You get
T
1
Hex
#315ca0
Resistance (Ω)
49
G
92

A hex swatch is specified as if the substrate were perfect display white. Real letterhead, invitations, newsprint, kraft mailers, and uncoated book stock are never that white, so the same navy or brand red looks warmer, duller, or slightly darker once it sits on the sheet. This tool previews that shift deterministically: it treats coverage as a conventional print tint toward assumed white, then composites the designed colour against a paper-white by multiplying each eight-bit channel by the stock channel. Full coverage on #ffffff is identity; zero coverage shows the paper alone.

Why a paper-white composite is not a generic colour mix

Designers search for a paper white tint adjust when they already have a brand hex and a measured or chosen stock colour and need to see the ink on that sheet, not when they want an arbitrary midpoint between two decorative swatches. The assumed white point of a monitor or a design-token file is #ffffff. Cream laid paper, ivory invitations, recycled newsprint, kraft mailers, and warm uncoated book stock all replace that white point with a real reflectance.

A navy specified as #3366cc is the colour you would see if the substrate were perfect white; on a yellow-cream sheet the same ink recipe is filtered by the paper, so the preview has to composite the designed colour against the paper-white rather than lerp two independent hues. This capability does that in two explicit stages. Second, each designed channel is multiplied by the matching paper-white channel and divided by two hundred fifty-five — the standard paper-reflectance model used in simple stock simulation and white-point remapping.

On pure white paper with full coverage the result is identity, which is the check that the formula has not invented a cast. On cream stock the same navy shifts warmer and slightly darker. Coverage of zero yields the paper itself because no ink is laid down.

The path is pure arithmetic: no network, no random seed, no wall clock.

Input contract, the two-stage formula, and the response

Both colours accept three-digit or six-digit CSS hex, with or without a leading hash, in any letter case. Missing fields, empty strings, non-hex digits, NaN, Infinity, and coverage outside the closed interval also fail and are not billed. Internally each colour expands to red, green, and blue integers from zero to two hundred fifty-five.

Let t be coverage divided by one hundred. For every channel the designed value is color times t plus two hundred fifty-five times one minus t. The output channel is the designed value times the paper-white channel, divided by two hundred fifty-five, rounded to the nearest integer and clamped into the legal eight-bit range.

A formula string restates the two-stage rule for docs and support.

Where a stock preview earns its keep, and what it does not do

Brand and packaging teams pick a hero hex in a design tool calibrated to display white, then need a honest preview on the cream letterhead, uncoated carton, or recycled insert the job will actually print on, without opening a full RIP or a colour-managed soft-proof suite. Invitation and stationery shops sell ivory, pearl, and kraft stocks; a clerk can type the brand colour and the stock chip and hand the customer the resulting hex for a digital mockup that matches the two-stage contract.

Design-token pipelines generate paper-aware surface tokens: keep the brand ink as specified for screens, and emit a companion token that is the same ink composited against the house paper-white so slide decks and PDF proofs do not look colder than the printed piece. Curriculum authors teaching print production can show that a tint is mixed toward assumed white first, and that paper simulation is a multiply against the stock, which is not the same as sliding HSL lightness and not the same as blending two decorative colours at a ratio.

The tool does not convert named CSS colours, does not accept alpha hex, does not model ink trapping or overprint of two spot inks, and does not replace a colour-managed ICC soft proof for contract presswork. If you need an arbitrary mix of two hexes with no paper semantics, a subtractive paint blend, an HSL lighten, or a WCAG pair check, those are different search intents and different landings.

Pin the result hex in tests, keep coverage inside the documented interval, and you get a reproducible paper-white preview for mockups, tokens, and press-check notes.

Preview brand ink on cream letterhead

Composite a navy or burgundy hex against a measured cream stock at full coverage and drop the resulting hex into a digital letterhead mockup before the press check.

Tint books on a chosen paper-white

Sweep coverage from 10% to 100% of a spot colour against the house ivory or kraft paper-white to build a paper-aware tint ramp for packaging dielines.

Paper-aware design tokens in CI

Emit a companion surface token that is the brand ink composited against the house paper-white so PDF proofs and slide decks stay bit-identical across builds.

What does coverage mean in this paper-white tint adjust?

Coverage is the ink percent on the sheet. 100 is a solid remapped onto the paper; 0 shows the paper only; values in between mix the ink toward display white first, then multiply by the paper reflectance.

Why is this not the same as mixing two hex colours?

A generic mixer lerps two arbitrary colours. This preview tints the ink toward assumed white, then composites against paper-white by channel multiply so a cream stock casts the ink instead of sliding halfway to cream.

Which hex formats are accepted for the ink and the stock?

Three-digit and six-digit CSS hex, with or without a leading hash.

What does the paper-white tint adjust cost?

The browser tool is free and runs locally.

How will #3366cc look on cream paper #f5e6c8?

At full coverage it previews as #315ca0, or rgb(49, 92, 160). Each channel of the ink is filtered by the matching channel of the paper, so the blue turns slightly darker and warmer.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/color/paper-white-adjust

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/color/paper-white-adjust \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"color":"#3366cc","paper_white":"#f5e6c8","coverage":100}'
{
  "color": "#3366cc",
  "paper_white": "#f5e6c8",
  "coverage": 100
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.paper_white_adjust",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Invalid hex codes and coverage outside zero through one hundred fail with invalid_input. The free browser path and the prepaid API share one pure function, so press-check scripts and design reviews never disagree. Successful API calls use the published $0.002 per item; validation failures are not charged.

Why a paper-white composite is not a generic colour mix

First, coverage is a conventional print tint: a forty percent tint of an ink is the ink mixed toward assumed display white, the way a spot-colour tint book is built, not toward the stock. Identical inputs always produce identical JSON, which is what design-token goldens, press-check scripts, and packaging mockups need when they pin a preview hex in continuous integration.

Input contract, the two-stage formula, and the response

Send three required fields. color is the ink or designed hex; aliases hex, ink, and swatch are accepted. paper_white is the stock colour; aliases paper, stock, paper_hex, and background map to the same field. coverage is the ink coverage percent from zero through one hundred inclusive; aliases opacity, tint, amount, and percent are accepted so older form names still resolve. Alpha forms with four or eight digits, named CSS colours such as ivory, and programming 0x prefixes are rejected with invalid_input naming the field. On success the JSON echoes the normalized lowercase six-digit color and paper_white, the numeric coverage, and t as the unit interval. The preview appears as hex, integer r g b, and a printable rgb string. original and paper objects expose the parsed parent channels so a UI can draw the ink, the stock, and the composite without re-parsing. result repeats the preview swatch. method is always tint_then_paper_multiply so clients can branch without sniffing shapes.

Where a stock preview earns its keep, and what it does not do

Because this capability is a pure parse engine, API pricing is the published $0.002 per successful item and failed validation does not consume balance.

How do I preview a hex color on tinted paper?

Send color (the ink hex), paper_white (the stock hex), and coverage (0–100). The API returns the composited hex, RGB channels, and the echoed paper-white after a tint-then-multiply preview.

Read the full KIT documentation →