Jittery text crunched and not bottom-aligned from column_names_rot

The column text is jittery, meaning the individual letters are not bottom-aligned, and some are crunched together. I pasted the small-sized image here for convenience, but I have the same problem on the full-sized image I'm generating.
They look fine in the example in the documentation here: https://jokergoo.github.io/ComplexHeatmap-reference/book/a-single-heatmap.html?q=column_names_rot#dimension-names
Although I am using column_names_gp = gpar(fontsize = 8), when I comment it out, the problem remains (here I have also left the column names with underscores to test if the spaces were causing issues--which they weren't):

Thanks for making this amazing package!
Update: I've been trying to find a way to fix this or get around it, and if I draw() to a png, the text doesn't have this issue. Great! However, the legend in the second draw doesn't seem to be drawn to the png.
png("heatmap_test3.png", width=8, height=11, units="in", res=1200)
draw(ht_list)
draw(lgd, x = unit(27.5, "cm"), y = unit(0.5, "cm"), just = c("left", "bottom"))
dev.off()
This is the plot when you save the plot directly into a png file with small resolutions.
I suggest to save it into PDF instead.