I suspect that the pdf is generating the bars a little narrower than your html plot, and there is not enough room for the labels. Are you seeing a "Warning" in your log, such as ...
WARNING: The VBAR/VBAR3D chart for myfield1 could not be labeled because the labels are wider than the bars.
I don't have your data, but I created some mock-up data, and I was able to reproduce the problem (and a fix). The code below seems to work ok, once I added the "width=12" for the bars (depending on how many bars you have, etc, you might have to adjust the width to suit your data)...
-----
%let name=plt038;
data mydata;
input mygroupfield $ 1-6 myfield1 $ 8 myfield2;
datalines;
Group1 a 5
Group1 b 7
Group2 a 6
Group2 b 7
run;
GOPTIONS DEVICE=pdf;
options nodate nonumber;
ODS LISTING CLOSE;
ODS pdf file="&name..pdf" startpage=no;
proc gchart data=mydata;
vbar myfield1 / group=mygroupfield type=percent percent g100 freq=myfield2 width=12;
run;
quit;
ODS PDF CLOSE;
ODS LISTING;
Message was edited by: Robert Allison @ SAS