인터넷 팁

PHP로 PDF 파일을 읽어 첫 페이지를 jpeg로 만드는 함수

페이지 정보

profile_image
작성자 관리자
댓글 0건 조회 2회 작성일 24-08-08 15:34

본문

PHP로 PDF 파일을 읽어 첫 페이지를 jpeg로 만드는 함수
function saveFirstPDFPageAsImage($file_name)
{
$img = new imagick();
// 아래 설정은 readImage 이전에 설정해야 정상동작함
$img->setResolution(180, 180);
$img->setCompressionQuality(80);

// PDF파일 경로가 안맞는 경우가 많으니 이 부분은 주의
// 파일명 뒤에 [0] 을 붙이면 첫 페이지를 나타냄
$img->readImage(realpath($file_name) . '[0]');

// 확장자를 안 떼고 뒤에 .jpg만 붙여 넣음(편의를 위해서 이렇게 함)
// 파일명이 test.pdf 인경우 결과 파일은 test.pdf.jpg임
$img->setImageFormat('jpeg');
$img->writeImage(realpath($file_name) . '.jpg');
$img->destroy();
}
 
1. setResolution 과 setCompressionQuality는 적절히 조절(저 정도면 A4를 썸네일 이미지로 보여주는데 큰 문제는 없었음)
2. setImageFormat('png') 로 하면 png파일도 생성 가능, png로 생성하면 자동으로 배경이 투명화 처리 됨
3. 메모리 관리를 위해서 destory()를 호출하는 것을 잊으면 안됨

출처: https://databook.tistory.com/78 [dirtybit의 외부기억장치:티스토리]

댓글목록

등록된 댓글이 없습니다.