When I resize my pdf figures and graphs I often find that the text in these figures become too small to read. Is there a way of ensuring that the font in figures match the body text?
You can include SVG images generated with Inkscape and process all the text inside Latex. The procedure is described in: "How to include an SVG image in LATEX". The following file illustrates the procedure.
You can also make free standing Inkscape/Latex graphics. Look at my answer "Need recommendations for a drawing tool in LaTeX"
Compile the file with
Make sure the Inkscape is in your path
In general, this should be possible quite comfortably with
I used to create my graphics in an "arbitrary" size and then happily scaled them with
Example (quick and dirty) 2
I took one of my graphics and scaled a copy of it - you see that the line widths and text sizes are identical, just the size of the graphics elements has changed.
As you can see by the greek "my" letters, the alignment of the text labels is important when scaling. The my's in the example are aligned on their baseline, so if you downscale the image, they approach the x axis. You could also set their vertical alignment to "top" which should avoid that behavior.
I'm not an expert for using IPE, so I'm not sure what is the best way to do it - you could ask a question in the mailing list http://old.nabble.com/Ipe---General-f1929.html. There are also options to make text labels scale with the graphics, but the standard option leaves them in their size.
Some advantages of
I've finally uploaded the example PDF file here (sorry for advertisement, be sure to click on the correct download button!!): link to pdf file
I've had a lot of success with the pgfplots package. It doesn't resize figures, but rather uses LaTeX and the pgf package to create the figures. It's been a while since I've used GnuPlot, but from what I can remember, the types of plots that pfgplots can create is very similar to what GnuPlot can create. For example, you can have it read in data from files, or you can specify functions to plot. There's even limited 3D plotting.
To me, the best part is that if you want to change the figure size, you simply add a command like "width=6cm", and the plot automatically resizes, but the fonts stay the same size. Also, if you have mathematical expressions in the labels, they will be typeset in the same font as your paper, giving a very nice, consistent look.