scaleflt.h

来自「WDK 下的XPSDrv 中filter 例子之scaling」· C头文件 代码 · 共 68 行

H
68 行
字号
/*++

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:

   scaleflt.h

Abstract:

   Page Scaling filter defnition. This class derives from the Xps filter
   class and implements the necessary part handlers to support Page Scaling.
   The Page Scaling filter is responsible for adding mark-up to
   the XPS document to allow scaling of pages.

--*/

#pragma once

#include "xdstrmflt.h"
#include "pagescale.h"
#include "gdip.h"

class CPageScalingFilter : public CXDStreamFilter
{
public:
    CPageScalingFilter();

    virtual ~CPageScalingFilter();

    static CONST CLSID&
    GetCLSID(
        VOID
        );

    virtual HRESULT
    ProcessFixedPage(
        __in  IXMLDOMDocument2*  pFPPT,
        __in  ISequentialStream* pPageReadStream,
        __out ISequentialStream* pPageWriteStream
        );

private:
    HRESULT
    GetPageScaling(
        __in            IXMLDOMDocument2*  pPrintTicket,
        __in            IXMLDOMDocument2*  pPrintCapabilities,
        __deref_out_opt CPageScaling** ppPageScaling
        );

private:
    GDIPlus                   m_gdiPlus;

    //
    // {66D9ED63-9A28-4cd0-8525-8342F98384CF}
    //
    static CLSID CLSID_PageScalingFilter;
};


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?