Here are two possibilities to make the Inset work in exactly the form you have it right now:
- Use the scale argument for
Inset and set it to Scaled[1]
- Use the
ImageSize option for the inset Graphics and set it to Full
Both have essentially the same effect of asking the inset object to fill out the enclosing graphic fully. Since Text doesn't usually resize, it only has the effect of removing any cropping around the text, as desired. You could also just specify a fixed but sufficiently large ImageSize in the inset Graphics but that would require manual adjustment.
Here is how you'd do that for the example:
Plot[Cos[t], {t, -32 Pi, 32 Pi}, AspectRatio -> 1/4, PlotRange -> All,
Axes -> True, ImageSize -> 600,
Epilog ->
Inset[Graphics@
Text[Style["a b c d e f g", FontSize -> 30]], {0, 0},
Automatic, Scaled[1]]]
Plot[Cos[t], {t, -32 Pi, 32 Pi}, AspectRatio -> 1/4, PlotRange -> All,
Axes -> True, ImageSize -> 600,
Epilog ->
Inset[Graphics[
Text[Style["a b c d e f g", FontSize -> 30]],
ImageSize -> Full], {0, 0}]]
You then can get additional cropping problems when the Inset position is moved too far down (or anywhere beyond the plot range). This is a different issue and can be resolved by either specifying a PlotRange that's larger than All, or (to be independent of the specific range) by adding the option PlotRangePadding:
Plot[Cos[t], {t, -32 Pi, 32 Pi}, AspectRatio -> 1/4,
PlotRange -> All,
Axes -> True,
ImageSize -> 600,
(* added padding to accomodate inset: *)
PlotRangePadding -> .5,
Epilog ->
Inset[Graphics[
Text[Style["a b c d e f g",
FontSize -> 30]]], {0, -1}, Automatic, Scaled[1]]]
