summaryrefslogtreecommitdiff
path: root/print/XPSDrvSmpl/src/common/wmschema.h
blob: 734a99dfbb3a0c8ace66bcd149dbd8a94edb6fb4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
/*++

Copyright (c) 2005 Microsoft Corporation

All rights reserved.

THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.

File Name:

   wmschema.h

Abstract:

   PageWatermark PrintSchema definition. This defines the features, options
   and enumerations that describe the PrintSchema PageWatermark feature within
   a XDPrintSchema::PageWatermark namespace.

--*/

#pragma once

#include "schema.h"

namespace XDPrintSchema
{
    //
    // PageWatermark elements described as Printschema keywords
    //
    namespace PageWatermark
    {
        //
        // Feature name
        //
        extern LPCWSTR WATERMARK_FEATURE;

        //
        // Option names
        //
        enum EWatermarkOption
        {
            NoWatermark = 0, EWatermarkOptionMin = 0,
            TextWatermark,
            BitmapWatermark,
            VectorWatermark,
            EWatermarkOptionMax
        };

        extern LPCWSTR WATERMARK_OPTIONS[EWatermarkOptionMax];

        //
        // Common watermark properties
        //
        enum ECommonWatermarkProps
        {
            WidthOrigin = 0, ECommonWatermarkPropsMin = 0,
            HeightOrigin,
            Transparency,
            Angle,
            ECommonWatermarkPropsMax
        };

        extern LPCWSTR CMN_WATERMARK_PROPS[ECommonWatermarkPropsMax];

        //
        // Text watermark properties
        //
        enum ETextWatermarkProps
        {
            FontColor = 0, ETextWatermarkPropsMin = 0,
            FontSize,
            Text,
            ETextWatermarkPropsMax
        };

        extern LPCWSTR TXT_WATERMARK_PROPS[ETextWatermarkPropsMax];

        //
        // Vector / Bitmap common properties
        //
        enum EVectBmpWatermarkProps
        {
            WidthExtent = 0, EVectBmpWatermarkPropsMin = 0,
            HeightExtent,
            EVectBmpWatermarkPropsMax
        };

        extern LPCWSTR VECTBMP_WATERMARK_PROPS[EVectBmpWatermarkPropsMax];

        //
        // Layering sub feature
        //
        namespace Layering
        {
            extern LPCWSTR LAYERING_FEATURE;

            //
            // Layering options
            //
            enum ELayeringOption
            {
                Underlay = 0, ELayeringOptionMin = 0,
                Overlay,
                ELayeringOptionMax
            };

            extern LPCWSTR LAYERING_OPTIONS[ELayeringOptionMax];
        }
    }
}