anchor.diff:  image1(PID, FilePath, {W, H}) when is_integer(W), is_integer(H)->
       image1(PID, FilePath, {size,{W,H}});
   image1(PID, FilePath, {size,Size})->
  -    gen_server:call(PID, {image, FilePath, Size}, infinity).
  +    gen_server:cast(PID, {image, FilePath, Size}).
      % PID ! {image, FilePath, Size}.
   
   
   
   %% Internals
   append_stream(PID, String)->
  -    PID ! {stream, {append, String}}.
  +    gen_server:cast(PID, {stream, {append, String}}).
   
   
   
  
positive.code: %% Note page 1 is already created  by default and  current page set 
  %% to it after creation of PDF context.
  new_page(PID)->
      PID ! {page, {new, self()}},
      receive
  	{page,PageNo}->
  	    PageNo;
  	{'EXIT', PID, Reason} ->
  	    exit(Reason)
      end.
  
  page_script(PID, Script) ->
      PID ! {page_script, Script}.
  
  %% Go to a page already created.    
  set_page(PID, PageNo)->
      PID ! {page,{set, PageNo}}.
  
  %% Useful for page numbering functions etc.
  get_page_no(PID)->
      PID ! {page, {get_no, self()}},
      receive
  	{page,PageNo}->
  	    PageNo;
  	{'EXIT', PID, Reason} ->
  	    exit(Reason)
      end.
      
  %% --- Info -----
  
  set_author(PID,Author)->
      PID ! {info,{author, Author}}.
  
  set_title(PID,Title)->
      PID ! {info,{title, Title}}.
  
  set_subject(PID,Subject)->
      PID ! {info,{subject, Subject}}.
  
  set_date(PID,Year,Month,Day)->
      PID ! {info,{date, {Year,Month,Day}}}.
  
  set_keywords(PID, Keywords)->
      PID ! {info,{keywords, Keywords}}.
  
  
  %% --- Page ---
  
negative.code: 
  
  
  pdf_handle_info(I,{author,Author})->
      I#info{author=Author};
  pdf_handle_info(I,{title,Title}) ->
      I#info{title=Title};
  pdf_handle_info(I,{subject,Subject}) ->
      I#info{subject=Subject};
  pdf_handle_info(I,{date,{Year,Month,Day}})->
      I#info{creationDate={Year,Month,Day}};
  pdf_handle_info(I,{keywords,Keywords}) ->
      I#info{keywords=Keywords}.
  
  
  