โครงสร้างข้อมูล DEVMODE

โครงสร้างข้อมูล DEVMODEได้แบบฟอร์มต่อไปนี้:

typedef struct _devicemode {nbsp   / * dvmd * /
    TCHAR dmDeviceName [32];
    WORD dmSpecVersion
    WORD dmDriverVersion
    WORD dmSize
    WORD dmDriverExtra
    DWORD dmFields
    dmOrientation ย่อ
    dmPaperSize ย่อ
    dmPaperLength ย่อ
    dmPaperWidth ย่อ
    dmScale ย่อ
    dmCopies ย่อ
    dmDefaultSource ย่อ
    dmPrintQuality ย่อ
    dmColor ย่อ
    dmDuplex ย่อ
    dmYResolution ย่อ
    dmTTOption ย่อ
    dmCollate ย่อ
    TCHAR dmFormName [32];
    WORD dmUnusedPadding
    USHORT dmBitsPerPel
    DWORD dmPelsWidth
    DWORD dmPelsHeight
    DWORD dmDisplayFlags
    DWORD dmDisplayFrequency
} ข้อมูล DEVMODE(&N)

โครงสร้างข้อมูลDEVMODEประกอบด้วยข้อมูลเกี่ยวกับการเตรียมใช้งานอุปกรณ์และสภาพแวดล้อมของเครื่องพิมพ์?

สมาชิก

dmDeviceName

ระบุชื่อของโปรแกรมควบคุมอุปกรณ์รองรับ ตัวอย่างเช่น จำกัด(มหาชน) / HP LaserJet ในกรณีของการจำกัด(มหาชน) / HP LaserJet ? ข้อความนี้เป็นเอกลักษณ์ที่โปรแกรมควบคุมอุปกรณ์?

dmSpecVersion

ระบุหมายเลขรุ่นของการเตรียมใช้งานข้อมูลที่ระบุตามโครงสร้าง?

dmDriverVersion

ระบุหมายเลขรุ่นที่โปรแกรมควบคุมเครื่องพิมพ์ที่กำหนด โดยนักพัฒนาโปรแกรมควบคุมเครื่องพิมพ์?

dmSize

ระบุขนาด ไบต์ ของโครงสร้างข้อมูล DEVMODEยกเว้นสมาชิก (อุปกรณ์เฉพาะ) dmDriverData ถ้าโปรแกรมประยุกต์มากยิ่งเฉพาะโปรแกรมควบคุมแบบไม่ขึ้นกับส่วนของข้อมูล การใช้สมาชิกนี้เพื่อกำหนดความยาวของโครงสร้างได้ โดยไม่ต้องใช้บัญชีผู้ใช้สำหรับรุ่นต่าง ๆ?

dmDriverExtra

ประกอบด้วยจำนวนไบต์ของโปรแกรมควบคุมข้อมูลส่วนตัวที่ทำตามโครงสร้างนี้ ถ้าโปรแกรมควบคุมอุปกรณ์ไม่ใช้ข้อมูลของอุปกรณ์เฉพาะ ตั้งค่าสมาชิกนี้เป็นศูนย์?

dmFields

ระบุซึ่งสมาชิกที่เหลืออยู่ในโครงสร้างข้อมูล DEVMODEได้ถูกเตรียมใช้งาน บิต 0 (กำหนดเป็นDM_ORIENTATION) ที่สอดคล้องกับdmOrientation บิต 1 (กำหนดเป็นDM_PAPERSIZE) ระบุdmPaperSizeและอื่น ๆ โปรแกรมควบคุมเครื่องพิมพ์ที่สนับสนุนเฉพาะสมาชิกที่เหมาะสมกับเทคโนโลยีการพิมพ์?

dmOrientation

เลือกการวางแนวของกระดาษ สมาชิกนี้สามารถเป็นแบบDMORIENT_PORTRAIT (1) หรือDMORIENT_LANDSCAPE (2?

dmPaperSize

เลือกขนาดของกระดาษที่จะพิมพ์บน สมาชิกนี้สามารถถูกตั้งค่าเป็นศูนย์ถ้าความยาวและความกว้างของกระดาษ ทั้งสองชุด โดยสมาชิกdmPaperLengthและdmPaperWidth มิฉะนั้น สมาชิกdmPaperSizeสามารถถูกตั้งค่าเป็นหนึ่งในค่าที่กำหนดไว้ล่วงหน้าดังต่อไปนี้:

dmPaperLength

แทนความยาวของกระดาษที่ระบุ โดยสมาชิกdmPaperSizeสำหรับขนาดกระดาษแบบกำหนดเอง หรือ สำหรับอุปกรณ์เช่นเครื่องแบบจุดพิมพ์ ซึ่งสามารถพิมพ์บนหน้าของความยาวที่กำหนดเอง ค่าเหล่านี้ พร้อมกับค่าอื่น ๆ ทั้งหมดในโครงสร้างนี้ที่ระบุความยาวเท่ากับทางกายภาพ อยู่ใน tenths ของการมม.

dmPaperWidth

ความกว้างของกระดาษที่ระบุ โดยสมาชิกdmPaperSizeแทน?

dmScale

ระบุตัวคูณซึ่งพิมพ์ผลลัพธ์คือการปรับ ขนาดของหน้าแจ้งปรับจากขนาดของหน้าทางกายภาพ ด้วยตัวคูณของdmScale/100 ตัวอย่าง ขนาดตัวอักษรหน้า ด้วยค่าdmScale 50 จะประกอบด้วยข้อมูลมากเป็นหน้าของ 17 โดย 22 นิ้วเนื่องจากการแสดงผลข้อความและกราฟิกจะเป็นต้นฉบับสูงและความกว้างของครึ่ง?

dmCopies

เลือกจำนวนของสำเนาที่พิมพ์ถ้าอุปกรณ์นั้นรองรับสำเนาหลายหน้า?

dmDefaultSource

สงวน ต้องเป็นศูนย์?

dmPrintQuality

ระบุการแก้ไขปัญหาเครื่องพิมพ์ มีสี่ค่าไม่ขึ้นกับอุปกรณ์ที่กำหนดไว้ล่วงหน้า:

dmColor

สลับสีและขาวดำบนเครื่องพิมพ์สี ต่อไปนี้เป็นค่าเป็นไปได้:

dmDuplex

เลือกการพิมพ์แบบสองทาง หรือสองสำหรับเครื่องพิมพ์ที่มีความสามารถในการพิมพ์แบบสองทาง ต่อไปนี้เป็นค่าเป็นไปได้:

dmYResolution

ระบุ y-ความละเอียด ในจุดต่อนิ้ว ของเครื่องพิมพ์ ถ้าเครื่องพิมพ์เริ่มต้นนี้สมาชิก สมาชิกdmPrintQualityระบุ x-ความละเอียด จุดต่อนิ้ว ของเครื่องพิมพ์?

dmTTOption

ระบุว่า ควรจะพิมพ์แบบอักษร TrueType ? สมาชิกนี้สามารถเป็นหนึ่งในค่าต่อไปนี้:

dmCollate

ระบุว่า ควรใช้เปรียบเทียบเมื่อพิมพ์หลายสำเนา ใช้DMCOLLATE_FALSEได้รวดเร็วขึ้น มีประสิทธิภาพส่งเอาท์พุท เนื่องจากข้อมูลจะถูกส่งไปยังเครื่องพิมพ์หน้าเพียงครั้งเดียว ไม่ว่าจะกี่สำเนาถูกต้อง เครื่องพิมพ์จะบอกเพียงแค่พิมพ์หน้าอีกครั้ง สมาชิกนี้สามารถถูกเป็นหนึ่งในค่าต่อไปนี้:

dmFormName

ระบุชื่อของฟอร์มเพื่อใช้ ตัวอย่างเช่น ตัวอักษรหรือกฎหมาย ชุดของชื่อสามารถเรียกผ่าน Windows EnumFormsฟังก์ชัน?

dmUnusedPadding

ใช้การจัดโครงสร้างเพื่อขอบDWORD นี้ควรไม่ใช้ หรืออ้างถึง ชื่อและใช้งานถูกสงวนไว้ และสามารถเปลี่ยนแปลงในอนาคตประชาสัมพันธ์?

dmBitsPerPel

ระบุความละเอียดสีของอุปกรณ์แสดงผลในหน่วยบิตต่อพิกเซล ตัวอย่าง: 4 บิตสี 16, 8 บิต 256 สี หรือ 16 บิต 65536 สี?

dmPelsWidth

ระบุความกว้าง พิกเซล ของอุปกรณ์ที่สามารถมองเห็นพื้นผิว?

dmPelsHeight

ระบุความสูง พิกเซล ของอุปกรณ์ที่สามารถมองเห็นพื้นผิว?

dmDisplayFlags

ระบุโหมดการแสดงผลของอุปกรณ์ ต่อไปเป็นสถานะที่ถูกต้อง:

dmDisplayFrequency

ระบุความถี่ ในเฮิรตซ์ (รอบต่อวินาที), อุปกรณ์แสดงผลในโหมดใด?

ความคิดเห็น

ข้อมูลส่วนตัวของโปรแกรมควบคุมอุปกรณ์จะทำตามสมาชิกdmDisplayMode ระบุจำนวนไบต์ของข้อมูลส่วนตัว โดยสมาชิกdmDriverExtra?

ดูเพิ่มเติมnbspCDC::ResetDC, CPrintDialog::GetDevMode(&N)

Index