How do I put an image as texture on a triangular object?
Load  your image in a UV/image editor window, set the 3D viewport in a position that views the triangle from the top, go to edit mode, select all vertices, U to Unwrap and choose "project from view". Then, in the UV/image editor window you can Grab, Rotate, scale the UV map to fit exactly the part of the image you want in your flag. At the end of the process you will have to assign this image to the flag material as an image texture.