Skip to content
Snippets Groups Projects
pdfprint.m 1.54 KiB
Newer Older
function pdfprint(fname,xlab,ylab,lw,fs,res)
Andrew King's avatar
Andrew King committed
%
% FUNCTION pdfprint(fname,xlab,ylab,lw,fs)
%
% USAGE    pdfprint('test1','\theta','\eta',2,14)
%
% Prints current figure into pdf file. Sets papersize, fontsize, linewidth.
% See hardcoded settings.
% 

% Directory
fdir=[fname '.pdf'];
%fdir=['/Users/reischig/thesis/figures/' fname '.pdf'];


if ~exist('xlab','var')
  xlab=[];
end
if ~exist('ylab','var')
  ylab=[];
end
if ~exist('lw','var')
  lw=[];
end
if ~exist('fs','var')
  fs=[];
end
if ~exist('res','var')
  res=[];
end
if isempty(res)
  res=100;
end


% Fontsize
if ~isempty(fs)
  set(gca,'fontunits', 'points','fontsize',fs);   
Andrew King's avatar
Andrew King committed
  textobj = findobj('type', 'text');
  set(textobj, 'fontunits', 'points');
  set(textobj, 'fontsize', fs);
else
  fs=14;
end

% Labels
if ~isempty(xlab)
  xlabel(xlab,'fontunits', 'points','fontsize',fs);
Andrew King's avatar
Andrew King committed
end

if ~isempty(ylab)
  ylabel(ylab,'fontunits', 'points','fontsize',fs);
Andrew King's avatar
Andrew King committed
end

% Linewidth
if ~isempty(lw)
  lineobj = findobj('type', 'line');
  set(lineobj, 'linewidth', lw);
end


% Papersize
set(gcf,'units','centimeters','paperunits','centimeters','paperpositionmode','manual');
Andrew King's avatar
Andrew King committed
fpos=get(gcf,'position');

%%%%%%
papersize=[fpos(3) fpos(4)]; % width and height of figure
paperpos=[0 0 fpos(3) fpos(4)];
%%%%%%

%%%%%%
%papersize=[fpos(3)-2 fpos(4)];
%paperpos=[-1 0 fpos(3) fpos(4)];
%%%%%%


set(gcf,'paperposition',paperpos,'papersize',papersize);
Andrew King's avatar
Andrew King committed

% Resolution, fileformat
resin=sprintf('-r%d',res);
%print('-r200','-dpdf',fdir)
Andrew King's avatar
Andrew King committed

disp(['Figure saved in ' fdir]);
Andrew King's avatar
Andrew King committed

unix(['acroread ' fdir ' &']);
Andrew King's avatar
Andrew King committed

end