Asp.net uygulamasında bir data source kaynağını pdf olarak kaydetmek istedim, türkçe karakter problemi olmaması için arial unicode font'unu kullandım. Çalıştırınca "Document has no pages" şeklinde hata oluştu. Bu hata itextsharp kütüphanesinin pdf'i üretirken font yükleyememe, fontu okuyamama gibi sorundan olduğunu anladım. Sorunun düzelmesi için custom font'u itextsharp'a kayıt etmek gereklidir.
Örnek kod:
BaseFont baseFont = BaseFont.CreateFont(System.Web.HttpContext.Current.Request.PhysicalApplicationPath + @"Fonts\ARIALUNI.TTF", BaseFont.IDENTITY_H, false);
Font fontTimesForHeader = new Font(baseFont, 14, Font.NORMAL, BaseColor.BLACK);
Font font1 = new Font(baseFont, 8, Font.NORMAL, BaseColor.BLACK);
// font'u kaydetme
FontFactory.RegisterDirectory(
System.Web.HttpContext.Current.Request.PhysicalApplicationPath + @"Fonts", true);
FontFactory.Register(System.Web.HttpContext.Current.Request.PhysicalApplicationPath + @"Fonts\ARIALUNI.TTF", "Arial Unicode MS");
FontFactory.RegisterFamily("Arial Unicode MS", "Arial Unicode MS", System.Web.HttpContext.Current.Request.PhysicalApplicationPath + @"Fonts\ARIALUNI.TTF");
ARIALUNI.TTF font dosyasını asp.net uygulamasının ana klasörünün altına, Fonts diye klasör oluşturup, içine yerleştirdim.
C#, .NET, .Net Core
ASP.NET MVC, ASP.NET Web Forms, ASP.NET Core
HTML 5, CSS 3, Javascript, jQuery, Bootstrap
Entity Framework, NHibernate, Dapper
Sql Server, MySql, Oracle
Windows Server, Ubuntu, Debian, Pardus
Xamarin Forms, Android Studio
--- The future of the open web platform is looking very bright!
--- .NET is a free, cross-platform, open source developer platform for building any app.
Google Analytics İzleme
Kaydol:
Kayıt Yorumları (Atom)
Hiç yorum yok:
Yorum Gönder