다음을 통해 공유


SharePoint 2013에서 검색 결과에 대한 간단한 PDF 미리 보기 만들기

최초 문서 게시일: 2012년 12월 21일 금요일

얼마 전에 이 질문이 떠도는 것을 보고 흥미롭다고 생각했습니다. 누군가가 SharePoint 2013에서 새롭게 제공되는 검색 결과 항목에 대한 멋진 축소판 그림 미리 보기에 대해 물어보았습니다. 그는 Microsoft Office 문서에 대한 미리 보기가 매우 마음에 들며 PDF 파일에 대해서도 그와 같은 미리 보기를 볼 수 있기를 바랬습니다. 이에 대한 답변이 있었고 좋은 답변이었습니다. Office Web Apps를 사용하여 PDF 파일을 렌더링하는 사용자 지정 WOPI 확장을 만들 수 있다는 것입니다. 하지만 이 방법의 단점은 완전 신뢰 코드를 사용하여 몇 가지 코딩 및 테스트 작업을 한 후에 OWA 팜에 배포하고 SharePoint 팜에서 새 WOPI 바인딩을 만들어야 한다는 것입니다. 요구 사항에 맞는 경우에는 전적으로 합리적인 방법입니다.

하지만 저는 시간과 비용을 최소화하는 것을 추구하기에 다른 방식을 사용해 보기로 결정했습니다. 번거로운 코딩 작업을 할 필요가 없도록 말입니다. 결국 Office 문서에 대한 검색 결과 미리 보기는 iFrame을 통해 이루어지기 때문이죠. PDF 문서에도 똑같이 해보면 되지 않을까요? 그래서 그렇게 했습니다. 다음은 PDF 문서에 대한 미리 보기 기능을 구현하기 위해 제가 수행한 작업입니다.

  1. 검색 센터 사이트에 가서 Item_PDF.html 사본을 다운로드했습니다. Item_PDF.html은 SharePoint 2013에서 PDF 항목에 대해 기본으로 제공되는 표시 서식 파일입니다. 이 파일을 다음과 같이 변경했습니다.
    1. 제목을 "PDF by Steve"로 바꾸었습니다.
    2. JavaScript의 hoverUrl 변수를 "~sitecollection/_catalogs/masterpage/Display Templates/Search/Item_Site_HoverPanel.js"로 바꾸었습니다.
  2. 이 파일을 PDF_Default.html로 저장하고 SharePoint 검색 센터 사이트로 돌아가서 사이트 설정...마스터 페이지 및 페이지 레이아웃...표시 서식 파일...검색을 선택하고 이 파일을 업로드했습니다.
  3. 다시 사이트 설정으로 돌아와 사이트 모음 관리 섹션에서 검색 결과 유형을 선택했습니다.
  4. 검색 결과 유형을 하나 만들어 다음과 같이 구성했습니다.
    1. 이름: PDF Viewer
    2. 일치해야 하는 콘텐츠 유형을 지정하세요: PDF
    3. 결과를 표시할 방법을 지정하세요: PDF by Steve

이게 전부입니다. 이제 여러분도 해 보실 수 있습니다. 여기서 한 가지 알려 드릴 사항은 1b 단계에서 표시 서식 파일이 사이트에 기본으로 제공되는 가리키기 패널을 사용하도록 구성했다는 점입니다. 표시 서식 파일이 iFrame을 사용하고 iFrame을 멋지게 렌더링하도록 구성했습니다. 즉, 가리키기 패널을 따로 만들 필요도 없었습니다. 여담인데, 사실 이 작업은 쉬면서 했습니다. 기본 제공되는 파일이 제가 만들어 낼 수 있는 것보다 훨씬 뛰어나 보였는데 고생할 필요가 있을까요, 어차피 그래픽적 미학은 제 소관이 아니니까요. 여기서 보시듯, 다 완료한 후 검색 결과에 PDF 문서에 대한 멋진 미리 보기가 표시되었습니다.

또한 여러분도 저처럼 시간과 비용을 최대한 안 들이고 싶어하실 것 같아 제가 사용한 표시 서식 파일을 첨부했습니다. :-) 여러분 모두 즐거운 크리스마스 보내시고 새해 복 많이 받으시길 바랍니다.

업데이트: 이 방식에 한 가지 큰 제한이 있는 것을 발견했습니다. 이 방식은 PDF 문서가 검색 센터와 동일한 호스트에 있는 경우에만 작동합니다. 간단한 예로 동일한 웹 응용 프로그램에 있어야 합니다. 예를 들어 검색 센터가 https://www.foo.com에 있고 PDF 문서가 https://www.bar.com에 있다면 미리 보기 항목으로 표시되지 않습니다. 이는 SharePoint에 새롭게 제공되는 일부 X-Frame-Options 헤더 때문입니다. SharePoint 2013에 대한 새로운 권장 사항을 따라 팜에 단일 웹 응용 프로그램을 사용하는 경우에는 문제 없지만, 여러 웹 응용 프로그램을 사용하거나 SharePoint 외부 사이트에서 콘텐츠를 크롤링하는 경우 PDF 문서가 미리 보기에 렌더링되지 않습니다.

이 밖에도 알려드릴 중요한 사항은 1) 미리 보기를 보는 컴퓨터에 Adobe Reader가 설치되어 있어야 하고, 2) Internet Explorer 이외의 브라우저에서는 이 방식이 작동하지 않는다는 보고를 하나 이상 받았다는 것입니다.

이 문서는 번역된 블로그 게시물입니다. 원본 문서는 Create An Easy PDF Preview for Search Results in SharePoint 2013을 참조하십시오.