Svojstvo PrtDevMode

Važno :  Ovaj je članak strojno preveden. Pogledajteizjavu o odricanju od odgovornosti. Verziju ovog članka na engleskom potražite ovdje.

Primjenjuje se na

Objekt Form

Objekt Report

Svojstvom PrtDevMode postavljate ili vraćate informaciju o načinu rada uređaja za ispis određenu za obrazac ili izvješće u dijaloškom okviru Ispiši. Čitaj/piši Variant.

izraz.PrtDevMode

izraz Obavezno. Izraz koji vraća jedan od objekata na popisu Primjenjuje se na.

Napomene

Preporučuje se pregled uputa alata Win32 Software Development Kit o svojstvima PrtDevMode, PrtDevNames i PrtMip.

Postavka svojstva PrtDevMode je 94-bitna struktura koja preslikava strukturu DEVMODE definiranu u alatu Win32 Software Development Kit. Detaljne informacije o članovima svojstva PrtDevMode pronađite u uputama za Win32 Software Development Kit.

SvojstvoModePrtDevkoristi sljedeće članove.

Član

Opis

DeviceName

niz od najviše 32 bajta koji određuje naziv uređaja koji podržava upravljački program — na primjer, "HP LaserJet IIISi" ako je Hewlett-Packard LaserJet IIISi odabran pisač. Svaki upravljački program za pojedini pisač ima jedinstveni niz.

SpecVersion

Na cijeli broj koji određuje broj verzije strukture DEVMODE u Win32 Software Development Kit.

DriverVersion

Integer koji određuje broj verzije upravljačkog programa koji je dodijelio programer upravljačkog programa.

Size

Integer koji određuje veličinu strukture DEVMODE u bajtovima. (Ova vrijednost ne uključuje neobavezni član dmDriverData za specifične podatke o uređaju koji mogu slijediti iza ove strukture). Ukoliko aplikacija podešava samo dio podataka neovisan o upravljačkom programu, ovaj član možete koristiti za utvrđivanje duljine strukture bez obuhvaćanja različitih verzija.

DriverExtra

Integer koji određuje veličinu neobaveznog člana dmDriverData u bajtovima za specifične podatke o uređaju, koji mogu doći iza ove strukture. Ako aplikacija koristi specifične informacije o uređaju, ovaj se član postavlja na 0.

Fields

A Long vrijednost koja određuje koji su od preostalih članova strukture DEVMODE pokrenuta.

Orientation

Integer koji određuje usmjerenje papira. Može biti 1 (portret) ili 2 (pejzaž).

PaperSize

Integer koji određuje veličinu papira za ispis. Postavite li ovaj član na 0 ili 256, duljina i širina papira bit će određene članovima PaperLength i PaperWidth. Drugi način postavljanja je da član PaperSize postavite na unaprijed definiranu vrijednost.

PaperLength

Integer koji određuje duljinu papira u jedinicama 1/10 milimetra. Ovaj član zanemaruje duljine papira određene članom PaperSize za prilagođene veličine papira ili uređaje poput matričnih pisača koji mogu ispisivati na različitim veličinama papira.

PaperWidth

Integer koji određuje duljinu papira u jedinicama 1/10 milimetra. Ovaj član zanemaruje širine papira određene članom PaperSize.

Scale

Integer određuje faktor mjerila u kojem će se vršiti ispis. Prividna veličina stranice određuje se mjerilom prema fizičkoj veličini stranice faktorom mjerilo/100. Na primjer, papir veličine 8,5 puta 11 inča (veličina pisma) s vrijednošću mjerila 50 sadržavat će istu količinu podataka kao stranica veličine 17 puta 22 inča zbog toga što će izlazni tekst i grafika biti polovica njihove izvorne visine i širine.

Copies

Integer koji određuje broj ispisanih kopija ukoliko uređaj za ispis podržava kopiranje više stranica.

DefaultSource

Integer koji određuje koja je zadana ladica iz koje će pisač uzimati papir.

PrintQuality

Integer koji određuje rezoluciju pisača. Vrijednosti su –4 (visoka), –3 (srednja), –2 (niska), and –1 (skica).

Color

Integer. Za pisače u boji, određuje hoće li ispis biti u boji. Vrijednosti su 1 (u boji) and 2 (jednobojan).

Duplex

Integer. Za pisače koji imaju mogućnost dvostranog ispisa, određuje hoće li pisač ispisivati na obje strane papira. Vrijednosti su 1 (jednostrano), 2 (vodoravno), and 3 (okomito).

YResolution

Integer koji određuje y-rezoluciju pisača brojem točaka po inču (dpi). Ukoliko pisač inicira ovaj član, član PrintQuality određuje x-rezoluciju pisača u dpi.

TTOption

Integer koji određuje ispis TrueType fontova.

Collate

Integer koji određuje hoće li se kod ispisa više kopija koristiti razvrstavanje. Korištenje nerazvrstanih kopija osigurava brži, efektivniji ispis, jer se podaci šalju na pisač samo jednom.

FormName

Niz od najviše 16 koji određuje veličinu papira koji će biti upotrijebljen; na primjer, "Pismo" ili "Legal".

Pad

Long vrijednost koja se koristi za punjenje razmaka, znakova ili vrijednosti za buduće verzije.

Bits

Long vrijednost koja određuje rezoluciju boje u bitovima po pikselu, uređaja za prikazivanje.

PW

Long vrijednost koja određuje širinu vidljive površine (zaslona ili pisača), u pikselima.

PH

Long vrijednost koja određuje visinu vidljive površine (zaslona ili pisača), u pikselima.

DFI

Long vrijednost koja određuje način prikaza na uređaju.

DFR

Long vrijednost koja određuje frekvenciju, u hertzima (titrajima u sekundi), uređaja za prikazivanje u određenom načinu rada.


Napomena : Možete postaviti svojstvo PrtDevMode pomoću programa Visual Basic for Applications (VBA) kod.

Ovo je svojstvo namijenjeno za čitanje/pisanje u prikazu dizajna ili prikazu izgleda, a samo za čitanje u ostalim prikazima.

Upravljački programi pisača mogu specifične podatke za uređaj dodati neposredno nakon 94-bajtne strukture DEVMODE. Zbog toga je važno da prethodno navedeni podaci DEVMODE ne prijeđu duljinu od 94 bajta.

Samo upravljački programi koji izvoze funkciju ExtDeviceMode koriste strukturu DEVMODE.

Program može pronaći podatak o veličini papira i nazivima koje pisač podržava korištenjem vrijednosti DC_PAPERS, DC_PAPERSIZE i DC_PAPERNAMES vrijednosti kako bi pozvao funkciju DeviceCapabilities.

Prije postavljanja člana TTOption, aplikacije bi trebale saznati kako upravljački program pisača može koristiti TrueType fontove, i to korištenjem vrijednosti DC_TRUETYPE za pozivanje funkcije DeviceCapabilities.

Primjer

Sljedeći primjer koristi svojstvo PrtDevMode kako bi provjerio veličinu stranice izvješća određenu od korisnika:

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

Sljedeći primjer pokazuje kako promijeniti usmjerenje izvješća. Ovaj primjer promijenit će usmjerenje s portreta na pejzaž ili obrnuto, ovisno o trenutnom usmjerenju izvješća.

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

Napomena : Izjava o odricanju od odgovornosti za strojni prijevod: ovaj je članak preveo računalni sustav bez ljudske intervencije. Microsoft nudi strojne prijevode da bi korisnicima koji ne razumiju engleski omogućio čitanje sadržaja o Microsoftovim proizvodima, uslugama i tehnologijama. Budući da je preveden strojno, članak možda sadrži pogreške u vokabularu, sintaksi ili gramatici.

Proširite svoje vještine
Istražite osposobljavanje

Jesu li vam ove informacije bile korisne?

Hvala vam na povratnim informacijama!

Hvala vam na povratnim informacijama! Čini se da bi vam pomoglo kad bismo vas povezali s nekim od naših agenata podrške za Office.

×