본문 바로가기

Web/PHP

pdf만들기

<?

// 주어진 문장을 주어진 위치를 기준으로하여 좌측으로 출력
function pdf_show_xy2($pdf,$arg,$fontsize,$x,$y)
{
        $len = strlen($arg);
        $len = $x - ($fontsize*$len);
        pdf_show_xy($pdf,$arg,$len,$y);
}


$pdf = pdf_new(); // 새로운 PDF 객체를 만든다.

pdf_open_file($pdf); // PDF 객체를 연다.

pdf_begin_page($pdf, 595, 842); // PDF 문서의 페이지 지정

// 넘겨받은 로고 이미지 처리
if( $logo ){
if ( !eregi(".jpg",$logo_name) ){

echo ("
<script>
window.alert('jpg 파일만 등록가능 합니다.');
        history.go(-1);
        </script>
        ");
        exit;
}
// 사용했던 임시 이미지파일이 존재하면 삭제
//unlink("./imsi.jpg");

exec ("mv $logo ./imsi.jpg");
chmod("./imsi.jpg", 0777 );
}


// 명함 테두리 이미지 출력
$pim = pdf_open_image_file($pdf, "jpeg", "name_box.jpg");
pdf_place_image($pdf, $pim, 100, 600, 1.2);
pdf_close_image($pdf, $pim);

// 로고 이미지 출력
$pim = pdf_open_image_file($pdf, "jpeg", "imsi.jpg");
pdf_place_image( $pdf, $pim, 120, 720, 1);
pdf_close_image($pdf,$pim);


// 이름 출력
pdf_set_font($pdf, "HYGoThic-Medium", 12, "KSC-EUC-H"); // 폰트 지정
pdf_show_xy2($pdf,$name,12,430,680); // 오른쪽 정렬하여 출력
// 직책 출력
pdf_set_font($pdf, "HYGoThic-Medium", 8, "KSC-EUC-H"); // 폰트 지정
pdf_show_xy2($pdf,$job,12,330,680); // 오른쪽 정렬하여 출력

// 주소 출력
pdf_set_font($pdf, "HYGoThic-Medium", 8, "KSC-EUC-H"); // 폰트 지정
pdf_show_xy($pdf, $addr, 220,650);
// 연락처 출력
pdf_set_font($pdf, "Helvetica", 8, "host"); // 영문폰트로 지정
pdf_show_xy($pdf, "tel : ".$tel, 220,640);
// email 출력
pdf_show_xy($pdf, "e-mail :".$email, 220,630);
// homepage 출력
pdf_show_xy($pdf, $homepage, 220,620);


//close it up
pdf_end_page($pdf); // 페이지의 끝
pdf_close($pdf); // PDF 객체를 닫음

$data = pdf_get_buffer($pdf); // PDF 객체로부터 문서의 내용을 $data 로 끌어온다.

// PDF 문서를 출력하기위한 마임타잎 설정
header('Content-type: application/pdf');
header('Content-disposition: inline; filename=name_print.pdf');
header('Content-length: ' . strlen($data));

// 실제 내용 출력
echo $data;

?>

'Web > PHP' 카테고리의 다른 글

스케줄 달력 (class.Calendar2.php)  (0) 2013.09.26
양력 -> 음력  (0) 2013.09.26
소수  (0) 2013.09.26
XMLParser  (0) 2013.09.26
제로보드->킴스보드 파일긁어서넣기  (0) 2013.09.26