Near the bottom, there are several catch(Exception e) { throw e; } statements. Throwing exceptions in this manner will reset the stack trace, making debugging difficult. If you are just going to rethrow, don't bother catching at all. If you need to log, or something, use the "e" you caught, but just use the statement "throw;" to rethrow it.
In files like this: https://github.com/fpanaccia/Wkhtmltopdf.NetCore/blob/master/Wkhtmltopdf.NetCore/Implementation/GeneratePdf.cs
Near the bottom, there are several catch(Exception e) { throw e; } statements. Throwing exceptions in this manner will reset the stack trace, making debugging difficult. If you are just going to rethrow, don't bother catching at all. If you need to log, or something, use the "e" you caught, but just use the statement "throw;" to rethrow it.