다음을 통해 공유


ATTRIBUTE_INFO_4 구조체(winddiui.h)

ATTRIBUTE_INFO_4 구조체는 프린터 인터페이스 DLL의 DrvQueryJobAttributes 함수에 대한 매개 변수로 사용됩니다. 모든 멤버 값은 함수로 제공됩니다. 이 구조는 ATTRIBUTE_INFO_3 비슷하지만 N-up, 이중 인쇄 및 소책자 인쇄 및 크기 조정을 제어하는 추가 멤버가 포함됩니다.

구문

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;

멤버

dwJobNumberOfPagesPerSide

사용자가 요청한 실제 페이지의 한쪽에 배치할 문서 페이지 수입니다. 허용되는 값은 1, 2, 4, 6, 9 또는 16입니다.

dwDrvNumberOfPagesPerSide

프린터와 드라이버가 실제 페이지의 한쪽에 배치할 수 있는 문서 페이지 수입니다. 이 값은 1이거나 dwJobNumberOfPagesPerSide에 지정된 값이어야 합니다.

dwNupBorderFlags

다음 비트 플래그 값 중 하나입니다.

플래그 정의
BORDER_PRINT 인쇄 프로세서는 페이지 주위에 테두리를 그려야 합니다.
NO_BORDER_PRINT 인쇄 프로세서는 페이지 주위에 테두리를 그려서는 안 됩니다.

dwJobPageOrderFlags

다음 비트 플래그 값 중 하나입니다.

플래그 정의
BOOKLET_PRINT 페이지는 두 개의 문서 페이지가 실제 페이지의 한쪽에 인쇄되어 있는 소책자 양식으로 인쇄해야 합니다. 가로 모드에서는 두 문서 페이지가 용지에 나란히 인쇄됩니다. 세로 모드에서는 두 문서 페이지가 위쪽과 아래쪽으로 인쇄됩니다.
NORMAL_PRINT 페이지는 1페이지, 2페이지 등 일반 순서로 인쇄해야 합니다.
REVERSE_PRINT 페이지는 마지막 페이지, 다음 페이지 등 역순으로 인쇄해야 합니다.

dwDrvPageOrderFlags

프린터 및 드라이버에서 지원하는 페이지 순서 옵션을 나타내는 비트 플래그입니다. dwJobPageOrderFlags와 동일한 플래그를 사용합니다.

dwJobNumberOfCopies

사용자가 요청한 인쇄 작업의 복사본 수입니다.

dwDrvNumberOfCopies

정렬 및 스테이플링과 같은 작업 특성을 고려하여 프린터와 드라이버가 한 번에 처리할 수 있는 최대 복사본 수입니다.

dwColorOptimization

다음 비트 플래그 값 중 하나입니다.

플래그 정의
COLOR_OPTIMIZATION 인쇄 프로세서는 단색 색 최적화를 사용해야 합니다.
NO_COLOR_OPTIMIZATION 인쇄 프로세서는 단색 색 최적화를 사용하면 안 됩니다.

dmPrintQuality

COLOR_OPTIMIZATION 플래그가 dwColorOptimization으로 설정된 경우 인쇄 작업의 DEVMODEW 구조체의 dmPrintQuality 멤버 대신 사용할 값입니다.

dmYResolution

COLOR_OPTIMIZATION 플래그가 dwColorOptimization으로 설정된 경우 인쇄 작업의 DEVMODEW 구조체의 dmYResolution 멤버 대신 사용할 값입니다.

dwDuplexFlags

이중 인쇄에 사용되는 다음 비트 플래그 값 중 하나입니다.

플래그 정의
DONT_SEND_EXTRA_PAGES_FOR_DUPLEX 인쇄 프로세서는 이중 인쇄 시 빈 페이지를 추가로 보내지 않아야 합니다. 예를 들어 이중 인쇄를 위해 3페이지 작업을 보내는 경우 일부 프린터는 4페이지를 받을 것으로 예상합니다. Microsoft Windows XP 또는 Windows Server 2003에서 이 작업을 인쇄하는 경우 인쇄 프로세서는 기본적으로 프린터로 4페이지를 보냅니다(네 번째 페이지는 빈 페이지임). 이 플래그가 설정된 Windows Vista에서 이 작업을 인쇄하는 경우 인쇄 프로세서는 인쇄 작업의 세 페이지만 보내고 빈 추가 페이지를 보내지 않습니다.
REVERSE_PAGES_FOR_REVERSE_DUPLEX 인쇄 프로세서는 역방향 이중 모드로 인쇄할 때 페이지 쌍의 순서를 반전해야 합니다. 예를 들어 이 플래그가 설정되면 인쇄 프로세서는 8, 7, 6, 5, 6, 3, 4, 1, 2, 4, 3, 2, 1 순서로 페이지를 인쇄해야 합니다.

드라이버에 이러한 옵션이 필요하지 않은 경우 0으로 설정합니다.

dwNupDirection

N-up 인쇄에 사용되는 다음 비트 플래그 값 중 하나입니다.

플래그 정의
RIGHT_THEN_DOWN 인쇄 프로세서는 페이지 이미지를 왼쪽에서 오른쪽으로, 마지막 인쇄 페이지 아래로 순서대로 제공해야 합니다. N업 인쇄가 필요하지 않은 경우에도 이 값으로 설정합니다.
DOWN_THEN_RIGHT 인쇄 프로세서는 페이지 이미지를 위에서 아래로 순서대로 제공한 다음 마지막 인쇄 페이지에서 왼쪽에서 오른쪽으로 제공해야 합니다.
LEFT_THEN_DOWN 인쇄 프로세서는 오른쪽에서 왼쪽으로, 마지막 인쇄된 페이지 아래로 페이지 이미지를 순서대로 제공해야 합니다.
DOWN_THEN_LEFT 인쇄 프로세서는 페이지 이미지를 순서대로 위에서 아래로, 마지막 인쇄 페이지에서 오른쪽에서 왼쪽으로 제공해야 합니다.

이 플래그는 dwJobNumberOfPagesPerSide 및/또는 dwDrvNumberOfPagesPerSide 가 N-up 인쇄가 활성 상태임을 나타내는 경우에만 고려됩니다. 자세한 내용은 dwJobNumberOfPagesPerSidedwDrvNumberOfPagesPerSide에 대한 위의 설명을 참조하세요.

dwBookletFlags

dwJobPageOrderFlags가 BOOKLET_PRINT 설정된 경우 다음 값 중 하나입니다.

플래그 정의
BOOKLET_EDGE_LEFT 인쇄 프로세서는 마지막 접힌 소책자의 바운드 가장자리가 페이지 1의 왼쪽 가장자리에 있는 왼쪽에서 오른쪽 소책자 레이아웃으로 페이지를 인쇄해야 합니다.
BOOKLET_EDGE_RIGHT 인쇄 프로세서는 마지막 접힌 소책자의 경계 가장자리가 페이지 1의 오른쪽 가장자리에 있는 오른쪽에서 왼쪽 소책자 레이아웃으로 페이지를 인쇄해야 합니다.

dwJobPageOrderFlags가 BOOKLET_PRINT 설정되지 않은 경우 dwBookletFlags는 0으로 설정됩니다.

이 플래그는 dwJobPageOrderFlags 멤버가 BOOKLET_PRINT 설정된 경우에만 고려됩니다.

dwScalingPercentX

일반 용지 크기와 관련하여 가로(x) 방향의 배율입니다. 1에서 1000까지의 범위여야 합니다. 크기 조정이 수행되지 않으면 100으로 설정합니다.

예측 가능한 인쇄 결과를 보장하려면 dwScalingPercentXdwScalingPercentY 의 값이 같아야 합니다.

dwScalingPercentY

일반 용지 크기와 관련하여 세로(y) 방향의 배율입니다. 1에서 1000까지의 범위여야 합니다. 크기 조정이 수행되지 않으면 100으로 설정합니다.

예측 가능한 인쇄 결과를 보장하려면 dwScalingPercentXdwScalingPercentY 의 값이 같아야 합니다.

설명

인쇄 작업의 DEVMODEW 구조체의 dmPrintQuality 멤버가 DMRES_HIGH 같은 음수 값이고 흑백 색 최적화를 사용하도록 설정한 경우 색과 흑백 간에 전환하면 다른 해상도가 사용될 수 있습니다. DMRES_HIGH 색 및 흑백 렌더링을 위해 다른 DPI 값에 할당될 수 있기 때문입니다. (Unidrv 지원 디바이스의 경우 이 할당은 프린터의 GPD 파일에서 발생합니다.) 인쇄 작업 전체에서 일관된 해상도를 보장하기 위해 드라이버는 양수 dmPrintQualitydmYResolution 값(특정 DPI 해상도를 나타낸)을 지정하여 동등한 DEVMODEW 값을 재정의할 수 있습니다.

EMF 인쇄 프로세서는 dwColorOptimization 에 지정된 플래그를 사용하여 단색 색 최적화를 수행하도록 GDI를 요청할지 여부를 결정합니다. 흑백 색 최적화를 사용하도록 설정하면 인쇄 작업을 모노크롬과 컬러 렌더링 간에 적절하게 전환할 수 있습니다.

색 워터마크를 생성하기 위해 Unidrv 렌더링 플러그 인을 만드는 경우 dwColorOptimization 멤버가 COLOR_OPTIMIZATION 설정되면 흑백 문서에 인쇄될 때 색 워터마크가 흑백으로 인쇄됩니다. 색 워터마크가 색 및 흑백 문서로 올바르게 인쇄되도록 하려면 색 최적화를 사용하지 않도록 설정합니다. 색 최적화는 Unidrv *ChangeColorModeOnDoc? 색 특성( 색 특성 참조)과 GdiEndPageEMF 함수를 통해 제어할 수도 있습니다.

ATTRIBUTE_INFO_4 멤버의 기본값 목록은 GetJobAttributesEx를 참조하세요.

요구 사항

요구 사항
헤더 winddiui.h(Winddiui.h, Winsplp.h 포함)

추가 정보

ATTRIBUTE_INFO_2

ATTRIBUTE_INFO_3

DrvQueryJobAttributes

GdiEndPageEMF

GetJobAttributesEx