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 在法律上强制模糊处理许可的专有字体时。 虽然模糊处理不会加密字体,但它会抑制解压缩专有字体并将其单独安装供其他用途使用。

有关字体模糊处理的详细信息,请参阅 XML 纸张规范 (XPS) 中的第 2.1.7.3 节“嵌入字体模糊处理”。

另请参阅

适用于

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)

另请参阅

适用于