In normalized device coordinates, where the center of the screen is at (0,0) and the screen ranges from -1 to 1 in both directions, the problem is trivial; you normalize the point with the absolute of the coordinate with largest magnitude.
norm = max(abs(object_pos.x), abs(object_pos.y));
target_pos.x /= norm;
target_pos.y /= norm;
You can also easily transform between your screen space coordinates by scaling and translation. To go to normalized device coordinates, subtract the coordinate of the center of the screen from the point to project and divide the x and y coordinates by half the width and height of the screen, respectively. To to to screen space coordinates you do the reverse; multiply by half the size of the window, and add the center of the screen.
object_pos -= center of screen;
object_pos.x /= .5*width;
object_pos.y /= .5*height;
// do the projection above here
target_pos.x *= .5*width;
target_pos.y *= .5*height;
target_pos += center of screen;