TrueTypeFontMode Enum

Definitie

Hiermee geeft u op hoe een printer tekst verwerkt die is opgemaakt met een TrueType-lettertype.

public enum class TrueTypeFontMode
public enum TrueTypeFontMode
type TrueTypeFontMode = 
Public Enum TrueTypeFontMode
Overname
TrueTypeFontMode

Velden

Name Waarde Description
Unknown 0

De functie (waarvan de opties worden vertegenwoordigd door deze opsomming) is ingesteld op een optie die niet is gedefinieerd. in het afdrukschema.

Automatic 1

Het printerstuurprogramma bepaalt de beste methode voor het verwerken van TrueType-lettertypen.

DownloadAsOutlineFont 2

Het printerstuurprogramma downloadt het TrueType-lettertype als een overzichtslettertype.

DownloadAsRasterFont 3

Het printerstuurprogramma maakt een rasterlettertype voor elke grootte van het TrueType-lettertype dat het nodig heeft en downloadt ze allemaal.

DownloadAsNativeTrueTypeFont 4

Het printerstuurprogramma downloadt het TrueType-lettertype.

RenderAsBitmap 5

Het printerstuurprogramma downloadt elk tekstgebied als afbeelding.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de mogelijkheden van een printer test en hoe u de afdruktaak configureert om hiervan te profiteren.

// ---------------------- 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()

Opmerkingen

TrueType-lettertypen zijn vectorlettertypen , waarmee printerstuurprogramma's en schermstuurprogramma's worden geïnstrueerd om de vormen van de letters te tekenen en ze in te vullen. Vectorlettertypen contrasteren met rasterlettertypen , die gewoon lijsten zijn. Een rasterlettertype bevat een lijst voor elke letter van elke beschikbare tekengrootte en de lijsten bepalen, voor elke pixel in de letter, of deze wordt afgedrukt.

U kunt vectorlettertypen vergroten of verkleinen tot bijna elke puntgrootte; Vectorlettertypen kunnen echter langzaam afdrukken omdat ze een grote hoeveelheid printergeheugen in beslag nemen. Sommige printers bieden ook geen ondersteuning voor TrueType-lettertypen.

Nieuwere printers voorkomen deze problemen vaak door het volgende te doen.

  • Het converteren van een TrueType-lettertype naar een overzichtslettertype, een algemeen vectorlettertype. Veel printers die geen TrueType-lettertypen ondersteunen, bieden wel ondersteuning voor overzichtslettertypen.

  • Het maken van een tijdelijk rasterlettertype dat lijkt op een TrueType-lettertype. De printer moet een afzonderlijk tijdelijk rasterlettertype maken voor elke tekengrootte die door het document wordt gebruikt. Als een afdruktaak daarom veel tekengrootten gebruikt, is het totale geheugen dat de printer gebruikt mogelijk groter dan wat een TrueType-lettertype zou gebruiken.

  • Elk tekstgebied in het document behandelen als een afbeelding. Als een apparaat een document met zeer weinig tekst moet afdrukken, kan het downloaden van tekst als afbeelding minder printergeheugen gebruiken dan het downloaden van een lettertype.

Gebruik de waarden van dit type voor deze doeleinden:

  • Als leden van de TrueTypeFontModeCapability verzameling, die een eigenschap van PrintCapabilitiesis, geven deze waarden aan welke van de voorgaande technieken beschikbaar zijn voor een bepaalde printer. Veel printers ondersteunen meer dan een van deze technieken.

  • Als de waarde van de TrueTypeFontMode eigenschap van een PrintTicket, geeft de waarde de printer de opdracht om TrueType-lettertypen op een bepaalde manier te verwerken.

De onbekende waarde wordt nooit gebruikt in eigenschappen van PrintCapabilities objecten.

U moet nooit een PrintTicket eigenschap instellen op Onbekend. Als een andere PrintTicket productietoepassing een PrintTicket-document heeft gemaakt waarmee de functie TrueType-lettertypeverwerking wordt ingesteld op een niet-herkende optie (dat wil gezegd, een optie die niet is gedefinieerd in het afdrukschema, heeft een PrintTicket object in uw toepassing die is samengesteld met dat document onbekend als de waarde van de TrueTypeFontMode eigenschap.

Hoewel de PrintTicket en PrintCapabilities klassen niet kunnen worden overgenomen, kunt u het afdrukschema uitbreiden om functies van het afdrukapparaat te herkennen waarvoor geen rekening wordt gehouden in de PrintTicket of PrintCapabilities klassen. Zie Het afdrukschema uitbreiden en nieuwe afdruksysteemklassen maken voor meer informatie.

Van toepassing op

Zie ook