在 PDF 檔案中嵌入標準 Type 1 字體

本教學將引導您完成使用 Aspose.PDF for .NET 在 PDF 檔案中嵌入標準 Type 1 字體的過程。提供的 C# 原始程式碼演示了必要的步驟。

要求

在開始之前,請確保您具備以下條件:

  • Visual Studio 或電腦上安裝的任何其他 C# 編譯器。
  • Aspose.PDF for .NET 函式庫。您可以從 Aspose 官方網站下載它或使用 NuGet 等套件管理器來安裝它。

第 1 步:設定項目

  1. 在您首選的開發環境中建立一個新的 C# 專案。
  2. 新增對 Aspose.PDF for .NET 函式庫的參考。

步驟2:導入所需的命名空間

在要嵌入標準 Type 1 字型的程式碼檔案中,在檔案頂部新增以下 using 指令:

using Aspose.Pdf;

第三步:設定文檔目錄

在程式碼中,找到顯示以下內容的行string dataDir = "YOUR DOCUMENT DIRECTORY";並替換"YOUR DOCUMENT DIRECTORY"以及儲存文檔的目錄的路徑。

步驟 4:載入現有 PDF 文檔

使用以下命令載入現有 PDF 文檔Document建構函數並將路徑傳遞給輸入 PDF 檔案。

Document pdfDocument = new Document(dataDir + "input.pdf");

步驟 5:設定 EmbedStandardFonts 屬性

設定EmbedStandardFonts文檔的屬性true為了啟用嵌入標準 Type 1 字型。

pdfDocument.EmbedStandardFonts = true;

第 6 步:在每個頁面中嵌入字體

循環瀏覽 PDF 文件的每一頁並檢查字體是否已嵌入。如果沒有,請設定IsEmbedded財產給true嵌入字體。

foreach(Page page in pdfDocument.Pages)
{
     if (page.Resources.Fonts != null)
     {
         foreach(Aspose.Pdf.Text.Font pageFont in page.Resources.Fonts)
         {
             if (!pageFont.IsEmbedded)
             {
                 pageFont.IsEmbedded = true;
             }
         }
     }
}

步驟7:儲存更新後的PDF文檔

使用以下命令儲存更新的 PDF 文檔Save的方法Document對象,指定輸出檔案路徑。

pdfDocument.Save(dataDir + "EmbeddedFonts-updated_out.pdf");

使用 Aspose.PDF for .NET 嵌入標準類型 1Fonts 的範例原始碼

//文檔目錄的路徑。
string dataDir = "YOUR DOCUMENT DIRECTORY";
//載入現有的 PDF 文檔
Document pdfDocument = new Document(dataDir + "input.pdf");
//設定文檔的 EmbedStandardFonts 屬性
pdfDocument.EmbedStandardFonts = true;
foreach (Aspose.Pdf.Page page in pdfDocument.Pages)
{
	if (page.Resources.Fonts != null)
	{
		foreach (Aspose.Pdf.Text.Font pageFont in page.Resources.Fonts)
		{
			//檢查字體是否已嵌入
			if (!pageFont.IsEmbedded)
			{
				pageFont.IsEmbedded = true;
			}
		}
	}
}
pdfDocument.Save(dataDir + "EmbeddedFonts-updated_out.pdf");

結論

您已使用 Aspose.PDF for .NET 在 PDF 文件中成功嵌入標準 Type 1 字型。帶有嵌入字體的更新後的 PDF 檔案已保存在指定的輸出檔案路徑中。

常見問題解答

Q:本教程的重點是什麼?

答:本教學提供了使用 Aspose.PDF for .NET 程式庫在 PDF 檔案中嵌入標準 Type 1 字體的逐步指南。隨附的 C# 原始程式碼演示了必要的流程。

Q:我需要匯入哪個命名空間?

答:在要嵌入標準 Type 1 字型的程式碼檔案中,在檔案頂部包含以下命名空間:

using Aspose.Pdf;

Q:如何指定文檔目錄?

答:找到該線string dataDir = "YOUR DOCUMENT DIRECTORY";在代碼中並替換"YOUR DOCUMENT DIRECTORY"與文檔目錄的實際路徑。

Q:如何載入現有的 PDF 文件?

答:在步驟 4 中,您將使用以下命令載入現有的 PDF 文件:Document建構函數並提供輸入 PDF 檔案的路徑。

Q:這樣做的目的是什麼EmbedStandardFonts property?

答:在步驟 5 中,您將設定EmbedStandardFonts文檔的屬性true,啟用標準 Type 1 字型的嵌入。

Q:如何在每個頁面嵌入字體?

答:第 6 步驟涉及循環瀏覽 PDF 文件的每一頁。對於尚未嵌入的字體,您將設定IsEmbedded財產給true嵌入字體。

Q:如何儲存更新後的PDF文件?

答:在步驟 7 中,您將使用Save的方法Document物件保存更新的 PDF 文檔,指定輸出文件路徑。

Q:在 PDF 文件中嵌入字體有何意義?

答:嵌入字體可確保 PDF 中使用的字體包含在文件本身中。即使收件者的系統沒有安裝所需的字體,這也可以保證文字顯示的一致性。

Q:本教程的主要收穫是什麼?

答:透過學習本教學課程,您已經獲得了使用 Aspose.PDF for .NET 在 PDF 文件中嵌入標準 Type 1 字體的知識和技能。這可確保跨不同系統正確呈現文字。