Google maps has a series of zoom levels - each one getting one step closer. You set your map height and width in pixels, and then the google maps api will load the appropriate map tiles to fill the provided window.
In effect, it doesn't allow you to stretch the map, and I believe at zoom 1, the google map of the world would be 256 px by 256 px.
Here is a nice overview explaining this a bit further:
http://troybrant.net/blog/2010/01/mkmapview-and-zoom-levels-a-visual-guide/
Also, if you're dropping pins dynamically in a webpage, you can use the api to add markers directly by their latitude and longitude. If you're working with an offline static image, then first, you should look at using the open source openstreetmaps data, as you'll may need a further license with Google. For openstreetmaps, you might look at using offline tool such as TileMill or mapnik for placing the markers? In any case - read up on projections - this will explain how latitude and longitude coordinates will correspond to the pixel position on the image.
You might also look through http://gis.stackexchange.com, which is specifically for map related questions.