2011-10-03 3 views
1

PDF 문서를 개별 페이지로 분할하고 특정 문자열에 대한 페이지를 살펴본 다음 PDF에서 새 PDF를 작성하는 pdfbox API를 사용하여 Java로 코드를 작성했습니다. 페이지에 문자열이 있습니다. 내 문제는 새 페이지를 저장할 때 글꼴이 손실된다는 것입니다. 방금 테스트 할 빠른 단어 문서를 만들었고 기본 글꼴은 calibri이었습니다. 프로그램을 실행하면 "오류가 있습니다."라는 메시지가 나타납니다. "포함 된 글꼴을 추출 할 수 없습니다 ..."그러면 글꼴이 다른 기본값으로 바뀝니다. .pdf와 함께 pdf를 분할했지만 글꼴을 잃어 버림

필자는 pdf에 배치 할 텍스트를 입력 할 때 글꼴을 변경하는 방법을 보여주는 많은 예제 코드를 보았지만 pdf 용 글꼴은 설정하지 않았습니다.

누구나이 작업을 수행하는 방법에 익숙하거나 (설명서/예제를 찾을 수있는 경우) 크게 감사하겠습니다.

편집

: 일부 샘플 코드

if (pageContent.indexOf(findThis) >= 0){ 
       PDPage pageToRip = pages.get(i); 
       >>set the font of pageToRip here 
       res.importPage(pageToRip); //res is the new document that will be saved 
      } 

그 어떤 도움이되는지 모르겠다을 포함하는 잊었지만 나는 그것을 포함 거라고 생각.

또한,이 변화는 PDF가 돋움 분할로 작성하면 모습입니다 :

left:calibri, right:what it changes to

참고 :이 nonissue이 될 수 있습니다, 그것은 파일에 사용되는 글꼴에 따라 달라집니다 그것은 처리되어야합니다. 나는 캘리 브리 외에도 몇 가지 시도를했고 잘되었다. How to extract fonts from a PDF에서

+0

캘리 브리 작품으로 변경하겠습니까? (당신이 본 예제 코드를 통해) 당신이 그것을 설정할 수 없기 때문에, 당신이 원하는 글꼴로 바꾸기 위해 그것을 내 사고와 비슷하게 설정해야합니다. –

+0

나는 당신이 말하는 것을보고는 있지만 내가 저장하고있는 글꼴의 글꼴을 변경하는 방법에 관한 문서를 찾을 수는 없습니다. 나는 단순히 pdf에서 페이지를 잘라서 새 문서에 넣는 것이다. 필자가 본 글꼴 변경 사항은 단지 문자열을 pdf에 추가하는 것입니다. – turbo

답변

0

: 당신은 실제로 PDF에서 글꼴을 추출 할 수 없습니다

이 글꼴은 완전히 내장되어 있지 경우에도 마찬가지입니다. 이것이 가능하지 않은 이유는 두 가지입니다.

• 대부분의 글꼴은 저작권으로 보호되며 추출기를 사용하는 것은 불법입니다.

• 글꼴이 PDF에 포함되어있는 경우 글꼴 데이터가 모두 인 것은 아닙니다. 글꼴 외곽선 데이터는 물론 글꼴 너비 테이블 도 포함됩니다. 합자에 관한 데이터와 같은 기타 정보 인 은 PDF 내에서 관련이 없으므로 해당 데이터는 PDF로 묶이지 않습니다. 나는 어떤 글꼴 추출 도구에 대해서도 잘 모르고 있지만, 만약 당신이 하나의 글꼴을 가로 질러 이된다면, 위의 이유들로 인해이 유틸리티는 피해야한다는 것을 분명히해야합니다.

+0

대부분의 글꼴에서 그럴 것이라고 생각했지만 pdfbox에는 사용할 수있는 기본 글꼴이 있습니다. 또한 가져올 수있는 기능이 있습니다. 기본 글꼴을 사용하는 것이 좋을 것입니다. TNR을 좋아하지만 이상하고보기 흉한 것으로 전환하는 것입니다. – turbo

+0

이상하고보기 흉한 ...? 예제를 제공해 줄 수 있습니까? –

+0

원본 질문에 스크린 샷을 추가하겠습니다. 새 텍스트를 복사하여 단어에 붙여 넣으면 Arial이 표시되지만 분명히 그렇지 않거나 제대로 표시되지 않습니다. – turbo