se non ho letto male, sprintf deve essere necessariamente istruito sul numero di campi da formattare, e come secondo argomento può prendere anche un array credo.
Potresti fare una cosa del genere:
Codice PHP:
$pdf = new PDF_Label('500');

     
$pdf->AddPage();
 
    
$text "";
     
     for(
$i 0$i count($labels['persona']); $i++)
     {                   
          if (
strlen($labels['tessera'][$i]) >0)
        {
            
$stringa='';
            
$stringa .= ($labels['tessera'][$i]!='')?$labels['tessera'].',':'';
            
$stringa .= ($labels['persona'][$i]!='')?$labels['persona'].',':'';
            
$stringa .= ($labels['presso'][$i]!='')?$labels['presso'].',':'';
            
/* e così via per gli altri campi */
            
$stringa=substr($stringa,0,-1);
            
$campi=explode(','$stringa);
            
$posizioni='';
            foreach(
$campi as $x) {
               
$posizioni.="%s\n";
            }        
            
            
$text sprintf($posizioni$campi);
            
$pdf->Add_Label($text);
        }


     }