struktur ATTRIBUTE_INFO_4 (winsplp.h)
Struktur ATTRIBUTE_INFO_4 digunakan sebagai parameter untuk fungsi DrvQueryJobAttributes antarmuka printer DLL. Semua nilai anggota disediakan fungsi. Struktur ini mirip dengan ATTRIBUTE_INFO_3, tetapi mencakup anggota tambahan untuk mengontrol N-up, pencetakan dupleks dan buklet, dan penskalaan.
Sintaks
typedef struct _ATTRIBUTE_INFO_4 {
DWORD dwJobNumberOfPagesPerSide;
DWORD dwDrvNumberOfPagesPerSide;
DWORD dwNupBorderFlags;
DWORD dwJobPageOrderFlags;
DWORD dwDrvPageOrderFlags;
DWORD dwJobNumberOfCopies;
DWORD dwDrvNumberOfCopies;
DWORD dwColorOptimization;
short dmPrintQuality;
short dmYResolution;
DWORD dwDuplexFlags;
DWORD dwNupDirection;
DWORD dwBookletFlags;
DWORD dwScalingPercentX;
DWORD dwScalingPercentY;
} ATTRIBUTE_INFO_4, *PATTRIBUTE_INFO_4;
Anggota
dwJobNumberOfPagesPerSide
Jumlah halaman dokumen yang akan ditempatkan di satu sisi halaman fisik, seperti yang diminta oleh pengguna. Nilai yang diizinkan adalah 1, 2, 4, 6, 9, atau 16.
dwDrvNumberOfPagesPerSide
Jumlah halaman dokumen yang bisa ditempatkan pencetak dan pengandar di satu sisi halaman fisik. Nilai ini harus 1 atau nilai yang ditentukan untuk dwJobNumberOfPagesPerSide.
dwNupBorderFlags
Salah satu nilai bendera bit berikut:
Bendera | Definisi |
---|---|
BORDER_PRINT | Prosesor cetak harus menggambar batas di sekitar halaman. |
NO_BORDER_PRINT | Prosesor cetak tidak boleh menggambar batas di sekitar halaman. |
dwJobPageOrderFlags
Salah satu nilai bendera bit berikut:
Bendera | Definisi |
---|---|
BOOKLET_PRINT | Halaman harus dicetak dalam bentuk buklet, dengan dua halaman dokumen dicetak di satu sisi halaman fisik. Dalam mode lanskap, dua halaman dokumen dicetak berdampingan pada kertas. Dalam mode potret, dua halaman dokumen dicetak atas dan bawah. |
NORMAL_PRINT | Halaman harus dicetak dalam urutan normal: halaman 1, halaman 2, dan seterusnya. |
REVERSE_PRINT | Halaman harus dicetak dalam urutan terbalik: halaman terakhir, halaman berikutnya ke terakhir, dan sebagainya. |
dwDrvPageOrderFlags
Bendera bit yang menunjukkan opsi pengurutan halaman mana yang didukung oleh printer dan driver. Menggunakan bendera yang sama dengan dwJobPageOrderFlags.
dwJobNumberOfCopies
Jumlah salinan pekerjaan cetak, seperti yang diminta oleh pengguna.
dwDrvNumberOfCopies
Jumlah maksimum salinan yang dapat ditangani printer dan driver sekaligus, dengan mempertimbangkan atribut pekerjaan seperti penyusunan dan pengaitan.
dwColorOptimization
Salah satu nilai bendera bit berikut:
Bendera | Definisi |
---|---|
COLOR_OPTIMIZATION | Prosesor cetak harus menggunakan pengoptimalan warna monokrom. |
NO_COLOR_OPTIMIZATION | Prosesor cetak tidak boleh menggunakan pengoptimalan warna monokrom. |
dmPrintQuality
Nilai yang akan digunakan alih-alih anggota dmPrintQuality dari struktur DEVMODEW pekerjaan cetak, jika bendera COLOR_OPTIMIZATION diatur dalam dwColorOptimization.
dmYResolution
Nilai yang akan digunakan alih-alih anggota dmYResolution dari struktur DEVMODEW pekerjaan cetak, jika bendera COLOR_OPTIMIZATION diatur dalam dwColorOptimization.
dwDuplexFlags
Salah satu nilai bendera bit berikut yang digunakan dalam pencetakan dupleks:
Bendera | Definisi |
---|---|
DONT_SEND_EXTRA_PAGES_FOR_DUPLEX | Prosesor cetak tidak boleh mengirim halaman kosong ekstra ketika pencetakan dupleks. Misalnya, jika Anda mengirim pekerjaan tiga halaman untuk pencetakan dupleks, beberapa printer mengharapkan untuk menerima empat halaman. Jika Anda mencetak pekerjaan ini dengan set bendera ini, prosesor cetak hanya mengirimkan tiga halaman pekerjaan cetak dan tidak mengirim halaman kosong tambahan. |
REVERSE_PAGES_FOR_REVERSE_DUPLEX | Prosesor cetak harus membalikkan urutan pasangan halaman saat mencetak dalam mode dupleks terbalik. Misalnya, ketika bendera ini diatur, prosesor cetak harus mencetak halaman dalam urutan 7, 8, 5, 6, 3, 4, 1, 2 alih-alih 8, 7, 6, 5, 4, 3, 2, 1. |
Atur ke 0 jika driver Anda tidak memerlukan salah satu opsi ini.
dwNupDirection
Salah satu nilai bendera bit berikut yang digunakan dalam pencetakan N-up:
Bendera | Definisi |
---|---|
RIGHT_THEN_DOWN | Prosesor cetak harus menyediakan gambar halaman secara berurutan dari kiri ke kanan, lalu ke bawah halaman cetak akhir. Atur juga ke nilai ini jika pencetakan N-up tidak diperlukan. |
DOWN_THEN_RIGHT | Prosesor cetak harus menyediakan gambar halaman secara berurutan dari atas ke bawah, lalu kiri ke kanan pada halaman cetak akhir. |
LEFT_THEN_DOWN | Prosesor cetak harus menyediakan gambar halaman secara berurutan dari kanan ke kiri, lalu ke bawah halaman cetak akhir. |
DOWN_THEN_LEFT | Prosesor cetak harus menyediakan gambar halaman secara berurutan dari atas ke bawah, lalu kanan ke kiri pada halaman cetak akhir. |
Bendera ini dianggap hanya jika dwJobNumberOfPagesPerSide dan/atau dwDrvNumberOfPagesPerSide menunjukkan bahwa pencetakan N-up aktif. Untuk informasi selengkapnya, lihat deskripsi di atas untuk dwJobNumberOfPagesPerSide dan dwDrvNumberOfPagesPerSide.
dwBookletFlags
Jika dwJobPageOrderFlags diatur ke BOOKLET_PRINT, salah satu nilai berikut:
Bendera | Definisi |
---|---|
BOOKLET_EDGE_LEFT | Prosesor cetak harus mencetak halaman dalam tata letak buklet kiri-ke-kanan, di mana tepi terikat dari buklet terlipat akhir berada di tepi kiri halaman satu. |
BOOKLET_EDGE_RIGHT | Prosesor cetak harus mencetak halaman dalam tata letak buklet kanan-ke-kiri, di mana tepi terikat dari buklet terlipat akhir berada di tepi kanan halaman satu. |
Jika dwJobPageOrderFlags tidak diatur ke BOOKLET_PRINT, dwBookletFlags diatur ke 0.
Bendera ini dianggap hanya jika anggota dwJobPageOrderFlags diatur ke BOOKLET_PRINT.
dwScalingPercentX
Persentase penskalian ke arah horizontal (x) sehubungan dengan ukuran kertas normal. Harus dalam kisaran 1 hingga 1000. Atur ke 100 jika penskalakan tidak akan dilakukan.
Untuk memastikan hasil pencetakan yang dapat diprediksi, dwScalingPercentX dan dwScalingPercentY harus memiliki nilai yang sama.
dwScalingPercentY
Persentase penskalan ke arah vertikal (y) sehubungan dengan ukuran kertas normal. Harus dalam kisaran 1 hingga 1000. Atur ke 100 jika penskalakan tidak akan dilakukan.
Untuk memastikan hasil pencetakan yang dapat diprediksi, dwScalingPercentX dan dwScalingPercentY harus memiliki nilai yang sama.
Keterangan
Jika anggota dmPrintQuality dari struktur DEVMODEW pekerjaan cetak adalah nilai negatif, seperti DMRES_HIGH, dan jika pengoptimalan warna monokrom diaktifkan, maka beralih antara warna dan monokrom dapat mengakibatkan resolusi yang berbeda digunakan. Ini karena DMRES_HIGH mungkin ditetapkan ke nilai DPI yang berbeda untuk penyajian warna dan monokrom. (Untuk perangkat yang didukung Unidrv, penetapan ini terjadi dalam file GPD printer.) Untuk memastikan resolusi yang konsisten di seluruh pekerjaan cetak, driver dapat menentukan nilai dmPrintQuality dan dmYResolution positif (mewakili resolusi DPI tertentu) untuk mengambil alih nilai DEVMODEW yang setara.
Prosesor cetak EMF menggunakan bendera yang ditentukan untuk dwColorOptimization untuk menentukan apakah akan meminta GDI untuk melakukan pengoptimalan warna monokrom. Jika pengoptimalan warna monokrom diaktifkan, pekerjaan cetak dapat dialihkan antara monokrom dan penyajian warna yang sesuai.
Jika Anda membuat plug-in penyajian Unidrv untuk menghasilkan marka air warna, perhatikan bahwa ketika anggota dwColorOptimization diatur ke COLOR_OPTIMIZATION, marka air warna dicetak dalam warna hitam dan putih saat dicetak pada dokumen hitam-putih. Untuk memastikan bahwa cap air warna dicetak dengan benar dengan dokumen warna dan hitam-putih, nonaktifkan pengoptimalan warna. Pengoptimalan warna juga dapat dikontrol oleh atribut warna Unidrv *ChangeColorModeOnDoc? (lihat Atribut Warna), dan oleh fungsi GdiEndPageEMF .
Untuk daftar nilai default untuk anggota ATTRIBUTE_INFO_4, lihat GetJobAttributesEx.
Struktur ini tersedia di Windows Vista.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | winsplp.h (termasuk Winddiui.h, Winsplp.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk