Apache Fop 1.0을 사용하여 PDF 문서를 만듭니다. 기본적으로 FlateFilter를 사용하여 내용을 압축합니다. FOP는 커버 아래에 DeflaterOutputStream DEFAULT_COMPRESSION을 사용합니다. BEST_COMPRESSION으로 설정할 가능성을 찾지 못했습니다.PDF, Java with barcode4j 압축
pdf에는 Barcode4j 2.1에서 생성 된 일부 바코드가 포함되어 있습니다. 내가 생성 된 이미지가 매우 거대하고 보는 바와 같이 나는 그것을 압축 방법 어떤 정보를 발견하지 않았습니다 : 나는 (위의 기록 된 바코드 주사를 맵시 꾼에 flate를 사용하여 사용) PDF를 생성 할 경우
<fo:instream-foreign-object height="25pt" width="101pt">
<barcode:barcode xmlns:barcode="http://barcode4j.krysalis.org/ns" message="xxxxxxxx">
<barcode:code128>
<barcode:height>37pt</barcode:height>
<barcode:module-width>0.9pt</barcode:module-width>
<barcode:human-readable>
<barcode:placement>none</barcode:placement>
</barcode:human-readable>
</barcode:code128>
</barcode:barcode>
</fo:instream-foreign-object>
, 그때 내가 줄 수 단순한 winzip으로 pdf 크기를 30 퍼센트 늘릴 수 있습니다.
내 프로세스에서 더 나은 압축 알고리즘을 사용할 수있는 방법이 있습니까? pdf는 Acrobat Reader에서 열 수 있어야하므로 서버 쪽에서 압축하여 클라이언트 쪽에서 압축을 푸는 옵션이 아닙니다.
나는 이미지를 생성 할 수있는 barcode4j를 생성 할 수 있다고 생각하지만 어떻게해야하는지 알 수 없다.
업데이트 1 : 생성 된 바코드가 너무 큰 것 같습니다. pdf에는 3 페이지와 3 개의 바코드가 있습니다. 3 개의 바코드는 전체 pdf 크기의 약 50 %입니다.
감사
졸탄 기본 압축 설정과 최대 사이에 큰 차이가 없습니다
PDF의 바코드는 벡터 그래픽으로 표현할 수 있으므로 매우 작아야합니다. Barcode4j는 EPS를 생성 할 수 있습니다. PDF로 변환 할 수있는 방법이 있습니다. 그것은 많은 공간을 절약해야합니다. –
감사합니다. 문제는 barcode4j 때문일 수 있습니다. 3 개의 바코드는 15 킬로바이트입니다. – HamoriZ