Print from applications like the web browser you are using to read a page.
CUPS for Linux converts the page descriptions produced by your application (put a paragraph here, draw a line there, and so forth) into something your printer can understand and then sends the information to the printer for printing. Now, since every printer manufacturer does things differently, printing can be very complicated. CUPS for Linux can hide this from you and your application so that you can concentrate on printing and less on how to print. Generally, the only time you need to know anything about your printer is when you use it for the first time, and even then CUPS for Linux can often figure things out on its own.