IXpsFixedPageWriter.Commit 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
刷新并关闭固定页编写器。
public:
void Commit();
public void Commit ();
abstract member Commit : unit -> unit
Public Sub Commit ()
示例
以下示例演示如何使用 Commit 该方法刷新和关闭固定页编写器。
// ------------------------- AddDocumentContent ---------------------------
/// <summary>
/// Adds a predefined set of content to a given document writer.</summary>
/// <param name="fixedDocumentWriter">
/// The document writer to add the content to.</param>
void AddDocumentContent (IXpsFixedDocumentWriter^ fixedDocumentWriter)
{
// Collection of image and font resources used on the current page.
// Key: "XpsImage", "XpsFont"
// Value: List of XpsImage or XpsFont resources
Dictionary<System::String^,List<XpsResource^>^>^ resources;
try
{
// Add Page 1 to current document.
IXpsFixedPageWriter^ fixedPageWriter = fixedDocumentWriter->AddFixedPage();
// Add the resources for Page 1 and get the resource collection.
resources = AddPageResources(fixedPageWriter);
// Write page content for Page 1.
WritePageContent(fixedPageWriter->XmlWriter, "Page 1 of " + fixedDocumentWriter->Uri->ToString(), resources);
// Commit Page 1.
fixedPageWriter->Commit();
// Add Page 2 to current document.
fixedPageWriter = fixedDocumentWriter->AddFixedPage();
// Add the resources for Page 2 and get the resource collection.
resources = AddPageResources(fixedPageWriter);
// Write page content to Page 2.
WritePageContent(fixedPageWriter->XmlWriter, "Page 2 of " + fixedDocumentWriter->Uri->ToString(), resources);
// Commit Page 2.
fixedPageWriter->Commit();
} catch (XpsPackagingException^ xpsException)
{
throw xpsException;
}
};// end:AddDocumentContent()
// ------------------------- AddDocumentContent ---------------------------
/// <summary>
/// Adds a predefined set of content to a given document writer.</summary>
/// <param name="fixedDocumentWriter">
/// The document writer to add the content to.</param>
private void AddDocumentContent(IXpsFixedDocumentWriter fixedDocumentWriter)
{
// Collection of image and font resources used on the current page.
// Key: "XpsImage", "XpsFont"
// Value: List of XpsImage or XpsFont resources
Dictionary<string, List<XpsResource>> resources;
try
{
// Add Page 1 to current document.
IXpsFixedPageWriter fixedPageWriter =
fixedDocumentWriter.AddFixedPage();
// Add the resources for Page 1 and get the resource collection.
resources = AddPageResources(fixedPageWriter);
// Write page content for Page 1.
WritePageContent(fixedPageWriter.XmlWriter,
"Page 1 of " + fixedDocumentWriter.Uri.ToString(), resources);
// Commit Page 1.
fixedPageWriter.Commit();
// Add Page 2 to current document.
fixedPageWriter = fixedDocumentWriter.AddFixedPage();
// Add the resources for Page 2 and get the resource collection.
resources = AddPageResources(fixedPageWriter);
// Write page content to Page 2.
WritePageContent(fixedPageWriter.XmlWriter,
"Page 2 of " + fixedDocumentWriter.Uri.ToString(), resources);
// Commit Page 2.
fixedPageWriter.Commit();
}
catch (XpsPackagingException xpsException)
{
throw xpsException;
}
}// end:AddDocumentContent()
' ------------------------- AddDocumentContent ---------------------------
''' <summary>
''' Adds a predefined set of content to a given document writer.</summary>
''' <param name="fixedDocumentWriter">
''' The document writer to add the content to.</param>
Private Sub AddDocumentContent(ByVal fixedDocumentWriter As IXpsFixedDocumentWriter)
' Collection of image and font resources used on the current page.
' Key: "XpsImage", "XpsFont"
' Value: List of XpsImage or XpsFont resources
Dim resources As Dictionary(Of String, List(Of XpsResource))
Try
' Add Page 1 to current document.
Dim fixedPageWriter As IXpsFixedPageWriter = fixedDocumentWriter.AddFixedPage()
' Add the resources for Page 1 and get the resource collection.
resources = AddPageResources(fixedPageWriter)
' Write page content for Page 1.
WritePageContent(fixedPageWriter.XmlWriter, "Page 1 of " & fixedDocumentWriter.Uri.ToString(), resources)
' Commit Page 1.
fixedPageWriter.Commit()
' Add Page 2 to current document.
fixedPageWriter = fixedDocumentWriter.AddFixedPage()
' Add the resources for Page 2 and get the resource collection.
resources = AddPageResources(fixedPageWriter)
' Write page content to Page 2.
WritePageContent(fixedPageWriter.XmlWriter, "Page 2 of " & fixedDocumentWriter.Uri.ToString(), resources)
' Commit Page 2.
fixedPageWriter.Commit()
Catch xpsException As XpsPackagingException
Throw xpsException
End Try
End Sub
注解
根据方法的设置XpsSerializationManager以及XpsPackagingPolicyPackageInterleavingOrderFontSubsetterCommitPolicies方法的Commit刷新操作可能会延迟,直到关闭完成XpsDocument为止。