📄 watermarkimpl.h
字号:
//---------------------------------------------------------------------------
//我开放这个程序的代码并不是为了让你篡改版权,然后发布。
//个人希望你能从这个代码中受益,发现我的代码中好的,或者不好的东西。
//如果你觉得我写的代码在某些方面有问题,那么请务必要告诉我。
//期望共同进步!
//mikespook
//版权所有 (C) 2002-2004 mikespook & swill 保留所有权利。
//---------------------------------------------------------------------------
// WATERMARKIMPL.H : Declaration of the TWatermarkImpl
#ifndef WatermarkImplH
#define IDEHEaderName
#define ATL_APARTMENT_THREADED
#include "XY_TLB.H"
#include <asphlpr.h>
#include "unXYWatermark.h"
/////////////////////////////////////////////////////////////////////////////
// TWatermarkImpl Implements IWatermark, default interface of Watermark
// ThreadingModel : Apartment
// Dual Interface : TRUE
// Event Support : FALSE
// Default ProgID : XY.Watermark
// Description :
/////////////////////////////////////////////////////////////////////////////
class ATL_NO_VTABLE TWatermarkImpl :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<TWatermarkImpl, &CLSID_Watermark>,
public IDispatchImpl<IWatermark, &IID_IWatermark, &LIBID_XY>,
public TMTSASPObject
{
public:
TWatermarkImpl()
{
}
// Data used when registering Object
//
DECLARE_THREADING_MODEL(otApartment);
DECLARE_PROGID(_T("XY.Watermark"));
DECLARE_DESCRIPTION(_T(""));
// Function invoked to (un)register object
//
static HRESULT WINAPI UpdateRegistry(BOOL bRegister)
{
TTypedComServerRegistrarT<TWatermarkImpl>
regObj(GetObjectCLSID(), GetProgID(), GetDescription());
return regObj.UpdateRegistry(bRegister);
}
DECLARE_NOT_AGGREGATABLE(TWatermarkImpl)
BEGIN_COM_MAP(TWatermarkImpl)
COM_INTERFACE_ENTRY(IWatermark)
COM_INTERFACE_ENTRY2(IDispatch, IWatermark)
END_COM_MAP()
// IWatermark
public:
private:
AnsiString FFileName;
TXYWatermark * FWatermark;
STDMETHOD(Close());
STDMETHOD(Open(BSTR FileName));
STDMETHOD(Reload());
STDMETHOD(Save());
STDMETHOD(SaveAs(BSTR FileName));
STDMETHOD(SetFont(BSTR Name, int Size, long Color));
STDMETHOD(SetText(BSTR Text, unsigned_long X, unsigned_long Y,
unsigned_short isTrans));
STDMETHOD(SetWatermark(BSTR FileName, unsigned_long X, unsigned_long Y,
unsigned_short isTrans));
STDMETHOD(get_BKColor(long* Value));
STDMETHOD(get_TransColor(long* Value));
STDMETHOD(set_BKColor(long Value));
STDMETHOD(set_TransColor(long Value));
STDMETHOD(Resize(unsigned_long Width, unsigned_long Height));
STDMETHOD(get_BMP(BSTR * Value));
STDMETHOD(get_JPEG(BSTR * Value));
};
#endif //WatermarkImplH
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -