size_t fmt_pad(char *dest, const char *source,
size_t srclen, size_t padlen,
fmt_pad writes padlen-srclen spaces (if that number is positive) and then srclen characters from source. It truncates the output only if the length would exceed maxlen.
It returns the number of bytes it wrote.
fmt_pad does not append \0.
If dest equals FMT_LEN (i.e. is zero), fmt_pad returns the number of bytes it would have written.