Lastnost PrtDevMode

Velja za

Predmet obrazca

Predmet poročila

Z lastnostjo PrtDevMode lahko nastavite ali vrnete informacije o načinu naprave za tiskanje, ki so navedene za obrazec ali poročilo v pogovornem oknu Tiskanje. Različica za branje/pisanje.

izraz.PrtDevMode

izraz »Zahtevano«. Izraz, ki vrne enega od predmetov s seznama »Velja za«.

Opombe

Priporočamo vam, da celotno dokumentacijo za lastnosti PrtDevMode, PrtDevNames in PrtMip poiščete v kompletu za razvoj programske opreme Win32.

Nastavitev lastnosti PrtDevMode je 94-bajtna struktura, ki odraža strukturo DEVMODE, določeno v kompletu za razvoj programske opreme Win32. Če potrebujete popolne informacije o članih lastnosti PrtDevMode, jih poiščite v kompletu za razvoj programske opreme Win32.

Lastnost PrtDevMode uporablja te člane.

Član

Opis

DeviceName

Niz z največ 32 bajti, ki določa ime naprave, ki jo podpira gonilnik – na primer »HP LaserJet IIISi«, če je Hewlett-Packard LaserJet IIISi izbrani tiskalnik. Vsak gonilnik tiskalnika ima enolični niz.

SpecVersion

Celo število, ki določa številko različice strukture DEVMODE v kompletu za razvoj programske opreme Win32.

DriverVersion

Celo število, ki določa številko različice gonilnika tiskalnika, ki jo je dodelil razvijalec gonilnika tiskalnika.

Size

Celo število, ki določa velikost strukture DEVMODE v bajtih. (Ta vrednost ne vključuje izbirnega člana dmDriverData za podatke o napravi, ki sledijo tej strukturi.) Če aplikacija upravlja le del podatkov, ki niso odvisni od gonilnika, lahko s tem članom poiščete dolžino strukture, ne da bi morali upoštevati različne različice.

DriverExtra

Celo število, ki določa velikost (v bajtih) izbirnega člana dmDriverData za podatke o napravi, ki sledijo tej strukturi. Če aplikacija ne uporablja informacij o napravi, nastavite tega člana na 0.

Fields

Dolga vrednost, ki določa, kateri preostali člani v strukturi DEVMODE so bili inicializirani.

Orientation

Celo število, ki določa usmerjenost papirja. Lahko je 1 (pokončno) ali 2 (ležeče).

PaperSize

Celo število, ki določa velikost papirja za tiskanje. Če tega člana nastavite na 0 ali 256, dolžino in širino papirja določita člana PaperLength in PaperWidth. Sicer lahko PaperSize nastavite na vnaprej določeno vrednost.

PaperLength

Celo število, ki določa dolžino papirja v enotah 1/10 milimetra. Ta član preglasi dolžino papirja, določeno v članu PaperSize, za velikosti papirja po meri ali za naprave, kot so matrični tiskalniki, ki tiskajo na različne velikosti papirja.

PaperWidth

Celo število, ki določa širino papirja v enotah 1/10 milimetra. Ta član preglasi širino papirja, določeno v članu PaperSize.

Scale

Celo število, ki določa faktor za velikost natisnjene slike. Vidna velikost strani je prilagojena iz fizične velikosti strani s faktorjem merilo/100. Na primer list papirja velikosti 8,5 x 11 palcev (velikost pisma) z vrednostjo merila 50 bo vseboval toliko podatkov, kot list velikosti 17 x 22 palcev, saj bodo natisnjeno besedilo in grafika veliki polovico izvirne višine in širine.

Copies

Celo število, ki določa število natisnjenih kopij, če tiskalnik podpira večstransko tiskanje.

DefaultSource

Celo število, ki določa privzeti koš, iz katerega je podan papir.

PrintQuality

Celo število, ki določa ločljivost tiskalnika. Vrednosti so -4 (visoka), -3 (srednja), -2 (nizka) in -1 (osnutek).

Color

Celo število. V barvnem tiskalniku določa, ali je dokument natisnjen v barvah. Vrednosti sta 1 (barvno) in 2 (črno-belo).

Duplex

Celo število. V tiskalniku, ki podpira obojestransko tiskanje, določa, ali je dokument natisnjen na obeh straneh papirja. Vrednosti so 1 (simpleks), 2 (vodoravno) in 3 (navpično).

YResolution

Celo število, ki določa y-ločljivost tiskalnika v pikah na palec (dpi). Če tiskalnik inicializira tega člana, član PrintQuality določi x-ločljivost tiskalnika v dpi.

TTOption

Celo število, ki določa, kako bodo natisnjene pisave TrueType.

Collate

Celo število, ki določa, ali naj bo pri tiskanju več kopij uporabljeno zbiranje. Če ne uporabite zbiranja, so strani natisnjene hitreje in učinkoviteje, saj so podatki v tiskalnik poslani le enkrat.

FormName

Niz z največ s 16 znaki, ki določa velikost papirja, ki bo uporabljen; na primer »Pismo« ali »Pravno«.

Pad

Dolga vrednost, ki se uporablja za odmik presledkov, znakov ali vrednosti za prihodnje različice.

Bits

Dolga vrednost, ki v bitih na slikovno piko določa barvno ločljivost naprave za prikaz.

PW

Dolga vrednost, ki v slikovnih pikah določa širino vidne površine naprave (zaslon ali tiskalnik).

PH

Dolga vrednost, ki v slikovnih pikah določa višino vidne površine naprave (zaslon ali tiskalnik).

DFI

Dolga vrednost, ki določa način prikaza naprave.

DFR

Dolga vrednost, ki v hertzih (cikli na sekundo) določa pogostost naprave za prikaz v določenem načinu.


Opomba : Lastnost PrtDevMode lahko nastavite s kodo Visual Basic for Applications (VBA).

Ta lastnost je nastavljena za branje/pisanje v pogledu načrta ali postavitve in samo za branje v vseh ostalih pogledih.

Gonilniki tiskalnika lahko dodajo podatke o napravah takoj za 94 bajti strukture DEVMODE. Zato je pomembno, da zgoraj navedeni podatki DEVMODE ne presežejo 94 bajtov.

Strukturo DEVMODE uporabljajo le gonilniki tiskalnika, ki funkcijo ExtDeviceMode izvozijo.

Aplikacija lahko velikosti papirja in imena, ki jih podpira tiskalnik, pridobijo z vrednostmi DC_PAPERS, DC_PAPERSIZE in DC_PAPERNAMES, s katerimi pokličejo funkcijo DeviceCapabilities.

Preden aplikacije nastavijo vrednost člana TTOption, ugotovijo, kako lahko gonilnik tiskalnika uporabi pisave TrueType. To naredijo tako, da z vrednostjo DC_TRUETYPE pokličejo funkcijo DeviceCapabilities.

Primer

V tem primeru je uporabljena lastnost PrtDevMode, ki preveri uporabniško določeno velikost papirja za poročilo:

Private Type str_DEVMODE
RGB As String * 94
End Type
Private Type type_DEVMODE
strDeviceName As String * 32
intSpecVersion As Integer
intDriverVersion As Integer
intSize As Integer
intDriverExtra As Integer
lngFields As Long
intOrientation As Integer
intPaperSize As Integer
intPaperLength As Integer
intPaperWidth As Integer
intScale As Integer
intCopies As Integer
intDefaultSource As Integer
intPrintQuality As Integer
intColor As Integer
intDuplex As Integer
intResolution As Integer
intTTOption As Integer
intCollate As Integer
strFormName As String * 32
lngPad As Long
lngBits As Long
lngPW As Long
lngPH As Long
lngDFI As Long
lngDFr As Long
End Type
Public Sub CheckCustomPage(ByVal rptName As String)
Dim DevString As str_DEVMODE
Dim DM As type_DEVMODE
Dim strDevModeExtra As String
Dim rpt As Report
Dim intResponse As Integer
' Opens report in Design view.
DoCmd.OpenReport rptName, acDesign
Set rpt = Reports(rptName)
If Not IsNull(rpt.PrtDevMode) Then
strDevModeExtra = rpt.PrtDevMode
' Gets current DEVMODE structure.
DevString.RGB = strDevModeExtra
LSet DM = DevString
If DM.intPaperSize = 256 Then
' Display user-defined size.
intResponse = MsgBox("The current custom page size is " & _
DM.intPaperWidth / 254 & " inches wide by " & _
DM.intPaperLength / 254 & " inches long. Do you want " & _
"to change the settings?", vbYesNo + vbQuestion)
Else
' Currently not user-defined.
intResponse = MsgBox("The report does not have a custom page size. " & _
"Do you want to define one?", vbYesNo + vbQuestion)
End If
If intResponse = vbYes Then
' User wants to change settings. Initialize fields.
DM.lngFields = DM.lngFields Or DM.intPaperSize Or _
DM.intPaperLength Or DM.intPaperWidth
' Set custom page.
DM.intPaperSize = 256
' Prompt for length and width.
DM.intPaperLength = InputBox("Please enter page length in inches.") * 254
DM.intPaperWidth = InputBox("Please enter page width in inches.") * 254
' Update property.
LSet DevString = DM
Mid(strDevModeExtra, 1, 94) = DevString.RGB
rpt.PrtDevMode = strDevModeExtra
End If
End If
Set rpt = Nothing
End Sub

V spodnjem primeru je prikazano, kako spremenite usmerjenost poročila. V tem primeru je usmerjenost preklopljena iz pokončne v ležečo ali iz ležeče v pokončno, odvisno od trenutne usmerjenosti poročila.

Public Sub SwitchOrient(ByVal strName As String)
Const DM_PORTRAIT = 1
Const DM_LANDSCAPE = 2
Dim DevString As str_DEVMODE
Dim DM As type_DEVMODE
Dim strDevModeExtra As String
Dim rpt As Report
' Opens report in Design view.
DoCmd.OpenReport strName, acDesign
Set rpt = Reports(strName)
If Not IsNull(rpt.PrtDevMode) Then
strDevModeExtra = rpt.PrtDevMode
DevString.RGB = strDevModeExtra
LSet DM = DevString
DM.lngFields = DM.lngFields Or DM.intOrientation
' Initialize fields.
If DM.intOrientation = DM_PORTRAIT Then
DM.intOrientation = DM_LANDSCAPE
Else
DM.intOrientation = DM_PORTRAIT
End If
' Update property.
LSet DevString = DM
Mid(strDevModeExtra, 1, 94) = DevString.RGB
rpt.PrtDevMode = strDevModeExtra
End If
Set rpt = Nothing
End Sub
Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×