purtroppo la risposta è invece di dipendente dal linguaggio.

in C++ puoi ad esempio usare gli argomenti di default:

dichiarando la funzione in questo modo:

public static void ImgSaveToFile(Bitmap bmp, string immagineOutput, FormatoOutput formatoOutput, int compressione = 0);

così la funzione puo' essere chiamata nei due modi.

ImgSaveToFile(bmp, immagineOutput, formatoOutput);
ImgSaveToFile(bmp, immagineOutput, formatoOutput, compressione);

ovviamente devi controllare che l'utilizzatore non faccia porcate, nessuno gli vieta di passarti formatoOutput==JPEG ma senza compressione.