고해상도 PDF 파일을 Google 서버에 업로드하려고하지만 더 작은 PDF 파일 크기를 생성하여 dpi 해상도를 줄임으로써 웹 응용 프로그램에 빠르게로드합니다.iTextSharp로 PDF의 dpi 해상도를 줄일 수 있습니까?
iTextSharp가 할 수있는 것입니까? 아니면 이것을 달성 할 수있는 또 다른 자유 소프트웨어가 있습니까?
고해상도 PDF 파일을 Google 서버에 업로드하려고하지만 더 작은 PDF 파일 크기를 생성하여 dpi 해상도를 줄임으로써 웹 응용 프로그램에 빠르게로드합니다.iTextSharp로 PDF의 dpi 해상도를 줄일 수 있습니까?
iTextSharp가 할 수있는 것입니까? 아니면 이것을 달성 할 수있는 또 다른 자유 소프트웨어가 있습니까?
PDF files, in general, do not have DPI. PDF 파일에 포함 된 래스터 이미지는 않습니다. 할 수있는 일은 PDF 파일에 포함 된 이미지를 추출하고 더 낮은 해상도로 크기를 조정 한 다음 다시 파일에 저장하는 것입니다.
iText in Action에이 주제에 대한 장이 있습니다.
Ghostscript는 자유 소프트웨어입니다 (원하는 경우). 원하는대로 PDF를 다운 샘플링 할 수 있습니다. 페이지에 삽입 될 수있는 픽셀 이미지를 다운 샘플링 할 수 있습니다.
모든 이미지를 72dpi로 다운 샘플링하는 예제 명령 줄 (144dpi 이상의 해상도가있는 경우). 나는 짧은 명령을 사용하지 것이다, 그러나 당신이 실험을 할 수 있도록 내가 의도적으로, 모든 잠재적으로 유용한 매개 변수를 열거하려고 :
gs \
-o downsampled.pdf \
-sDEVICE=pdfwrite \
-dColorImageDownsampleThreshold=2.0 \
-dGrayImageDownsampleThreshold=2.0 \
-dMonoImageDownsampleThreshold=2.0 \
-dColorImageDownsampleType=/Bicubic \
-dGrayImageDownsampleType=/Bicubic \
-dMonoImageDownsampleType=/Bicubic \
-dDownsampleColorImages=true \
-dDownsampleGrayImages=true \
-dDownsampleMonoImages=true \
-dColorImageResolution=72 \
-dGrayImageResolution=72 \
-dMonoImageResolution=72 \
-dAutoFilterColorImages=false \
-dAutoFilterGrayImages=false \
\
-dEncodeColorImages=true \
-dEncodeGrayImages=true \
-dEncodeMonoImages=true \
-dColorImageFilter=/DCTEncode \
-dGrayImageFilter=/DCTEncode \
-dMonoImageFilter=/CCITTFaxEncode \
input.pdf
당신이 모든 컬러 이미지 (즉,도 사람이다 다운 샘플링하려면 73dpi에서 144dpi로), -dColorImageDownsampleThreshold=1.0
을 사용하십시오 (Ghostscript의 기본값은 =1.5
입니다). 동일한 다른 * ImageDownsampleThreshold 설정으로갑니다. * ImageDownsampleTypes를 들어
- 당신은 또한 /Average
의 값 또는 그 대신 내 제안 /Bicubic
의 /Subsample
을 실험 할 수 있습니다. 물론 모노, 그레이 및 컬러 이미지 유형에 대해 해상도, 샘플링 유형 및 임계 값에 대해 서로 다른 설정을 자유롭게 사용할 수 있습니다.
YMS, 이미지 크기를 줄이지 않고도 파일 크기를 줄일 수있는 방법이 있습니까? – Akin