예전부터 사용설명 영상이나 여러 글들에서 다룬 내용 입니다만, 몇몇 사이트에서 사용되는 사이트 플러그인(일명 ActiveX)들에서 모두의 프린터를 사용해서 PDF를 만들경우 출력 자체도 오래걸리고.. 매우 크고 열어보면 버벅거리는 PDF파일을 만들어 내는 경우가 있습니다.
최근까지도 그런 경우에 대해서 문의하시는 사용자 분들이 많습니다. 예를들어 어떤 사이트에서는 2~300페이지가 넘어가는 자료를 모프로 PDF를 만들어도 10메가도 안되고 바로바로 열리고 보는데도 아무 문제가 없는데 특정 사이트에서 모프로 PDF를 만들면 그 PDF들은 2~30페이지 정도 뿐이 안되는데 수백메가 용량에 PDF뷰어로 열어보면 여는데도 한참 페이지 한번 넘기는대도 버벅거리는 ..
매번 왜 그런일이 일어나는지에 대해서 장문의 답변을 할 순 없는 관계로 .. 그런 현상이 일어나는 원인에 대해서 말씀을 드리겠습니다.
수 없이 많은 글에서 모두의 프린터는 출력 데이터에 어떠한 작업도 하지 않고 수신 받은 데이터를 그대로 PDF로 만들어 줄 뿐이다 라고 강조를 하는데요..
그렇다면 그 특정 사이트들에서는 출력할 데이터를 어떤 식으로 생성하길래 타 사이트나 타 프로그램들 대비 무지막지한 PDF가 만들어 질까요?
근본적인 원인은 그들의 목적은 물리적 프린터로 종이에 출력을 하는 것이지 그 데이터가 그대로 다른 형태의 데이터로 변환될 것을 목표로 만들어진 프로그램이 아니기 때문입니다.
하나의 예를들어 보겠습니다.
최근에 받은 모 사이트의 문제의 문서는 단 10페이지 입니다만 변환된 PDF파일의 용량이 200메가를 넘어가고 변환전의 PS(PostScript)파일은 1기가를 넘어가는 어마무시한 경우였는데요..
이 파일을 분석하고서 기가 찼던것은 .. 출력에 사용된 원본 데이터 상에 이미지가 400장이 넘게 존재했습니다. 문제는 실제 이 10페이지에 표시되는 이미지는 4장 이었다는 것이죠.. 처음에는 실제 내용에 포함되지도 않은 이미지 데이터를 데이터 상으로만 추가시켜놓은 것인가? 라는 생각을 했습니다만 .. 찬찬히 원본을 뜯어보니 .. 같은 사이즈의 이미지가 동일 위치에 수십 수백장씩이 위로 겹쳐져 있었습니다. 결국 종이로 출력할 경우에는 맨 위의 이미지 한장만 찍히겠지만 그 뒤에 보이지 않는 수십 수백장의 이미지가 깔려 있었다는 것이지요.. 종이로 출력을 했을 경우에는 데이터가 크니 출력에 시간은 좀 걸릴지라도 결론적으로 아무 문제 없어 보일 수 있습니다만, 이게 데이터로써 오고가서 PDF로 변환이 된다 하면 PDF또한 실제 가려서 보이지 않는 수십 수백장의 이미지가 겹쳐진 상태로 데이터 변환을 하게 됩니다.
게다가 이미지의 크기자체도 엄청나게 큰 이미지를 문서 레이아웃에 맞춰서 줄여서 작성이 되어 있을뿐 실질적인 이미지해상도(크기)는 엄청나게 큰 것들이라, 단 10페이지 뿐이 안되는 PS데이터가 1기가가 넘어가고 PDF로 변환을 해도 200메가가 넘어가는 엄청난 놈이 탄생하게 되는겁니다.
위의 케이스는 정~~말 -_-;; 특이한 케이스구요.. 보통 많이 일어나는 원인은 다음에 말씀들일 케이스입니다.
보통 우리가 문서를 작성할때 단순히 워드 프로그램에서 제공하는 표기능 같은 단순한 형태로 만드는게 아니라 조금 신경써서 이쁘게 만든다고 이미지를 배경으로 사용하거나 타이틀 이미지를 사용 하는 경우가 많이 있습니다만..
문제의 PDF에서 이미지를 추출해보면 ..

이런 이미지가 있다 치면 .. 일반적으론 그냥 이렇게 한장의 이미지 데이터로써 존재를 하게 되는데요.. 이런 이미지가 포함된 PDF에서 이미지를 추출하면 온전한 한장의 이미지로 추출이 되는게 보통인데 이런 한장의 이미지를..

이런식으로 수십, 수백개의 이미지로 쪼갠다음에 이것들을 개별적으로 붙여서 한장의 이미지로 보여지도록 데이터가 구성됩니다. 애초에 이미지 크기자체가 엄청나게 큰 것들을 저런식으로 잘라서 데이터를 구성하게 되면 PDF파일의 크기가 커지는건 둘째치고 이 PDF파일을 열어서 보여줘야할 PDF뷰어 입장으로는 실제 화면 해상도보다 훨씬 큰 이미지를 문서의 레이아웃에 맞춰서 축소를 시키고 쪼개진 이미지를 각각 맞는 좌표에다가 배치해서 한장의 이미지 인냥 보여줘야 하겠지요..
위의 예는 진짜 새발의 피구요 .. 진짜 무슨 매우 작은 퍼즐조각 마냥 수천개의 이미지로 쪼개져서 하나의 이미지를 구성하는 경우도 봤습니다.
쉽게 생각해보세요 .. 광고판이 하나 있다 칩시다.. 그 광고판을 일정 시간마다 교체를 하는데 한장으로 되어 있는 광고판을 빼고 다른걸로 교체하는거랑 .. 수없이 많은 퍼즐로 쪼개진걸 가져와서 기존 광고 뻬고 한땀 한땀 퍼블을 맞춰 넣는거랑 ..
그런 이유로 크고 느리고 버벅거리는 PDF를 생산하는 경우들이 생기는겁니다.
아마도 원본 데이터를 구성하는 방법에서 어떤 이유가 있었을거라 생각 합니다만.. 문서 데이터 시스템의 관리나 운영적 측면에서 그런건지 ㅎㅎ 제가 만든게 아니니 정확한 원인은 알수 없지만요. 앞서 말씀 드렸듯이 애초에 종이에 출력될 것을 목적으로 만들어진 시스템이라 결론적으로 최종 결과를 놓고보면 이게 문제라고 말할 순 없는 문제입니다.
애초에 PDF같은 디지털 데이터로 만들 목적으로 생성, 관리되는 데이터들이 아니니까요. 그런 이유로 어떤 사이트에서 만들어진 PDF가 문제가 있다 하더라도 그 사이트 운영사 측에 항의나, 문제제기를 하거나 비난을 할 이유는 없습니다.
이러한 상황을 조금 해소할 몇가지 방법을 안내해 드리자면..
이전에 사용설명서 영상에도 제 블로그 다른글에도 언급했지만.. 이렇게 크고 느리고 버벅거리는 PDF가 생성되는 곳들중에 ..

이런식으로 ‘이미지로 인쇄’ 같은 옵션이 있으면 .. 체크 하세요.. 이 기능들은 보통 저렇게 이미지가 쪼개지던 문자가 쪼개지던 어쨌던 간에 한장의 이미지로 모든 데이터를 합친 후에 인쇄작업을 전달하게 됩니다. 그러면 위와 같이 수없이 쪼개지거나 하는 등의 문제가 없는 PDF를 얻으실 수 있습니다.
아니면..
이 글을 참고하셔서.. 모두의 프린터의 변환 옵션에서 변환 포멧을 PDF -> PDF_IMAGE로 변경 하시거나 ..
모두의 PDF로 PDF -> PDF_IMAGE 를 하시면 .. 어떤식으로 지랄같이 쪼개져 있더라도 각 페이지를 한장의 이미지로 만든 후에 PDF를 만들기 때문에 .. 버벅거리는 문제는 해소하실 수 있습니다.
이상입니다.