2016-09-16 9 views
1

幅のサイズが高さのサイズよりも大きいレポートがあります(ランドスケープのように、フォーマット - >ページ形式のポートレットでポートレートに設定)。私はireportでプレビューすると、正常に動作しますが、PHPJasperXMLに読み込むと、その肖像画が横長ではありません(プレビューレポートと同じではありません)。私は、幅のサイズが高さのサイズよりも高い、ポートレートをポートレートに設定する必要があります。ありがとう。PHP Jasper XMLでページの向きを設定する方法

public function print($prid) { 
    $CI =& get_instance(); 
    $CI->load->database();   
    $server= $CI->db->hostname; 
    $db= $CI->db->database; 
    $user= $CI->db->username; 
    $pass= $CI->db->password; 
    $xml = base_url('reports/purchase_request.jrxml');   
    $this->load->library('PHPJasperXML'); 

    $this->phpjasperxml->arrayParameter=array('PRID'=> $prid); 
    $this->phpjasperxml->load_xml_file($xml); 
    $this->phpjasperxml->transferDBtoArray($server,$user,$pass,$db); 
    $this->phpjasperxml->outpage("I"); 
} 

これはPHPJasperXMLを搭載したレポートです:これはiReportはプレビューです This is report loaded with PHPJasperXML

This is preview in iReport

答えて

1

設定

jrxmlファイルを作成するとき、あなたは

を提供する必要が
orientation="Landscape" 

はさらにトップレベルjasperReportタグ内の他のすべてのパラメータ(等pageWidthpageHeightなど):

回転

<jasperReport name="MyReport" pageWidth="842" pageHeight="595" orientation="Landscape" ... 

ページを回転させる可能ありません単にpageWidthpageHeightをランドスケープに適した値に設定するだけです。私がsource codeで見たように、PHPJasperXMLはorientationもチェックします。

PHPJasperXMLはこれを解釈し、ページを正しく印刷します。

EDIT

ただ、それをより明確にする:PHPJasperXMLは、ページを回転させる何の機能も提供していません。報告書はその方向性を提示しなければならない。

+0

私は上記のPHPコードでページの向きを設定する方法を教えてください。私はポートレートに設定したい – wawan17

+0

PHPJasperXMLは 'jrxml'ファイルだけを解釈します。この設定を「覆す」ことはできません。 PHPJasperXMLには向きを設定する機能もありません。レポートの 'jrxml'ファイルを変更する必要があります。 – tobi6

関連する問題