def justify_to_point(
        point: float,
        itemsize: float,
        just: float = 0.0) -> float:
    """
    Args:
        point:
            align to this coordinate
        itemsize:
            size of the item we are aligning
        just:
            How should we align?
            - 0 = left/top
            - 0.5 = centre
            - 1 = right/bottom

    Returns:
        float: starting coordinate of the item (top or left)

    Note:

    - x axis is left-to-right (and justification 0-1 is left-to-right)
    - y axis is top-to-bottom (and justification 0-1 is top-to-bottom)
    - ... so we can treat them equivalently.
    """
    return point - itemsize * just