2015-01-28 7 views
4

PNG to PDF로 변환하는 문제가 있습니다.줌 레벨 100 %에서 항상 열리는 PDF를 만들 수 있습니까?

사실 크기가 크지 않지만 내용이 큰 PNG 파일이 있습니다.

PDF 변환에서는 큰 PDF 파일을 만듭니다. 품질에 문제가 없지만 PDF 뷰어에서이 PDF를 열려고하면 "페이지에 맞춤"모드로 열립니다.

초기 뷰에서 생성 된 PDF를 볼 수 없지만 최대 100 % 확대해야합니다.

제 질문은 : 항상 줌 100 %에서 열리는 PDF를 만들 수 있습니까?

+0

당신이 샘플 PNG를 제공 할 수 있습니까? –

+0

PDF가 이미 * "페이지에 맞춤"모드로 열리는 경우 * "최대 100 % 확대 *"*해야하는 방법을 이해하지 못합니까? 페이지에 맞춤은 (자동) 확대/축소 수준에 있으므로 항상 전체 페이지가 표시됩니다. 100 % 확대/축소 기능을 사용하면 매우 작은 페이지 (원본 PDF 페이지의 작은 크기)를 볼 수 있고 페이지 내용의 일부만 볼 수 있습니다 (PDF 페이지의 큰 크기). –

+0

초기보기 모드에서 PDF에 설정된 내용을 무시하도록 대부분의 PDF 뷰어를 설정할 수도 있습니다. 당신은 말할 수 있습니다. Acrobat Reader는 항상 100 % 확대/축소로 파일을 엽니 다. * "환경 설정"* 메뉴를 찾으십시오 .... –

답변

4

Ghostscript를 사용하여 원하는 것을 달성 할 수 있습니다.

Ghostscript는 -c "...[PostScript code here]..."을 통해 PostScript 스 니펫을 명령 행 매개 변수에 삽입하는 기능을 지원합니다.

포스트 스크립트에는 pdfmark이라는 특수 연산자가 있습니다. 이 연산자는 대부분의 PostScript 인터프리터에서 이해할 수 없지만 PDF를 생성 할 때 Acrobat Distiller와 (대부분의 매개 변수에 대해) Ghostscript에 의해 이해됩니다.

그래서 당신은 PDF-> PDF 변환 고스트 명령 줄에

-c "[ /PageMode /UseNone /Page 1 /View [/XYZ null null 1] \ 
     /PageLayout /SinglePage /DOCVIEW pdfmark" 

삽입을 시도 할 수 있습니다.

이 미리보기와 관련된 다양한 기본 것들에 대해 메모를하시기 바랍니다 :

  1. 명령 행 조각의 내용은 [] 운영자/키워드에 대한 '불균형'이 될 것으로 보인다. 하지만 그렇지 않습니다! 초기 값은 최종 pdfmark 키워드와 균형을 이룹니다. '내부'[ ... ] 괄호가 원하는 페이지 /View 설정을 나타내는 배열 구분

  2. 을 - (...이 구문을 정의하지 않았다 묻지 마세요).

  3. 모든 PDF 뷰어가 PDF 파일에 포함 된보기 설정을 준수하지는 않습니다 (Acrobat 소프트웨어는 않습니다!).

  4. 대부분의 PDF 뷰어를 사용하면 PDF 파일에 포함 된보기 설정을 무시할 수 있습니다 (Acrobat 소프트웨어는이 작업도 수행합니다). 즉, 열리는 PDF 파일의 설정을 절대로 존중하지 않도록 뷰어에 지시 할 수 있습니다. 항상 "너비에 맞게"열어야합니다.이 코드에 대한

일부 특정 일 :

  1. 페이지 모드 /UseNone 의미 : 북마크 나 축소판이없는 문서가 표시됩니다. 그것은 (또한 디스플레이 북마크뿐 아니라 페이지)
    • /UseOutlines에 의해 대체 될 수
    • /UseThumbs (페이지의 썸네일 이미지뿐만 아니라 페이지
    • 를 표시
    • /FullScreen (전체 화면 모드에서 문서를 엽니 다)
  2. [/XYZ <left> <top> <zoom>] 같이 구성된 뷰 모드 배열 수단 : 줌 배율이 1 (= 100 %), 페이지 원점에서 좌측 거리 이전에 유지 수단 특수 '널 (Null) 값이며 사용자 설정 값, 페이지 원점으로부터의 최상위 거리 또한 'null '. 이 배열은 (현재의 윈도우 사이즈에 페이지를 적응)
    • /Fit 의해 대체 될 수
    • /FitB
    • /FitH <top>' (to adapt the page width to the current window width);가 '페이지에서 필요한 거리를 나타낸다 (현재의 윈도우 사이즈로 표시 페이지 콘텐츠를 적응) 원점은 창 상단으로
    • ... 여러 다른 사람 지금 기억이 안납니다. , 고스트 스크립트 명령이 일 경우

      gs                \ 
          -o out.pdf             \ 
          -sDEVICE=pdfwrite            \ 
          -c "[ /PageMode /UseNone /Page 1 /View [ /XYZ null null 1 ] " \ 
          -c " /PageLayout /SinglePage /DOCVIEW pdfmark"    \ 
          -f in.pdf 
      

      확인하는 텍스트 편집기에서 PDF를 열 : 그래서

는 다음 작업을 수행 할 수있는, 기존의 PDF 파일의 설정을 변경하려면 바이너리 파일을 처리 할 수 ​​있습니다. /View 또는 /PageMode 키워드를 검색하여 값이 PDF 루트 객체에 삽입되어 있는지 확인하십시오.

제대로 작동하면 PDF 뷰어에서 설정을 준수하는지 확인하십시오. 추천하지 않으면 시청자 환경 설정에서 우선 적용 설정이 있는지 확인합니다.

샘플 PDF를 신속하게 테스트 해 보았습니다. 여기에 PDF 루트 객체의 사전 pdf-parser.py의 도움으로 확인 지금 모습입니다 : ': PDF pdfmark 참조 파일 형식'을

pdf-parser-beta.py -s Catalog a.pdf 
obj 1 0 
    Type: /Catalog 
    Referencing: 3 0 R, 9 0 R 

    << 
    /Type  /Catalog 
    /Pages  3 0 R 
    /PageMode /UseNone 
    /Page  1 
    /View  [/XYZ null null 1] 
    /PageLayout /SinglePage 
    /Metadata 9 0 R 
    >> 

에 대한 구글의 pdfmark 연산자에 대한 자세한 내용은. 다른 곳은 Adobe 웹 사이트에서 찾을 수있을 것입니다 : 당신이 그것을 원하는대로, 당신은 정의 파일을 해킹 할 수 있습니다 ImageMagick이는 PDF를 만들 수 있도록하기 위해

당신의 대표단 설정.이 항목에 대한 자세한 도움말을 보려면 여기 예를 들어, 참조 :

0

PDF 사양에서는 다음과 같은 방법으로이 기능을 지원합니다. 첫 번째 페이지로 이동하는 GoTo 동작을 만들고 확대/축소 수준을 100 %로 설정 한 다음 해당 동작을 문서 열기 동작으로 설정합니다.
PDF 파일을 만드는 데 사용하는 도구에 따라 실제로 실제 구현되는 방법이 다릅니다. ImageMagick이 이러한 작업을 생성 할 수 있는지 여부는 알 수 없습니다.

+0

답장을 보내 주셔서 감사합니다. 예제를 제공 할 수 있습니다. 어떻게하면 이것을 pdf로 만들 수 있습니까? –

+0

PDF 파일을 만들 때 어떤 도구를 사용합니까? – iPDFdev

+0

PDF 작업이 필요하지 않다고 생각합니다. 페이지의 PageMode 설정은 Kurt Pfeifle이 제안한대로 원래 크기로 설정해야합니다. – gn1