- Post in | WebDevelop/PHP
- Post at | 2007. 12. 5. 11:31 | by 쥬리엘
FPDF를 이용한 PHP로 PDF 만들기
<?php define('FPDF_FONTPATH', 'font/'); require('fpdf.php'); $pdf = new FPDF(); $pdf->p;AddPage(); $pdf->SetFont('Arial', 'B', 16); $pdf->Cell(40, 10, 'Hello World!'); $pdf->Output(); ?>
$pdf = new FPDF('P', 'mm', 'A4');P 대신 L을 쓰면 가로방향(landscape)으로 용지를 설정하며, 다른 용지크기(Letter 혹은 Legal)나 측정단위(pt, cm, in)를 설정할 수도 있습니다.
현재까지는 아직 페이지가 없는 상태입니다. 따라서 AddPage() 로 새 페이지를 추가해야 합니다. 좌표의 기준은 대게가 그렇듯이 왼쪽 상단을 기준으로 하고 기본값은 상단과 왼쪽에 1cm 씩 여백이 있습니다. 여백은 SetMargins() 로 변경할 수 있습니다.
글자를 출력하기 전에 반드시 SetFont() 로 글꼴을 정해줘야 합니다. 그렇지 않으면 문서가 제대로 생성되지 않습니다. 여기서는 Arial bold 16 을 값으로 줍니다.
$pdf->SetFont('Arial', 'B', 16);이탤릭을 주려면, 'I', 밑줄을 주려면 'U' 를 주거나 그냥 공백을 넘겨서 보통 모양으로 지정할 수 있습니다. 폰트 크기의 기준은 포인트입니다. 다른 폰트로는 Times, Courier, Symbol 등을 사용할 수 있습니다.
이제 Cell() 명령으로 셀을 출력합니다. 셀이라는 것은 사각형 모양의 영역으로 텍스트를 포함할 수 있습니다. 크기나 텍스트를 지정하는 것은 물론, 경계선을 그릴 것인지 셀 다음의 현재 위치는 어떻게 정해줄 것인지(오른쪽, 아래 혹은 다음줄 맨앞) 등을 설정해줄 수 있습니다. 셀로 (경계선이 있는) 프레임을 출력하려면 다음과 같이 합니다.
$pdf->Cell(40, 10, 'Hello World !', 1);중간정렬하는 새로운 셀을 추가하고 다음 위치를 다음줄로 옮기려면 다음과 같이 합니다.
$pdf->Cell(60, 10, 'Powered by FPDF.', 0, 1, 'C');추가 : 줄바꿈은 Ln() 으로도 할 수 있습니다. 이 메소드는 줄바꿈의 크기도 정해줄 수 있습니다.
끝으로, Output() 으로 문서를 브라우저로 출력합니다. 파일명과 해당값을 전달하면, 파일로 저장할 수도 있습니다.
경고: PDF 문서를 출력하기 전이나 후에 다른 어떠한 출력도 있어서는 안됩니다. 만약에 PDF 문서를 출력하기 전에 다른 출력이 먼저 있었다면 다음과 같은 에러가 발생합니다. "Some data has already been output to browser, can't send PDF file" PDF 문서를 출력한 이후에 다른 출력이 있었다면, 아마도 브라우저는 빈 페이지만 표시하게 될 것입니다.
'WebDevelop > PHP' 카테고리의 다른 글
재사용성을 높인 PHP 프레임워크 (0) | 2007.12.17 |
---|---|
register_globals on 과 off 의 차이점 (0) | 2007.11.27 |
$_FILES의 활용.. (0) | 2007.11.23 |