For Plot3D, here is a try and hope experts can improve it,
first for the plot profile
Rast1 = Rasterize[ Plot3D[Sin[x] Sin[y], {x, -4, 4}, {y, -3, 3}, PlotPoints -> 200, LabelStyle -> None, AxesLabel -> None, Axes -> False, Boxed -> False, ColorFunction -> Hue, BoxRatios -> {1, 1, 1.5}, ImagePadding -> 30, ViewPoint -> {1, -1.3, 0.5}, PlotTheme -> None, Mesh -> None], RasterSize -> 800, Background -> None, ImageSize -> 200] and then for axes and labels
Rast2 = Rasterize[ Plot3D[Sin[x] Sin[y], {x, -4, 4}, {y, -3, 3}, PlotPoints -> 10, LabelStyle -> {FontFamily -> "LM Roman 12", Black, FontSize -> 16}, AxesLabel -> (MaTeX[#, FontSize -> 17] &) /@ {"X", "Y"}, PlotStyle -> None, Mesh -> None, BoundaryStyle -> None, BoxRatios -> {1, 1, 1.5}, ImagePadding -> 30, ViewPoint -> {1, -1.3, 0.5}, PlotTheme -> "Detailed"], RasterSize -> 4000, ImageSize -> 200] finally, combine both
Overlay[{Rast2, Rast1}] 




