Поделиться через


PageMediaType Перечисление

Определение

Указывает типы бумаги или другого носителя.

public enum class PageMediaType
public enum PageMediaType
type PageMediaType = 
Public Enum PageMediaType
Наследование
PageMediaType

Поля

Имя Значение Описание
Unknown 0

Функция (параметры которого представлены этим перечислением) имеет параметр, не определенный в схеме печати.

AutoSelect 1

Устройство печати выбирает носитель.

Archival 2

Архивный носитель.

BackPrintFilm 3

Специальное обратное печать пленки.

Bond 4

Стандартный носитель облигаций.

CardStock 5

Стандартные акции карточек.

Continuous 6

Носитель непрерывного канала.

EnvelopePlain 7

Стандартный конверт.

EnvelopeWindow 8

Конверт окна.

Fabric 9

Носитель Структуры.

HighResolution 10

Специальные носители с высоким разрешением.

Label 11

Метка носителя.

MultiLayerForm 12

Присоединенные многопартийные формы.

MultiPartForm 13

Отдельные многопартийные формы.

Photographic 14

Стандартный фотографический носитель.

PhotographicFilm 15

Кинофотографичные сми.

PhotographicGlossy 16

Глянцевые фотографии мультимедиа.

PhotographicHighGloss 17

Высококачественные глянцевые фотографии мультимедиа.

PhotographicMatte 18

Мате фотомедиайные средства массовой информации.

PhotographicSatin 19

Сатин фотомедия.

PhotographicSemiGloss 20

Полуглонцевые фотографии мультимедиа.

Plain 21

Обычная бумага.

Screen 22

Выходные данные для отображения в непрерывной форме.

ScreenPaged 23

Выходные данные в виде страницы.

Stationery 24

Специализированный стационарный.

TabStockFull 25

Сток вкладок, а не предварительно (одиночные вкладки).

TabStockPreCut 26

Сток вкладок, предрез (несколько вкладок).

Transparency 27

Прозрачный лист.

TShirtTransfer 28

Носитель, используемый для передачи изображения в футболку.

None 29

Неизвестный или неподписанный носитель.

Примеры

В следующем примере показано, как определить возможности принтера и настроить задание печати для их использования.

// ---------------------- GetPrintTicketFromPrinter -----------------------
/// <summary>
///   Returns a PrintTicket based on the current default printer.</summary>
/// <returns>
///   A PrintTicket for the current local default printer.</returns>
PrintTicket^ GetPrintTicketFromPrinter ()
{
   PrintQueue^ printQueue = nullptr;

   LocalPrintServer^ localPrintServer = gcnew LocalPrintServer();

   // Retrieving collection of local printer on user machine
   PrintQueueCollection^ localPrinterCollection = localPrintServer->GetPrintQueues();

   System::Collections::IEnumerator^ localPrinterEnumerator = localPrinterCollection->GetEnumerator();

   if (localPrinterEnumerator->MoveNext())
   {
      // Get PrintQueue from first available printer
      printQueue = ((PrintQueue^)localPrinterEnumerator->Current);
   } else
   {
      return nullptr;
   }
   // Get default PrintTicket from printer
   PrintTicket^ printTicket = printQueue->DefaultPrintTicket;

   PrintCapabilities^ printCapabilities = printQueue->GetPrintCapabilities();

   // Modify PrintTicket
   if (printCapabilities->CollationCapability->Contains(Collation::Collated))
   {
      printTicket->Collation = Collation::Collated;
   }
   if (printCapabilities->DuplexingCapability->Contains(Duplexing::TwoSidedLongEdge))
   {
      printTicket->Duplexing = Duplexing::TwoSidedLongEdge;
   }
   if (printCapabilities->StaplingCapability->Contains(Stapling::StapleDualLeft))
   {
      printTicket->Stapling = Stapling::StapleDualLeft;
   }
   return printTicket;
};// end:GetPrintTicketFromPrinter()
// ---------------------- GetPrintTicketFromPrinter -----------------------
/// <summary>
///   Returns a PrintTicket based on the current default printer.</summary>
/// <returns>
///   A PrintTicket for the current local default printer.</returns>
private PrintTicket GetPrintTicketFromPrinter()
{
    PrintQueue printQueue = null;

    LocalPrintServer localPrintServer = new LocalPrintServer();

    // Retrieving collection of local printer on user machine
    PrintQueueCollection localPrinterCollection =
        localPrintServer.GetPrintQueues();

    System.Collections.IEnumerator localPrinterEnumerator =
        localPrinterCollection.GetEnumerator();

    if (localPrinterEnumerator.MoveNext())
    {
        // Get PrintQueue from first available printer
        printQueue = (PrintQueue)localPrinterEnumerator.Current;
    }
    else
    {
        // No printer exist, return null PrintTicket
        return null;
    }

    // Get default PrintTicket from printer
    PrintTicket printTicket = printQueue.DefaultPrintTicket;

    PrintCapabilities printCapabilities = printQueue.GetPrintCapabilities();

    // Modify PrintTicket
    if (printCapabilities.CollationCapability.Contains(Collation.Collated))
    {
        printTicket.Collation = Collation.Collated;
    }

    if ( printCapabilities.DuplexingCapability.Contains(
            Duplexing.TwoSidedLongEdge) )
    {
        printTicket.Duplexing = Duplexing.TwoSidedLongEdge;
    }

    if (printCapabilities.StaplingCapability.Contains(Stapling.StapleDualLeft))
    {
        printTicket.Stapling = Stapling.StapleDualLeft;
    }

    return printTicket;
}// end:GetPrintTicketFromPrinter()
' ---------------------- GetPrintTicketFromPrinter -----------------------
''' <summary>
'''   Returns a PrintTicket based on the current default printer.</summary>
''' <returns>
'''   A PrintTicket for the current local default printer.</returns>
Private Function GetPrintTicketFromPrinter() As PrintTicket
    Dim printQueue As PrintQueue = Nothing

    Dim localPrintServer As New LocalPrintServer()

    ' Retrieving collection of local printer on user machine
    Dim localPrinterCollection As PrintQueueCollection = localPrintServer.GetPrintQueues()

    Dim localPrinterEnumerator As System.Collections.IEnumerator = localPrinterCollection.GetEnumerator()

    If localPrinterEnumerator.MoveNext() Then
        ' Get PrintQueue from first available printer
        printQueue = CType(localPrinterEnumerator.Current, PrintQueue)
    Else
        ' No printer exist, return null PrintTicket
        Return Nothing
    End If

    ' Get default PrintTicket from printer
    Dim printTicket As PrintTicket = printQueue.DefaultPrintTicket

    Dim printCapabilities As PrintCapabilities = printQueue.GetPrintCapabilities()

    ' Modify PrintTicket
    If printCapabilities.CollationCapability.Contains(Collation.Collated) Then
        printTicket.Collation = Collation.Collated
    End If

    If printCapabilities.DuplexingCapability.Contains(Duplexing.TwoSidedLongEdge) Then
        printTicket.Duplexing = Duplexing.TwoSidedLongEdge
    End If

    If printCapabilities.StaplingCapability.Contains(Stapling.StapleDualLeft) Then
        printTicket.Stapling = Stapling.StapleDualLeft
    End If

    Return printTicket
End Function ' end:GetPrintTicketFromPrinter()

Комментарии

Значения этого типа используются в первую очередь для следующих целей:

  • Как члены PageMediaTypeCapability коллекции, свойство PrintCapabilities, они указывают типы носителей, поддерживаемых принтером.

  • В качестве значения PageMediaType свойства PrintTicketобъекта, они указывают принтеру использовать определенный тип носителя.

Значение Unknownvalue никогда не используется в свойствах PrintCapabilities объектов.

Никогда не следует задать PrintTicket свойство Unknown. Если какое-то PrintTicket другое созданное приложение создало документ PrintTicket, который задает функцию типа носителя страницы нераспознанным параметром (то есть параметром, который не определен в схеме печати), то PrintTicket объект в приложении, созданном с помощью этого документа, будет иметь неизвестное значение PageMediaType свойства.

PrintTicket Хотя и PrintCapabilities классы не могут наследоваться, можно расширить схему печати для распознавания функций устройства печати, которые не учитываются в PageMediaType или PrintCapabilities классах. Дополнительные сведения см. в разделе "Практическое руководство. Расширение схемы печати и создание новых системных классов печати".

Применяется к

См. также раздел