1. A method of presenting an offer of an image bearing product to a user, comprising: accessing a plurality of user image files; analyzing each image file of the plurality of user image files to obtain semantic information about subject matter content of each image file from at least one of a content of each image file and semantic information stored with each image file; determining at least one of user image preferences from the semantic information and user product preferences determined from metadata associated with the user and identifying product preferences of the user; generating an offer for an image-bearing product based on at least one of the user image preferences and the user product preferences wherein the product uses at least one image from the plurality of user image files; and transmitting the offer to the user.