IXpsFixedDocumentWriter 接口
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
定义用于编写 FixedDocument 的方法和属性。
public interface class IXpsFixedDocumentWriter : System::Windows::Xps::Packaging::IDocumentStructureProvider
public interface IXpsFixedDocumentWriter : System.Windows.Xps.Packaging.IDocumentStructureProvider
type IXpsFixedDocumentWriter = interface
interface IDocumentStructureProvider
Public Interface IXpsFixedDocumentWriter
Implements IDocumentStructureProvider
- 实现
示例
以下示例演示如何使用 AddFixedDocument 方法获取用于将内容添加到 FixedPage 的 XpsDocument固定文档编写器。
// ------------------------- AddPackageContent ----------------------------
/// <summary>
/// Adds a predefined set of content to a given XPS document.</summary>
/// <param name="xpsDocument">
/// The package to add the document content to.</param>
/// <param name="attachPrintTicket">
/// true to include a PrintTicket with the
/// document; otherwise, false.</param>
void AddPackageContent (XpsDocument^ xpsDocument, bool attachPrintTicket)
{
try
{
PrintTicket^ printTicket = GetPrintTicketFromPrinter();
// PrintTicket is null, there is no need to attach one.
if (printTicket == nullptr)
{
attachPrintTicket = false;
}
// Add a FixedDocumentSequence at the Package root
IXpsFixedDocumentSequenceWriter^ documentSequenceWriter = xpsDocument->AddFixedDocumentSequence();
// Add the 1st FixedDocument to the FixedDocumentSequence. - - - - -
IXpsFixedDocumentWriter^ fixedDocumentWriter = documentSequenceWriter->AddFixedDocument();
AddDocumentContent(fixedDocumentWriter);
// Commit the 1st Document
fixedDocumentWriter->Commit();
// Add a 2nd FixedDocument to the FixedDocumentSequence. - - - - - -
fixedDocumentWriter = documentSequenceWriter->AddFixedDocument();
// Add content to the 2nd document.
AddDocumentContent(fixedDocumentWriter);
// If attaching PrintTickets, attach one at the FixedDocument level.
if (attachPrintTicket)
{
fixedDocumentWriter->PrintTicket = printTicket;
}
// Commit the 2nd document.
fixedDocumentWriter->Commit();
// If attaching PrintTickets, attach one at
// the package FixedDocumentSequence level.
if (attachPrintTicket)
{
documentSequenceWriter->PrintTicket = printTicket;
}
// Commit the FixedDocumentSequence
documentSequenceWriter->Commit();
} catch (XpsPackagingException^ xpsException)
{
throw xpsException;
}
};// end:AddPackageContent()
// ------------------------- AddPackageContent ----------------------------
/// <summary>
/// Adds a predefined set of content to a given XPS document.</summary>
/// <param name="xpsDocument">
/// The package to add the document content to.</param>
/// <param name="attachPrintTicket">
/// true to include a PrintTicket with the
/// document; otherwise, false.</param>
private void AddPackageContent(
XpsDocument xpsDocument, bool attachPrintTicket)
{
try
{
PrintTicket printTicket = GetPrintTicketFromPrinter();
// PrintTicket is null, there is no need to attach one.
if (printTicket == null)
attachPrintTicket = false;
// Add a FixedDocumentSequence at the Package root
IXpsFixedDocumentSequenceWriter documentSequenceWriter =
xpsDocument.AddFixedDocumentSequence();
// Add the 1st FixedDocument to the FixedDocumentSequence. - - - - -
IXpsFixedDocumentWriter fixedDocumentWriter =
documentSequenceWriter.AddFixedDocument();
// Add content to the 1st document
AddDocumentContent(fixedDocumentWriter);
// Commit the 1st Document
fixedDocumentWriter.Commit();
// Add a 2nd FixedDocument to the FixedDocumentSequence. - - - - - -
fixedDocumentWriter = documentSequenceWriter.AddFixedDocument();
// Add content to the 2nd document.
AddDocumentContent(fixedDocumentWriter);
// If attaching PrintTickets, attach one at the FixedDocument level.
if (attachPrintTicket)
fixedDocumentWriter.PrintTicket = printTicket;
// Commit the 2nd document.
fixedDocumentWriter.Commit();
// If attaching PrintTickets, attach one at
// the package FixedDocumentSequence level.
if (attachPrintTicket)
documentSequenceWriter.PrintTicket = printTicket;
// Commit the FixedDocumentSequence
documentSequenceWriter.Commit();
}
catch (XpsPackagingException xpsException)
{
throw xpsException;
}
}// end:AddPackageContent()
' ------------------------- AddPackageContent ----------------------------
''' <summary>
''' Adds a predefined set of content to a given XPS document.</summary>
''' <param name="xpsDocument">
''' The package to add the document content to.</param>
''' <param name="attachPrintTicket">
''' true to include a PrintTicket with the
''' document; otherwise, false.</param>
Private Sub AddPackageContent(ByVal xpsDocument As XpsDocument, ByVal attachPrintTicket As Boolean)
Try
Dim printTicket As PrintTicket = GetPrintTicketFromPrinter()
' PrintTicket is null, there is no need to attach one.
If printTicket Is Nothing Then
attachPrintTicket = False
End If
' Add a FixedDocumentSequence at the Package root
Dim documentSequenceWriter As IXpsFixedDocumentSequenceWriter = xpsDocument.AddFixedDocumentSequence()
' Add the 1st FixedDocument to the FixedDocumentSequence. - - - - -
Dim fixedDocumentWriter As IXpsFixedDocumentWriter = documentSequenceWriter.AddFixedDocument()
' Add content to the 1st document
AddDocumentContent(fixedDocumentWriter)
' Commit the 1st Document
fixedDocumentWriter.Commit()
' Add a 2nd FixedDocument to the FixedDocumentSequence. - - - - - -
fixedDocumentWriter = documentSequenceWriter.AddFixedDocument()
' Add content to the 2nd document.
AddDocumentContent(fixedDocumentWriter)
' If attaching PrintTickets, attach one at the FixedDocument level.
If attachPrintTicket Then
fixedDocumentWriter.PrintTicket = printTicket
End If
' Commit the 2nd document.
fixedDocumentWriter.Commit()
' If attaching PrintTickets, attach one at
' the package FixedDocumentSequence level.
If attachPrintTicket Then
documentSequenceWriter.PrintTicket = printTicket
End If
' Commit the FixedDocumentSequence
documentSequenceWriter.Commit()
Catch xpsException As XpsPackagingException
Throw xpsException
End Try
End Sub
属性
DocumentNumber |
获取 FixedDocument 在 FixedDocumentSequence 中的位置(从零开始)。 |
PrintTicket |
设置 FixedDocument 的默认打印选项。 |
Uri |
获取 FixedDocument 的 URI。 |
方法
AddDocumentStructure() |
将 |
AddFixedPage() |
将新 FixedPage 添加到 FixedDocument 中。 |
AddThumbnail(XpsImageType) |
为 XpsThumbnail 添加 FixedDocument 图像。 |
Commit() |
刷新并关闭 FixedDocument 编写器。 |