All you'll need is an iPhone, iTunes and MP3 files.
- Open iTunes and select your favorite MP3 audio file.
- Right-click on this file in your library to bring up the context menu.
- Select Get Info. This will open a new dialogue box showing various details about the audio file. Select the Options tab.
- Check the boxes next to both Start Time and Stop Time and enter the times you want your new ringtone to start and stop (the maximum length is 40 seconds) then click OK. This will return you to your music library.
- Right-click on the same music file again and this time select Convert Selection to AAC. iTunes will process this briefly and insert the new ringtone-sized file under the original file in your library.
- Right-click on the newly created file and select: "Show in Windows Explorer (or Finder on a Mac)"
A new dialogue box will open showing you the location of this file. Select the file and rename it, changing the file extension from ".m4a" to ".m4r". Windows will warn you that this change may make the file unstable, but continue anyway.
Back in iTunes, delete the ringtone file you've created from your library, then import the renamed ".m4r" file into your library. Connect your iPhone and sync your playlist. You may have to manually drag the .m4r file into the Ringtones section on your iPhone. With your iPhone synced this file is now ready to be used as a ringtone.