Let (S, d) be a finite metric space, where each element p ∈ S has a non-negative weight w(p). We study spanners for the set S with respect to weighted distance function dw, where dw(p, q) is w(p) + d(p, q) + w(q) if p = q and 0 otherwise. We present a general method for turning spanners with respect to the d-metric into spanners with respect to the dw-metric. For any given ε > 0, we can apply our method to obtain (5 + ε)-spanners with a linear number of edges for three cases: points in Euclidean space Rd , points in spaces of bounded doubling dimension, and points on the boundary of a convex body in Rd where d is the geodesic distance function. We also describe an alternative method that leads to (2 + ε)-spanners for points in Rd and for points on the boundary of a convex body in Rd . The number of edges in these spanners is O(n log n). This bound on the stretch factor is nearly optimal: in any finite metric space and for any ε > 0, it is possible to assign weights to the...