The problem is that the last row and column are both translucent because the invisible translucent parts in the right and bottom side of the Bitmap are blended with the opaque pixels in the edges (or so I think):
|visible | |
| image | |
| invisible |
| borders |
A Bitmap with exaggerated borders
Those borders exist to make the dimensions of the Bitmap powers of two. Some hardware support non-power-of-two images and those are supported in OL2.0 (once again )
However, in usual hardware when you render the image at subpixel coordinates the borders of the image aren't clipped properly if there's borders around the image.
To prevent that, make the Bitmap one pixel wider and higher than it's supposed to be. Then render the tilemap so that you can't see any overlapping - thus you need to render the tilemap from bottom to up, right to left.