Canon SD940 IS has a
12.0MP 1/2.3-inch (6.17 x 4.55 mm ) sized CCD sensor and features Digic 4 processor. On the other hand, Nikon S2900 has a
20.0MP 1/2.3' (6.17 x 4.55 mm ) sized CCD sensor and features Expeed C2 processor.
Nikon S2900's sensor provides 8MP more than Canon SD940 IS's sensor, which gives a significant advantage in real life. You can print your images larger or crop more freely.
On the other hand, please keep in mind that Max sensor resolution is not the only determinant of resolving power. Factors such as the optical elements, low pass filter, pixel size and sensor technology also affects the final resolution of the captured image.
Below you can see the SD940 IS and S2900 sensor size comparison.
Canon SD940 IS and Nikon S2900 have the same sensor sizes so they will provide same level of control over the depth of field when used with same focal length and aperture. On the other hand, since Canon SD940 IS has 65% larger pixel area compared to Nikon S2900, it has potential to collect more light on pixel level hence have less noise in low light / High ISO images.