2010-10-11 27 views
6

Tôi có một ứng dụng viết văn bản lên hình ảnh sử dụng System.Drawing (C#).Cách quản lý phông chữ tùy chỉnh trong ứng dụng web (system.drawing)

Tôi đang sử dụng phông chữ cụ thể để thực hiện việc này.

Vì tôi không thể dựa vào các máy chủ lưu trữ dùng chung để có tất cả phông chữ tùy chỉnh mà tôi có thể cần (và vì danh sách phông chữ có khả năng phát triển), làm cách nào để quản lý phông chữ được sử dụng cho ứng dụng của tôi?

Tôi có thể bao gồm các tệp .ttf trong dự án của mình và tham chiếu chúng bằng cách nào đó không?

Điều gì về cơ sở dữ liệu SQL chứa phông chữ?

+0

có thể trùng lặp của [phông chữ tải từ tập tin trên một ứng dụng C#] (http://stackoverflow.com/questions/544972/load-fonts-from- ứng dụng tập tin-trên-ac-sharp) –

Trả lời

12

Bạn có thể lưu trữ tệp phông chữ trên đĩa hoặc trong cơ sở dữ liệu, sau đó sử dụng lớp PrivateFontCollection để sử dụng phông chữ khi chạy.

Đây là cách bạn sẽ sử dụng nó:

PrivateFontCollection collection = new PrivateFontCollection(); 
    // Add the custom font families. 
    // (Alternatively use AddMemoryFont if you have the font in memory, retrieved from a database). 
    collection.AddFontFile(@"E:\Downloads\actest.ttf"); 
    using (var g = Graphics.FromImage(bm)) 
    { 
     // Create a font instance based on one of the font families in the PrivateFontCollection 
     Font f = new Font(collection.Families.First(), 16); 
     g.DrawString("Hello fonts", f, Brushes.White, 50, 50); 
    } 
Các vấn đề liên quan