Assuming the font redistribution is legal, I would suggest that using XeLaTeX is the easiest way to ensure the portability. There are two possibilities:
Have users install the font
Since XeLaTeX can use any system font, and installing fonts on most systems is quite simple, the most robust solution would be to distribute the font, and have users install it using the regular methods for font installation (which I think on most systems involves dragging the file to the main Fonts folder.) If the font in question is already installed as a system font, all the better.
The advantages of this method are:
- It doesn't matter where in the system the document is, it will still compile correctly.
- Subsequent documents don't need to be distributed with the font.
- The font is loaded by its regular name.
- Different weights/faces of the font will automatically be available.
See the XeLaTeX answer to this question: How do I use a particular font for a small section of text in my document? for more details of font loading in XeLaTeX.
Load the font locally
If you really don't want users to have to install anything (or for administrative reasons they can't) it is possible for XeLaTeX to load fonts by filename. In this way the font can be in the same folder as the document (or some subfolder within it).
This method has the following disadvantages:
- The source file must remain in the same folder as the font (folder).
- The font must be distributed with each document.
- The font is loaded by filename, which may be different across platforms.
- Different weights/faces must be loaded separately.
A compromise solution if users have access to shared disk space would be to use this method but have the fonts in a shared location.
See Load fonts that are in a ./fonts directory for details on how to implement these solutions.