I don't know if this helps, but looking at the Google Maps API, you could try something like this:
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
function initialize() {
var latlng = new google.maps.LatLng(54,-3);
var myOptions = {
zoom: 9,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
</script>
</head>
<body onload="initialize()">
<div id="map_canvas" style="width:4000px; height:6000px"></div>
</body>
</html>
The key thing here is setting the width and height of map_canvas in pixels, so they exceed the size of your browser window. From here on, hopefully it's a question of getting your print settings right to print the whole image.