diff --git a/internal/epub/core.go b/internal/epub/core.go index b6d7b1c..da0ff2c 100644 --- a/internal/epub/core.go +++ b/internal/epub/core.go @@ -247,7 +247,9 @@ func (e *ePub) Write() error { ext := filepath.Ext(e.Output) suffix := "" if totalParts > 1 { - suffix = fmt.Sprintf(" Part %02d of %02d", i+1, totalParts) + fmtLen := len(fmt.Sprint(totalParts)) + fmtPart := fmt.Sprintf(" Part %%0%dd of %%0%dd", fmtLen, fmtLen) + suffix = fmt.Sprintf(fmtPart, i+1, totalParts) } path := fmt.Sprintf("%s%s%s", e.Output[0:len(e.Output)-len(ext)], suffix, ext)