IXpsFixedPageWriter.AddFont 方法

定義

將新的 XpsFont 加入目前頁面。

多載

AddFont()

將新的 XpsFont 加入目前頁面。

AddFont(Boolean)

將新的模糊化 XpsFont 加入至目前頁面。

AddFont(Boolean, Boolean)

將新的模糊化或受限制的 XpsFont 加入至目前頁面。

備註

AddFont 將新的 XpsFont 加入至檔套件,並將它與目前的 FixedPage 建立關聯。

AddFont()

將新的 XpsFont 加入目前頁面。

public:
 System::Windows::Xps::Packaging::XpsFont ^ AddFont();
public System.Windows.Xps.Packaging.XpsFont AddFont ();
abstract member AddFont : unit -> System.Windows.Xps.Packaging.XpsFont
Public Function AddFont () As XpsFont

傳回

XpsFont

已新增的字型資源。

例外狀況

範例

下列範例示範如何使用 AddFont 方法,將字型資源新增至頁面。

// -------------------------- AddPageResources ----------------------------
Dictionary<System::String^,List<XpsResource^>^>^ AddPageResources (IXpsFixedPageWriter^ fixedPageWriter)
{
   // Collection of all resources for this page.
   //   Key: "XpsImage", "XpsFont"
   //   Value: List of XpsImage or XpsFont
   Dictionary<System::String^,List<XpsResource^>^>^ resources = gcnew Dictionary<System::String^,List<XpsResource^>^>();

   // Collections of images and fonts used in the current page.
   List<XpsResource^>^ xpsImages = gcnew List<XpsResource^>();
   List<XpsResource^>^ xpsFonts = gcnew List<XpsResource^>();

   try
   {
      XpsImage^ xpsImage;
      XpsFont^ xpsFont;

      // Add, Write, and Commit image1 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::JpegImageType);
      WriteToStream(xpsImage->GetStream(), image1);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image1 as a required resource.

      // Add, Write, and Commit font 1 to the current page.
      xpsFont = fixedPageWriter->AddFont();
      WriteObfuscatedStream(xpsFont->Uri->ToString(), xpsFont->GetStream(), font1);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font1 as a required resource.

      // Add, Write, and Commit image2 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::TiffImageType);
      WriteToStream(xpsImage->GetStream(), image2);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image2 as a required resource.

      // Add, Write, and Commit font2 to the current page.
      xpsFont = fixedPageWriter->AddFont(false);
      WriteToStream(xpsFont->GetStream(), font2);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font2 as a required resource.

      // Return the image and font resources in a combined collection.
      resources->Add("XpsImage", xpsImages);
      resources->Add("XpsFont", xpsFonts);
      return resources;
   } catch (XpsPackagingException^ xpsException)
   {
      throw xpsException;

   }
};// end:AddPageResources()
// -------------------------- AddPageResources ----------------------------
private Dictionary<string, List<XpsResource>>
        AddPageResources(IXpsFixedPageWriter fixedPageWriter)
{
    // Collection of all resources for this page.
    //   Key: "XpsImage", "XpsFont"
    //   Value: List of XpsImage or XpsFont
    Dictionary<string, List<XpsResource>> resources =
        new Dictionary<string, List<XpsResource>>();

    // Collections of images and fonts used in the current page.
    List<XpsResource> xpsImages = new List<XpsResource>();
    List<XpsResource> xpsFonts  = new List<XpsResource>();

    try
    {
        XpsImage xpsImage;
        XpsFont  xpsFont;

        // Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType);
        WriteToStream(xpsImage.GetStream(), image1);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image1 as a required resource.

        // Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont();
        WriteObfuscatedStream(
            xpsFont.Uri.ToString(), xpsFont.GetStream(), font1);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font1 as a required resource.

        // Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType);
        WriteToStream(xpsImage.GetStream(), image2);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image2 as a required resource.

        // Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(false);
        WriteToStream(xpsFont.GetStream(), font2);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font2 as a required resource.

        // Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages);
        resources.Add("XpsFont", xpsFonts);
        return resources;
    }
    catch (XpsPackagingException xpsException)
    {
        throw xpsException;
    }
}// end:AddPageResources()
' -------------------------- AddPageResources ----------------------------
Private Function AddPageResources(ByVal fixedPageWriter As IXpsFixedPageWriter) As Dictionary(Of String, List(Of XpsResource))
    ' Collection of all resources for this page.
    '   Key: "XpsImage", "XpsFont"
    '   Value: List of XpsImage or XpsFont
    Dim resources As New Dictionary(Of String, List(Of XpsResource))()

    ' Collections of images and fonts used in the current page.
    Dim xpsImages As New List(Of XpsResource)()
    Dim xpsFonts As New List(Of XpsResource)()

    Try
        Dim xpsImage As XpsImage
        Dim xpsFont As XpsFont

        ' Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType)
        WriteToStream(xpsImage.GetStream(), image1)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image1 as a required resource.

        ' Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont()
        WriteObfuscatedStream(xpsFont.Uri.ToString(), xpsFont.GetStream(), font1)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font1 as a required resource.

        ' Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType)
        WriteToStream(xpsImage.GetStream(), image2)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image2 as a required resource.

        ' Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(False)
        WriteToStream(xpsFont.GetStream(), font2)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font2 as a required resource.

        ' Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages)
        resources.Add("XpsFont", xpsFonts)
        Return resources
    Catch xpsException As XpsPackagingException
        Throw xpsException
    End Try
End Function ' end:AddPageResources()

備註

AddFont 將新的 XpsFont 加入至檔套件,並將它與目前的 FixedPage 建立關聯。

另請參閱

適用於

AddFont(Boolean)

將新的模糊化 XpsFont 加入至目前頁面。

public:
 System::Windows::Xps::Packaging::XpsFont ^ AddFont(bool obfuscate);
public System.Windows.Xps.Packaging.XpsFont AddFont (bool obfuscate);
abstract member AddFont : bool -> System.Windows.Xps.Packaging.XpsFont
Public Function AddFont (obfuscate As Boolean) As XpsFont

參數

obfuscate
Boolean

如果字型要模糊化,則為 true,否則為 false

傳回

XpsFont

已新增的字型資源。

例外狀況

範例

下列範例示範如何使用 AddFont 方法,將字型資源新增至頁面。

// -------------------------- AddPageResources ----------------------------
Dictionary<System::String^,List<XpsResource^>^>^ AddPageResources (IXpsFixedPageWriter^ fixedPageWriter)
{
   // Collection of all resources for this page.
   //   Key: "XpsImage", "XpsFont"
   //   Value: List of XpsImage or XpsFont
   Dictionary<System::String^,List<XpsResource^>^>^ resources = gcnew Dictionary<System::String^,List<XpsResource^>^>();

   // Collections of images and fonts used in the current page.
   List<XpsResource^>^ xpsImages = gcnew List<XpsResource^>();
   List<XpsResource^>^ xpsFonts = gcnew List<XpsResource^>();

   try
   {
      XpsImage^ xpsImage;
      XpsFont^ xpsFont;

      // Add, Write, and Commit image1 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::JpegImageType);
      WriteToStream(xpsImage->GetStream(), image1);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image1 as a required resource.

      // Add, Write, and Commit font 1 to the current page.
      xpsFont = fixedPageWriter->AddFont();
      WriteObfuscatedStream(xpsFont->Uri->ToString(), xpsFont->GetStream(), font1);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font1 as a required resource.

      // Add, Write, and Commit image2 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::TiffImageType);
      WriteToStream(xpsImage->GetStream(), image2);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image2 as a required resource.

      // Add, Write, and Commit font2 to the current page.
      xpsFont = fixedPageWriter->AddFont(false);
      WriteToStream(xpsFont->GetStream(), font2);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font2 as a required resource.

      // Return the image and font resources in a combined collection.
      resources->Add("XpsImage", xpsImages);
      resources->Add("XpsFont", xpsFonts);
      return resources;
   } catch (XpsPackagingException^ xpsException)
   {
      throw xpsException;

   }
};// end:AddPageResources()
// -------------------------- AddPageResources ----------------------------
private Dictionary<string, List<XpsResource>>
        AddPageResources(IXpsFixedPageWriter fixedPageWriter)
{
    // Collection of all resources for this page.
    //   Key: "XpsImage", "XpsFont"
    //   Value: List of XpsImage or XpsFont
    Dictionary<string, List<XpsResource>> resources =
        new Dictionary<string, List<XpsResource>>();

    // Collections of images and fonts used in the current page.
    List<XpsResource> xpsImages = new List<XpsResource>();
    List<XpsResource> xpsFonts  = new List<XpsResource>();

    try
    {
        XpsImage xpsImage;
        XpsFont  xpsFont;

        // Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType);
        WriteToStream(xpsImage.GetStream(), image1);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image1 as a required resource.

        // Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont();
        WriteObfuscatedStream(
            xpsFont.Uri.ToString(), xpsFont.GetStream(), font1);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font1 as a required resource.

        // Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType);
        WriteToStream(xpsImage.GetStream(), image2);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image2 as a required resource.

        // Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(false);
        WriteToStream(xpsFont.GetStream(), font2);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font2 as a required resource.

        // Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages);
        resources.Add("XpsFont", xpsFonts);
        return resources;
    }
    catch (XpsPackagingException xpsException)
    {
        throw xpsException;
    }
}// end:AddPageResources()
' -------------------------- AddPageResources ----------------------------
Private Function AddPageResources(ByVal fixedPageWriter As IXpsFixedPageWriter) As Dictionary(Of String, List(Of XpsResource))
    ' Collection of all resources for this page.
    '   Key: "XpsImage", "XpsFont"
    '   Value: List of XpsImage or XpsFont
    Dim resources As New Dictionary(Of String, List(Of XpsResource))()

    ' Collections of images and fonts used in the current page.
    Dim xpsImages As New List(Of XpsResource)()
    Dim xpsFonts As New List(Of XpsResource)()

    Try
        Dim xpsImage As XpsImage
        Dim xpsFont As XpsFont

        ' Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType)
        WriteToStream(xpsImage.GetStream(), image1)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image1 as a required resource.

        ' Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont()
        WriteObfuscatedStream(xpsFont.Uri.ToString(), xpsFont.GetStream(), font1)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font1 as a required resource.

        ' Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType)
        WriteToStream(xpsImage.GetStream(), image2)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image2 as a required resource.

        ' Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(False)
        WriteToStream(xpsFont.GetStream(), font2)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font2 as a required resource.

        ' Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages)
        resources.Add("XpsFont", xpsFonts)
        Return resources
    Catch xpsException As XpsPackagingException
        Throw xpsException
    End Try
End Function ' end:AddPageResources()

備註

AddFont 將具有選擇性模糊化的新 XpsFont 新增至檔套件,並將它與目前的 FixedPage 產生關聯。

obfuscate當您有法律義務將授權專屬字型模糊化時,請將 參數 true 設定為 。 雖然模糊化不會加密字型,但它會禁止解壓縮專屬字型,並針對其他用途個別安裝它們。

For more information about font obfuscation, see Section 2.1.7.3 "Embedded Font Obfuscation" in the XML Paper Specification (XPS).

另請參閱

適用於

AddFont(Boolean, Boolean)

將新的模糊化或受限制的 XpsFont 加入至目前頁面。

public:
 System::Windows::Xps::Packaging::XpsFont ^ AddFont(bool obfuscate, bool addRestrictedRelationship);
public System.Windows.Xps.Packaging.XpsFont AddFont (bool obfuscate, bool addRestrictedRelationship);
abstract member AddFont : bool * bool -> System.Windows.Xps.Packaging.XpsFont
Public Function AddFont (obfuscate As Boolean, addRestrictedRelationship As Boolean) As XpsFont

參數

obfuscate
Boolean

如果字型要模糊化,則為 true,否則為 false

addRestrictedRelationship
Boolean

若要防止任何使用該字型的文字遭到修改,則為 true,否則為 false

傳回

XpsFont

已新增的字型資源。

例外狀況

範例

下列範例示範如何使用 AddFont 方法,將字型資源新增至頁面。

// -------------------------- AddPageResources ----------------------------
Dictionary<System::String^,List<XpsResource^>^>^ AddPageResources (IXpsFixedPageWriter^ fixedPageWriter)
{
   // Collection of all resources for this page.
   //   Key: "XpsImage", "XpsFont"
   //   Value: List of XpsImage or XpsFont
   Dictionary<System::String^,List<XpsResource^>^>^ resources = gcnew Dictionary<System::String^,List<XpsResource^>^>();

   // Collections of images and fonts used in the current page.
   List<XpsResource^>^ xpsImages = gcnew List<XpsResource^>();
   List<XpsResource^>^ xpsFonts = gcnew List<XpsResource^>();

   try
   {
      XpsImage^ xpsImage;
      XpsFont^ xpsFont;

      // Add, Write, and Commit image1 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::JpegImageType);
      WriteToStream(xpsImage->GetStream(), image1);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image1 as a required resource.

      // Add, Write, and Commit font 1 to the current page.
      xpsFont = fixedPageWriter->AddFont();
      WriteObfuscatedStream(xpsFont->Uri->ToString(), xpsFont->GetStream(), font1);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font1 as a required resource.

      // Add, Write, and Commit image2 to the current page.
      xpsImage = fixedPageWriter->AddImage(XpsImageType::TiffImageType);
      WriteToStream(xpsImage->GetStream(), image2);
      xpsImage->Commit();
      xpsImages->Add(xpsImage);    // Add image2 as a required resource.

      // Add, Write, and Commit font2 to the current page.
      xpsFont = fixedPageWriter->AddFont(false);
      WriteToStream(xpsFont->GetStream(), font2);
      xpsFont->Commit();
      xpsFonts->Add(xpsFont);      // Add font2 as a required resource.

      // Return the image and font resources in a combined collection.
      resources->Add("XpsImage", xpsImages);
      resources->Add("XpsFont", xpsFonts);
      return resources;
   } catch (XpsPackagingException^ xpsException)
   {
      throw xpsException;

   }
};// end:AddPageResources()
// -------------------------- AddPageResources ----------------------------
private Dictionary<string, List<XpsResource>>
        AddPageResources(IXpsFixedPageWriter fixedPageWriter)
{
    // Collection of all resources for this page.
    //   Key: "XpsImage", "XpsFont"
    //   Value: List of XpsImage or XpsFont
    Dictionary<string, List<XpsResource>> resources =
        new Dictionary<string, List<XpsResource>>();

    // Collections of images and fonts used in the current page.
    List<XpsResource> xpsImages = new List<XpsResource>();
    List<XpsResource> xpsFonts  = new List<XpsResource>();

    try
    {
        XpsImage xpsImage;
        XpsFont  xpsFont;

        // Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType);
        WriteToStream(xpsImage.GetStream(), image1);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image1 as a required resource.

        // Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont();
        WriteObfuscatedStream(
            xpsFont.Uri.ToString(), xpsFont.GetStream(), font1);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font1 as a required resource.

        // Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType);
        WriteToStream(xpsImage.GetStream(), image2);
        xpsImage.Commit();
        xpsImages.Add(xpsImage);    // Add image2 as a required resource.

        // Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(false);
        WriteToStream(xpsFont.GetStream(), font2);
        xpsFont.Commit();
        xpsFonts.Add(xpsFont);      // Add font2 as a required resource.

        // Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages);
        resources.Add("XpsFont", xpsFonts);
        return resources;
    }
    catch (XpsPackagingException xpsException)
    {
        throw xpsException;
    }
}// end:AddPageResources()
' -------------------------- AddPageResources ----------------------------
Private Function AddPageResources(ByVal fixedPageWriter As IXpsFixedPageWriter) As Dictionary(Of String, List(Of XpsResource))
    ' Collection of all resources for this page.
    '   Key: "XpsImage", "XpsFont"
    '   Value: List of XpsImage or XpsFont
    Dim resources As New Dictionary(Of String, List(Of XpsResource))()

    ' Collections of images and fonts used in the current page.
    Dim xpsImages As New List(Of XpsResource)()
    Dim xpsFonts As New List(Of XpsResource)()

    Try
        Dim xpsImage As XpsImage
        Dim xpsFont As XpsFont

        ' Add, Write, and Commit image1 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.JpegImageType)
        WriteToStream(xpsImage.GetStream(), image1)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image1 as a required resource.

        ' Add, Write, and Commit font 1 to the current page.
        xpsFont = fixedPageWriter.AddFont()
        WriteObfuscatedStream(xpsFont.Uri.ToString(), xpsFont.GetStream(), font1)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font1 as a required resource.

        ' Add, Write, and Commit image2 to the current page.
        xpsImage = fixedPageWriter.AddImage(XpsImageType.TiffImageType)
        WriteToStream(xpsImage.GetStream(), image2)
        xpsImage.Commit()
        xpsImages.Add(xpsImage) ' Add image2 as a required resource.

        ' Add, Write, and Commit font2 to the current page.
        xpsFont = fixedPageWriter.AddFont(False)
        WriteToStream(xpsFont.GetStream(), font2)
        xpsFont.Commit()
        xpsFonts.Add(xpsFont) ' Add font2 as a required resource.

        ' Return the image and font resources in a combined collection.
        resources.Add("XpsImage", xpsImages)
        resources.Add("XpsFont", xpsFonts)
        Return resources
    Catch xpsException As XpsPackagingException
        Throw xpsException
    End Try
End Function ' end:AddPageResources()

備註

AddFont 將具有選擇性模糊化或限制的新 XpsFont 加入至檔套件,並將它與目前的 FixedPage 建立關聯。

obfuscate當您有法律義務將授權專屬字型模糊化時,請將 參數 true 設定為 。 雖然模糊化不會加密字型,但它會禁止解壓縮專屬字型,並針對其他用途個別安裝它們。

如需字型模糊化和使用限制字型的詳細資訊,請參閱 XML 紙張規格 (XPS)

另請參閱

適用於