2014-11-19 2 views
0

iTextSharp를 사용하여 Unity3D에서 보고서를 작성 중입니다. Unity에서 앱을 시작하면 PDF가 만들어지고 완벽하게 작동합니다. 하지만 Android 기기에 앱을 만들 때 글꼴을 만드는 데 문제가 있습니다.Unity3D가 Android에서 iTextSharp PDF를 만듭니다.

내가 보았 듯이
BaseFont bf = BaseFont.CreateFont(System.IO.Path.Combine(Application.streamingAssetsPath, "ADOBEARABIC-BOLD_0.OTF"), BaseFont.IDENTITY_H, false); 

는, 폰트 제작을위한 첫 번째 매개 변수가 글꼴의 경로입니다 : 여기에 내가 할 것입니다. 내 글꼴은 /Assets/StreamingAssets/ 폴더에 있습니다.

WWW 클래스로로드하려고하면 찾을 수 있지만 작성자에게만 경로를 지정하면 작동하지 않습니다.

내가 어떻게해야할까요? 또는 아랍어 문자를 지원하는 글꼴을 만드는 다른 방법이 있습니까?

편집 :

좋아, 어떻게 든 글꼴에 도착 처리했다. 우선은 APP의 루트에 Assets에서 글꼴을 복사

IEnumerator CopyFiles() 
    { 
     string fromPath = Application.streamingAssetsPath + "/"; 
     string toPath = Application.persistentDataPath + "/"; 
     string filesNamesToCopy = "ADOBEARABIC-BOLD_0.OTF"; 
     WWW www1 = new WWW(fromPath + filesNamesToCopy); 
      yield return www1; 
     File.WriteAllBytes(toPath + filesNamesToCopy , www1.bytes); 
    } 

을 그리고 내가 할 BASEFONT :

:

BaseFont bf = BaseFont.CreateFont(System.IO.Path.Combine(Application.persistentDataPath, "ADOBEARABIC-BOLD_0.OTF"), BaseFont.IDENTITY_H, BaseFont.EMBEDDED); 

지금 내가 시도는 안드로이드 장치에 구축 할 수있는 새로운 오류

ArgumentException : 인코딩 이름 'windows-1252'가 지원되지 않음 매개 변수 : 이름

답변

관련 문제