AnnotationDocumentPaginator Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет DocumentPaginator для печати документа вместе со связанными с ним заметками.
public ref class AnnotationDocumentPaginator sealed : System::Windows::Documents::DocumentPaginator
public sealed class AnnotationDocumentPaginator : System.Windows.Documents.DocumentPaginator
type AnnotationDocumentPaginator = class
inherit DocumentPaginator
Public NotInheritable Class AnnotationDocumentPaginator
Inherits DocumentPaginator
- Наследование
Примеры
В следующем примере показано использование AnnotationDocumentPaginator класса .
PrintDialog prntDialog = new PrintDialog();
if ((bool)prntDialog.ShowDialog())
{
// XpsDocumentWriter.Write() may change the current
// directory to "My Documents" or another user selected
// directory for storing the print document. Save the
// current directory and restore it after calling Write().
string docDir = Directory.GetCurrentDirectory();
// Create and XpsDocumentWriter for the selected printer.
XpsDocumentWriter xdw = PrintQueue.CreateXpsDocumentWriter(
prntDialog.PrintQueue);
// Print the document with annotations.
try
{
xdw.Write(_annotHelper.GetAnnotationDocumentPaginator(
_xpsDocument.GetFixedDocumentSequence()));
}
catch (PrintingCanceledException)
{
// If in the PrintDialog the user chooses a file-based
// output, such as the "MS Office Document Image Writer",
// the user confirms or specifies the actual output
// filename when the xdw.write operation executes.
// If the user clicks "Cancel" in the filename
// dialog a PrintingCanceledException is thrown
// which we catch here and ignore.
// MessageBox.Show("Print output cancelled");
}
// Restore the original document directory to "current".
Directory.SetCurrentDirectory(docDir);
}
Dim prntDialog As New PrintDialog()
If CBool(prntDialog.ShowDialog()) Then
' XpsDocumentWriter.Write() may change the current
' directory to "My Documents" or another user selected
' directory for storing the print document. Save the
' current directory and restore it after calling Write().
Dim docDir As String = Directory.GetCurrentDirectory()
' Create and XpsDocumentWriter for the selected printer.
Dim xdw As XpsDocumentWriter = PrintQueue.CreateXpsDocumentWriter(prntDialog.PrintQueue)
' Print the document with annotations.
Try
xdw.Write(_annotHelper.GetAnnotationDocumentPaginator(_xpsDocument.GetFixedDocumentSequence()))
Catch e1 As PrintingCanceledException
' If in the PrintDialog the user chooses a file-based
' output, such as the "MS Office Document Image Writer",
' the user confirms or specifies the actual output
' filename when the xdw.write operation executes.
' If the user clicks "Cancel" in the filename
' dialog a PrintingCanceledException is thrown
' which we catch here and ignore.
End Try
' Restore the original document directory to "current".
Directory.SetCurrentDirectory(docDir)
End If
// ------------------ GetAnnotationDocumentPaginator ------------------
/// <summary>
/// Returns a paginator for printing annotations.</summary>
/// <param name="fds">
/// The FixedDocumentSequence containing
/// the annotations to print.</param>
/// <returns>
/// An paginator for printing the document's annotations.</returns>
public AnnotationDocumentPaginator GetAnnotationDocumentPaginator(
FixedDocumentSequence fds)
{
return new AnnotationDocumentPaginator(
fds.DocumentPaginator, _annotService.Store);
}
' ------------------ GetAnnotationDocumentPaginator ------------------
''' <summary>
''' Returns a paginator for printing annotations.</summary>
''' <param name="fds">
''' The FixedDocumentSequence containing
''' the annotations to print.</param>
''' <returns>
''' An paginator for printing the document's annotations.</returns>
Public Function GetAnnotationDocumentPaginator(ByVal fds As FixedDocumentSequence) As AnnotationDocumentPaginator
Return New AnnotationDocumentPaginator(fds.DocumentPaginator, _annotService.Store)
End Function
Комментарии
Класс AnnotationDocumentPaginator заключает указанный объект DocumentPaginator в AnnotationDocumentPaginator конструктор, чтобы добавить пользовательские заметки на страницы для печати.
Конструкторы
AnnotationDocumentPaginator(DocumentPaginator, AnnotationStore) |
Инициализирует новый экземпляр класса AnnotationDocumentPaginator на основе заданных DocumentPaginator и AnnotationStore. |
AnnotationDocumentPaginator(DocumentPaginator, AnnotationStore, FlowDirection) |
Инициализирует новый экземпляр класса AnnotationDocumentPaginator на основе заданных DocumentPaginator, AnnotationStore и FlowDirection текста. |
AnnotationDocumentPaginator(DocumentPaginator, Stream) |
Инициализирует новый экземпляр класса AnnotationDocumentPaginator на основе заданного DocumentPaginator и хранилища заметок Stream. |
AnnotationDocumentPaginator(DocumentPaginator, Stream, FlowDirection) |
Инициализирует новый экземпляр класса AnnotationDocumentPaginator на основе заданного DocumentPaginator, хранилища заметок Stream и FlowDirection текстового потока. |
Свойства
IsPageCountValid |
Возвращает или задает значение, указывающее, является ли PageCount общим количеством страниц. |
PageCount |
Возвращает количество уже отформатированных страниц. |
PageSize |
Возвращает или задает предполагаемую ширину и высоту каждой страницы. |
Source |
Возвращает исходный документ, разбиваемый на страницы. |
Методы
CancelAsync(Object) |
Отменяет все асинхронные операции, инициированные данным объектом |
ComputePageCount() |
Обеспечивает разбиение содержимого на страницы, обновляет PageCount новым значением общего количества страниц и присваивает IsPageCountValid значение |
ComputePageCountAsync() |
Асинхронный вызов разбивки содержимого на страницы, обновления PageCount новой суммой и установки IsPageCountValid на значение |
ComputePageCountAsync(Object) |
Начинает асинхронную разбивку содержимого на страницы, обновляет значение PageCount новым числом страниц и устанавливает для IsPageCountValid значение |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetPage(Int32) |
Для заданного номера страницы возвращает объект DocumentPage и связанные с ним пользовательские заметки. |
GetPageAsync(Int32) |
Асинхронное возвращение (посредством события GetPageCompleted) DocumentPage для заданного номера страницы. (Унаследовано от DocumentPaginator) |
GetPageAsync(Int32, Object) |
Асинхронно возвращает DocumentPage вместе с соответствующими заметками пользователя для страницы с указанным номером. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnComputePageCountCompleted(AsyncCompletedEventArgs) |
Вызывает событие ComputePageCountCompleted. (Унаследовано от DocumentPaginator) |
OnGetPageCompleted(GetPageCompletedEventArgs) |
Вызывает событие GetPageCompleted. (Унаследовано от DocumentPaginator) |
OnPagesChanged(PagesChangedEventArgs) |
Вызывает событие PagesChanged. (Унаследовано от DocumentPaginator) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
ComputePageCountCompleted |
Происходит при завершении операции ComputePageCountAsync. (Унаследовано от DocumentPaginator) |
GetPageCompleted |
Происходит после завершения работы метода GetPageAsync. (Унаследовано от DocumentPaginator) |
PagesChanged |
Происходит при изменении содержимого документа. (Унаследовано от DocumentPaginator) |