2012-12-21 4 views
1

우리는 ABCpdf 소프트웨어를 사용하고 최근에 일부 문서에 러시아어 번역 옵션을 추가했습니다. PDF의 대부분의 내용은 AddImageURL 메소드를 사용하여 웹 페이지에서 가져온 것입니다. 이 모든 것은 잘 작동합니다. 즉, 러시아 텍스트는 읽을 수 있습니다.러시아어 (키릴 문자) 텍스트를 추가 할 때 ABCPdf .EmbedFont가 작동하지 않습니다.

그러나 우리는 ABCpdf의 AddText 메소드를 사용하여 페이지 아래쪽에 정확하게 위치해야하는 몇 개의 텍스트 섹션을 가지고 있습니다. 이 문자열은 ????????로 표시됩니다. 생성 된 PDF에서. 여기

가 빠른 코드 예제입니다 :

Doc pdfDoc = new Doc(); 
//snip snip snip... 

//add footer text 
pdfDoc.Rect.SetRect(30, 30, 552, 10); //footer section 
pdfDoc.HPos = 0; //set horizontal position to left 
pdfDoc.AddText(GetRussianString("REFERENCE") + " #" + ReferenceID); 

Websupergoo의 사이트에있는 문서를 읽은 후, 나는 AddFont과 EmbedFont (별도 함께)를 사용했지만,이 작동하지 않았다 :

pdfDoc.Font = pdfDoc.EmbedFont("Times-Roman", LanguageType.Unicode); 

나는 또한 문서 수준에서 인코딩을 설정하는 방법을 찾았으며 적어도 버전 8에서는이 문서를 찾지 못했습니다. 우리는 현재 ABCpdf 소프트웨어 8.11.2를 사용하고 있습니다.

누구나 성공적으로 이와 같은 작업을 했습니까?

+0

흠, 확인, 페이지가 cp1251 인코딩으로 코딩되었을 수 있습니다. – Tebe

답변

0

좋아, (완전히 창피한) 대답은 내가 WebSuperGoo의 사이트에서 예를 들어 너무 리터럴했다는 것입니다. 내 개발/생산 기계에서 정확한 글꼴 이름을 사용해야했습니다.

pdfDoc.Font = pdfDoc.EmbedFont("Times New Roman", LanguageType.Unicode); 

명백한가? 예. 그러나 서둘러야 할 때 간과 될 수있는 것 중 하나이기 때문에 누군가 다른 사람이 걸릴 경우를 대비하여 여기에 답변을 게시 할 것입니다.

혼란 스러울 부분은 URL에서 추가 된 러시아어 텍스트가 문서에서는 괜찮 았지만 텍스트로 추가 된 콘텐츠가 아닙니다. abcPDF가 웹 페이지에서 가져온 인코딩에 따라 글꼴을 설정한다고 추측하고 있지만, 전체 PDF가 아닌 가져 오는 내용에만 영향을 미칩니다.

아무튼, gekannt와 다른 사람에게 감사드립니다.