Hello everyone!
A few posts back I made a promise of writing a guide to the bridge graphics. Well here it is.
Mind you, this is an 0.01 version

so any comments are welcome...
I attached an image which is a part of the trg1r.grf file, the original graphics, to make this explanation easier to understand. The numbers in () are examples (not exclusively) from the image.
Part I - generic bridge sprites
First of all, all the bridge types use the same on- and off-ramps (sprites 2437-2452, the maglev and monorail ones are stored elsewhere) EXCEPT the wooden bridge has one of it's own (2529-2554). The program recolors the edges according to the bridge colour.
The second most important thing is, that each bridge square contains two sprites. The reason for this is that a vehicle passing on the bridge will obscure the back sprite (ex. 2453), while get obscured by the front sprite (2455). The main problem with this, is that while the back sprite contains the running surface (ie. road/rail/mono/maglev) the front sprite is the same for all of them. So if you change the appearance of the front sprite all the bridges of that type will look like it. Although if you change the back sprite, only that type (ie. road/rail/etc) will change.
-edit- So if a roadset contains altered bridges for the roads, it must also contain altered bridges for rail/mono/maglev otherwise the graphics will look bad.
Third. The bridge sprites are recyled: all the suspension bridges (2453-2492), or all the cantilever (2507-2528) bridges use the same sprites, ttd just recolors them to yellow/gray/red/etc. I'm not sure yet, but I think it is their color that tells ttd what to change.
Fourth. The bridges have supports (2477-2484 for the suspension, also 2491-2492) which must be drawn properly if you want your brigde to be compatible with the higerbridges supports. I mean, if you drew the supports into the bridge sprites itself, then the bridges will always look 1 level high, thus ugly if built higher.
Part II - bridges in detail
Here I will go into detail on how the bridges are drawn from the sprites.
In part I stated that a bridge block consists of two sprites. From now on I'll use "blocks", meaning on square length of bridge.
1) Wooden bridges
are fairly easily built, because it only has one block (2545-2552), which is placed one after another, and it even has its own on/of ramp (2529-2544).
2) Steel girder bridges (2499 type and 2553 type)
also has one intermediate block, but uses the generic on/off ramp as all bridges from now on. (I think those blue holes in 2553-2556 are not needed, because 2557-2558 will obscure them, but I have never tested this assumption, so feel free to comment)
3) Concrete bridge
has one internal block too, but a VERY important issue is, that this block is used by the suspension bridge too, so it must fit with it (will explain later).
4) Cantilever steel, and tubular bridge
has three different internal blocks, on start/end on both endings (2507,2509), and an inermediate one (2508). The intermediate ones for the tubular look like ordinary tracks (2570-2573), but must not be confused with them... The cantilever bridges need the changeabe color, because there are 3 types of them, so this must be differentiated.
5) Suspension bridges
are the most complicated ones. They start/end with a special block (2453-2454) but then are dependant on the full length of the bridge (without ramps, just add 2 to get the full dragged length):
2: start(2453)-end(2454)
3: 2453-2487-2454 use of a one-block long connection between two pillars (2487)
4: 2453-2458-2457-2454
5: 2453-2458-2496-2457-2454 notice here the usage of the concrete bridge sprite (2496) which fits with the rest of the bridge, and also gets recolored
6: 2453-2458-2457-2458-2457-2454
from now on there is just an alternation in the bridge middle (2487 --> 2458+2457 --> 2458+2496+2457) while the ends are getting suspension blocks (2457+2458)
If you didn't understand all this, then go on and build bridges with increasing lengths, and you will...
I hope this helps in making new bridge graphics, and understanding the workings...
Szappy