I have a color laser printer with max resolution specified to be 1200 x 4800 dpi, which is vertical by horizontal resolution based on this answer. I want to print an image at the highest possible resolution, so first I create a tiff file of the image using Matlab, which allows me to specify a single dpi value when I save the file. Do I specify 4800 dpi? Would the printer then print my image at 4800 dpi in the horizontal and 1200 dpi in the vertical? (The use case: I am seeking to print out a small color image containing tiny squares which need to be distinct when seen under a magnifying glass.)
The answers here already explain what DPI is, but your question isn't really what DPI is, but what the highest DPI setting is that you should use for your image.
Just a recap so others don't have to read the comments I posted on the other answers: DPI is a conversion from pixels to physical size, such as cm, inch, etc. When a program or printer uses the DPI setting, it will basically calculate how small or big on the paper the image should be without changing the actual image itself. So a 1024x768 image with a low DPI setting can fill an entire A4 paper, but will look very pixellated when printed, as where the same image printed with a very high DPI setting will appear very small on paper.
Now, what happens if you print on a higher DPI setting than the printer supports, the same basically as when you use your photo editor and resize the photo to a smaller image. You lose details.
This makes the question really hard to answer. If you specify a DPI that is too low, the image gets bigger on paper. If you specify a DPI that is too high, you lose details in the image which can result in text not being readable anymore, or lines vanishing, depending on how much fine detail the image has.
Although I cannot answer the question for sure, because I don't know how well the printer copes with a DPI that is too high, I suspect that if you go higher than the 1200DPI setting on the vertical axis, you will lose details. So even though 4800 DPI is on the wide axis, I suspect that 1200DPI should be the maximum DPI setting you should use in order to ensure that you won't actually lose any information.
You could test this by creating an interlaced pattern based image with one pixel black, then one pixel white, then one pixel red then one pixel white, then one pixel green and one last pixel white and repeat that vertically (so you get a long vertical line (you can make these pixels wider though, so the line is easier to spot), then print it out on 1200DPI and on 4800DPI and see if you are keeping the information, or that some colors vanish.
Even better would it be if Matlab can somehow specify different DPI settings for the entire image. It is also possible that the printer calculates the dimensions based on a formula and thus the max DPI setting you could use is 3/4th of 4800DPI, namely 3600DPI (because 1200DPI is 1/4th of 4800DPI, so you reduce that from 4800DPI to compensate for going over.
So my answer is going to be: experiment a little to make sure. The information in this answer should help you understand how and why it works like this.
There are already a lot of good answers, but one piece of the explanation seems to be missing, so I'll focus on that; the relationship between pixels and printer dots. The 1200x4800 printer resolution doesn't refer to image pixels, but the mechanics of how the printer can reproduce those pixels.
You have a specific, and somewhat unique, use case, but this general question can apply to a lot use cases. I'll cover the situation in general, which may be of use to other readers, and then apply that to your requirement.
A pixel is the smallest meaningful element of an image. It contains information about the image, itself (as opposed to detail about how to recreate it on a specific device). If it is a grayscale image, the pixel tells you how dark that spot is. If it is a color image, the colors will be defined by a color space. For monitors, it's typically primary colors of red/green/blue. For a printer, it's typically primary colors of cyan/magenta/yellow (black is often added because it's difficult to create pure black by mixing colors; photo inkjet printers sometimes add additional colors that are hard to reproduce by combining other colors). The pixel color is defined by the intensity of each component primary color.
To reproduce the pixel color on a monitor, the monitor has a subpixel for each primary color and can vary the brightness of each subpixel. A printer can't do that; it can only print or not print a dot of a primary color (and put multiple primary colors in the same area). Some inkjet photo printers can actually vary the size of the dot a little, but otherwise work the same way. Printers recreate the pixel color by printing a pattern of tiny dots. For each primary color, it varies the intensity of the color by how many dots it puts in the pixel's area.
Printers are designed to reproduce a document or image that looks good when viewed at a normal distance. They use some tricks to accomplish it that are invisible at normal viewing distance but visible under magnification. As I'll explain, what you want to do is to work at a level that the printer isn't really designed to support.
The printer resolution refers to how tightly it can put down dots to create shades of each color. I'm going to oversimplify a little because the resolution, say 4800 dpi, refers to how close together the dots are, not the diameter of the dot. If the dot diameter is no more than 1/4800th inch, there will be paper showing through gaps between the dots, so it will not be able to achieve 100% color intensity. If the dots are larger in diameter than 1/4800th inch, they will overlap and you will lose some increments of shading. But for this explanation, lets assume perfect dots.
If it can print a grid of 16x16 dots within the area of a pixel, it has 256 dots to work with. It can use anywhere between none and all to reproduce 256 shades of the color (excluding white for none), which is typically the color depth of an image.
At 4800 dpi, printing a pixel resolution of 300 ppi gives you 16 dots in that direction to recreate the color intensity. In the other direction, 1200 dpi for the same 300 ppi gives you only 4 dots for recreating the color intensity.
In this case, 4x16 gives you get a grid of 64 potential dots, which provides a color depth of 64 shades. So at 300 ppi, it can't accurately reproduce the original color precision of 256 shades per primary color, it can reproduce only every fourth increment of shading. But 1/300 of an inch is pretty small; you can only see that detail with magnification. So the printer employs an optical illusion. By making surrounding pixels more or less intense to compensate, from a normal viewing distance, the errors blend and cancel out.
The higher the printed pixel resolution, the fewer potential dots per pixel in the grid. The printer can reproduce fewer shades of the color, so color accuracy degrades.
There is also an issue of detail size at normal viewing distance. For something like a line to be visible as a line, it needs to be wide enough to be perceived by your eye as a feature. In the image, a line must be at lease one pixel wide to exist. If you print that pixel too small (too high a pixel print resolution), it becomes essentially invisible as a line. It becomes more like shading; color on the page that makes the paper off-white, but not really visible as a feature. That is similar to how printers produce color shading -- dots or lines too small to be seen as a feature that add some percentage of color to the paper.
If you think about a fax, that is typically 200 dpi black and white. Normal-sized text tends to look a bit blocky and jagged. Black and white laser printers produce smooth text outlines at 400-600 dpi, which is fine enough resolution to require magnification to see the detail (the text characters are typically represented as vectors, which don't have a ppi measurement).
If it was a grayscale image, 200 ppi would look much better, and 24 bit color (8 bits per color) at 200 ppi looks pretty good at normal viewing distances. At normal document or picture viewing distances, 24 bit color at 300 ppi gives you pretty much all of the detail your eye is capable of distinguishing. At higher pixel resolutions, you would lose the ability to differentiate some of the smallest image details.
Printers rely on that fact to fake it. Your software application defines the pixel resolution, which determines the size of the image and the size and density of the image detail. The printer driver figures out how to best reproduce that given the constraints it has to work with. It can only lay down dots of primary color at intervals limited by the printer's resolution to simulate the color depth of the image pixels.
But your eyes can't see detail at that level. It you printed an image at 4800 ppi, every pixel, regardless of its color shade, would be reduced to the presence or absence of a single dot (color depth of 1 shade) of each of its component primary colors. So the printer would need to pick from a pallet of 8 possible colors to reproduce any of the 16.8 million colors a pixel could be. You also wouldn't be able to distinguish any of the detail; it would look like a muddy blob.
Determining what resolution to save the image for typical use
For typical use, basically ignore the printer resolution, that will just affect how accurately it can reproduce the image. Determine the image resolution based on how the result will be viewed. In a typical document or photo print, 300 ppi is a good target. If you may need to enlarge the image, or part of it, a higher resolution will preserve smaller detail for that purpose (base the ppi on how much you might need to enlarge). If the image will be viewed from a distance, like a poster, 150 ppi or even less might be adequate.
If you use a ppi spec greater than what you really need, you will be storing and working with a much larger file. Resolution is in two directions, so doubling the resolution quadruples the image pixels and the file size. This can slow processing time to work with it. It will also limit the printer's ability to use its tricks, which could result in a poorer print reproduction.
Special "microfiche" use case
You have a special use case where you want to print small and then magnify. You will bump against two kinds of problems that are limitations of the printer technology. One is the color accuracy that was previously discussed. The other is the precision at which the dots are placed.
When you are viewing content printed at say 300 ppi, the pixels are already small enough to require magnification to see them. The dots used to create the pixels need to be at a certain density, but the placement doesn't need to be all that precise. From dot to dot, or line to line, if a dot is off position by 50%, you're talking about roughly 1/10,000th of an inch at 4800 dpi.
The printer also uses what is essentially "randomization" of some dot placement to avoid accidentally creating groups of coloration dots that happen to form a pattern that is perceivable as an artifact or feature. It also manipulates dot location to create the color error offsets in adjacent pixels.
The high dot resolution isn't intended for you to use to print detail, it's the secret sauce the printer uses to synthesize the detail visible at normal viewing distances. So what would happen if you tried to print at a pixel resolution approaching the printer's dpi?
If it was just text, you could theoretically print at 1200 ppi (this will be limited by the direction with the lowest resolution). This would sort of mimic how simple text characters are displayed on a monitor. In practice, though, this would be very crude, perhaps to the point of being barely usable. The printer isn't designed to place the individual dots with the precision that would produce nice smooth lines.
If you are talking about color images, it would be even worse. there would be too few dots to reproduce a broad range of colors, and the dot placement would be too random to reproduce accurate detail. If you weren't at all worried about color accuracy you might get something usable at up to about 400-600 ppi (only guessing, you would need to test it). But the appearance under magnification would likely be a bit "faxish". It would also be horribly "grainy" because you would be looking at the component dots. It definitely wouldn't pass for something "photographic".
In the days of dot matrix printers, people with a lot of time on their hands "digitized" photos into ASCII art. By that, I mean converted pixels to alphabetic characters of similar darkness density to create a "document". Printing the document would produce something that was recognizable as a picture from across the room, but at normal viewing distance, you could see all the characters. Your magnified image would be similar.
Simple colored squares wouldn't be quite as bad as long as color accuracy and clean outlines aren't important. If they are actually next to each other, you would get irregular outlines and color bleeding between them due to imprecise and randomized dot placement.
The bottom line is that the printer resolution isn't designed for printing detail or accurate color at that resolution. It's just a resource the printer uses to simulate decent-looking output at normal viewing distances. The dots don't change, they're the basic component used to create output. At different pixel resolutions, more or less of them are used to create each pixel. Regardless of the printed pixel resolution, under magnification, you'll be viewing the contents of the secret sauce.
Printer DPI (dots per inch) and image resolutions, measured in PPI (pixels per inch) -- confusingly enough too many sources use DPI for this also, even though they shouldn't -- are not the same, nor are they equivalent.
With one exception (see below), when printing greyscale or colour images, you do not need one pixel for every dot a printer can print in order to have ooptimum quality. As harrymc pointed out, in the case of colour or grayscale images, 300 PPI is usually enough. The increase in printer resolution merely means you have access to more shades of gray as pointed out by the formula in the first answer in the link (
(Output Resolution / Screen Frequency)^2 + 1 = Gray Levels) provided in the question.
The exception is line art which you want to save as a bitmap (not the file format, the bit depth), where every pixel is either black or white and cannot be any other colour. In the case of line art, you ideally want to match the printer's resolution. That said a line 1/1200th of an inch wide is thin indeed and finer detail is probably wasted on anyone looking at the image at a normal viewing distance (40-60 cm) since it roughly matches the human eye's acuity (see this answer). So 1200 PPI is usually enough for line art.
Dots per inch (DPI) is :
Dots per inch (DPI, or dpi) is a measure of spatial printing or video or image scanner dot density, in particular the number of individual dots that can be placed in a line within the span of 1 inch (2.54 cm).
DPI is a measure of how many dots in an inch, or in other words the quality of the image. A higher DPI helps when you are printing the image on a larger surface, such as a high-quality printer, to avoid pixels being "smeared".
The DPI has effect when the image is created, usually by a scanner, or in your case Matlab. Changing it afterward makes no sense.
The DPI is a property of the entire image and has no horizontal or vertical components.
You may specify any DPI that works with your printer. The default is usually 300, but for a high-quality printer 600 or 1200 is enough.
You may have meant resolution rather than DPI, and in this case the best one is the one that matches the printer,
The print quality also depends on the program you are using for the print, as well as on the printer being set to high quality print.
I know I'm way late to this party and you've all likely figured it out but I'm gonna bump this necro thread for the sake of anyone else looking for information.
The source of confusion here is that everyone seems to be using the term DPI to describe both the amount of dots of ink a printer can produce on physical paper, and the pixel density of the digital image they are trying to print.
This is wrong, and why people are confused and asking was 4800 x 1200 DPI equals to in terms of their software (which is a single number).
DPI is for printers ONLY. It is how many tiny dots make up each "pixel" when printed to paper. PPI refers to pixels per inch and is how much individual pixel data is recorded / used in the digital image. People are saying DPI when they mean PPI when they talk about their digital image resolution. These 2 are not interchangeable nor related although many software engineers have misused the terms in their UI design leading to this misrepresentation.
if your picture is 10 inches wide at 100 PPI and you change the PPI to 300 then likely you will see your image resize to 1/3 the size on your screen down to 3.33 inches. If your image only has 1000 pixels across then at 100 / inch it would need to be 10" wide, but if you are now going to use 300/inch (which does not change the resolution as you still have 1000 pixel) then this can be achieved in 1/3 the space since you've essentially just pushed everything closer together. This can actually cause a LOSS of clarity when it comes time to print depending what dimensions the printed product is created with.
Basically the PPI setting in your software is meaningless and you can only determine optimal PPI if you know the size of the image to be printed - also it will not change the resolution of the displayed image. An image that is 72ppi vs 300ppi digitally are exactly the same, although some people seem to think that one is "hi res" and the other is "low res".
Here's a link I found that explains things fairly well if you need more information on the subject: http://www.rideau-info.com/photos/faq.html