/// <summary>
        /// Returns the text full report for the image.
        /// </summary>
        /// <returns>The full report for the image.</returns>
        public string FullReport()
        {
            Indenter indenter =
                new Indenter(ToString())
                .AppendOnSameLine(HasWork ? " (!)(has work)" : "");

            if (Inks.Count > 0)
            {
                indenter.Append(Inks.Count + " ink(s):")
                .AddIndent("|   ")
                .Append(Inks.Select((ink, i) => i + 1 + ") " + ink.ToString()));
            }

            return(indenter.ToString());
        }
 /// <summary>
 /// Determines whether the image contains enough ink to qualify as having work.
 /// </summary>
 void CheckForWork()
 {
     HasWork = Inks.Count >= MinimumInks && Inks.Sum(ink => ink.Rect.Area()) / Rect.Area() >= PageFillConstant;
 }