1. A computer-implemented method for overlaying text content on a digital image with a foreground text color computed automatically given a particular text location region and size on the image, the method comprising the steps of: extracting all unique colors from an initial image by examining each of the image pixels, in order to create a foreground color set; filtering the foreground color set to remove one or more colors; for each foreground color in the filtered foreground color set: identifying one or more cluster colors, the cluster colors comprising colors that are similar to the foreground color; and calculating a cluster color count by summing the number of occurrences within the image of cluster colors; filtering out foreground colors that do not sufficiently contrast with the average background color of the text location region; sorting foreground colors by color contrast score; filtering non-distinct foreground colors; adding to the foreground color set one or more predetermined colors that contrast with the average background color of the text location region; selecting a rendering color from amongst the foreground color set; and generating an output image comprising text rendered in the rendering color at the text location region, over the initial image.