Trích xuất giấy phép phông chữ nhúng

.NET API Solution to detect the licensing information of a font.

 

Giải pháp Aspose.Font API cho .NET có chức năng phong phú để làm việc với phông chữ. Chuyển đổi, thao tác glyph, tải lên và lưu phông chữ, và nhiều hơn nữa.

Phông chữ được coi là phần mềm, và như bất kỳ phần mềm nào, để sử dụng, nó cần được trả phí. Đúng, có một số phông chữ miễn phí nhưng phần lớn không phải. Vì vậy để sử dụng phông chữ mà không vi phạm bản quyền, bạn cần mua giấy phép.

Trang này mô tả cách mở giấy phép phông chữ trên ví dụ của phông chữ định dạng TrueType. Tất cả các đoạn mã còn lại về cách sử dụng giải pháp được đặt trong dự án GitHub Aspose.Font-Documentation . Ở đó bạn sẽ tìm thấy nhiều ví dụ mã C# hơn. Để xem giấy phép trong một phông chữ cùng với nhiều thông tin nhúng khác trực tuyến, hãy thử ứng dụng đa nền tảng của chúng tôi Font Metadata .

Để trích xuất giấy phép nhúng, chúng ta cần:

  • Aspose.Font cho .NET API, một API mạnh mẽ, giàu tính năng và dễ sử dụng cho việc thao tác và chuyển đổi tài liệu trên nền tảng C#.

  • Mở trình quản lý gói NuGet, tìm kiếm Aspose.Font và cài đặt. Bạn cũng có thể sử dụng lệnh sau từ Package Manager Console.

Package Manager Console Command


    PM> Install-Package Aspose.Font

Các bước để phát hiện liệu phông chữ có bao gồm thông tin cấp phép hay không bằng C#:

  1. Xác định phông chữ cần kiểm tra.
  2. Phát hiện thông tin cấp phép bằng cách sử dụng lớp LicenseFlags .

Mã C# để phát hiện thông tin cấp phép trong phông chữ

    using Aspose.Font.Ttf;
    //Font to check
    TtfFont font;
    LicenseFlags licenseFlags = null;
    if (font.TtfTables.Os2Table != null)
    {
        licenseFlags = font.TtfTables.Os2Table.GetLicenseFlags();
    }

    if (licenseFlags == null || licenseFlags.FSTypeAbsent)
    {
        Console.WriteLine(string.Format("Font {0} has no embedded license restrictions", font.FontName));
    }
    else
    {
        if (licenseFlags.IsEditableEmbedding)
        {
            Console.WriteLine(
                string.Format("Font {0} may be embedded, and may be temporarily loaded on other systems.", font.FontName)
                + " In addition, editing is permitted, including ability to format new text"
                + " using the embedded font, and changes may be saved.");
        }
        else if (licenseFlags.IsInstallableEmbedding)
        {
            Console.WriteLine(
                string.Format("Font {0} may be embedded, and may be permanently installed", font.FontName)
                + " for use on a remote systems, or for use by other users.");
        }
        else if (licenseFlags.IsPreviewAndPrintEmbedding)
        {
            Console.WriteLine(
                string.Format("Font {0} may be embedded, and may be temporarily loaded", font.FontName)
                + "  on other systems for purposes of viewing or printing the document.");
        }
        else if (licenseFlags.IsRestrictedLicenseEmbedding)
        {
            Console.WriteLine(
                string.Format("Font {0} must not be modified, embedded or exchanged in any manner", font.FontName)
                + " without first obtaining explicit permission of the legal owner.");
        }
    }



Câu hỏi thường gặp

1. Giấy phép phông chữ là gì?

Nó là một tài liệu để khai báo những gì có thể được thực hiện với phông chữ, hạn chế sử dụng, quyền hạn và bản quyền.

2. Bạn có cần cấp phép phông chữ không?

Như bất kỳ phần mềm nào khác, phông chữ được bảo vệ theo bản quyền và do đó chúng được cấp phép. Dù sao, một số phông chữ được cấp phép có thể được sử dụng miễn phí cho nhu cầu thương mại.

3. Tôi có thể sử dụng phông chữ thương mại không?

Có, phông chữ có thể được sử dụng thương mại trả phí hoặc miễn phí. Giấy phép cũng bao gồm các loại thông tin như vậy.

4. Làm thế nào để kiểm tra giấy phép phông chữ?

Để xem phông chữ có bao gồm thông tin giấy phép trực tuyến hay không, bạn có thể sử dụng ứng dụng Siêu dữ liệu phông chữ . Tại đó, bạn sẽ thấy những thông tin như Mô tả Giấy phép, Url Thông tin Giấy phép và Thông báo Bản quyền. Để có được những thông tin như vậy theo chương trình, bạn cần sử dụng các thuộc tính của Lớp LicenseFlag .