📄 watermarkimpl.cpp
字号:
//---------------------------------------------------------------------------
//我开放这个程序的代码并不是为了让你篡改版权,然后发布。
//个人希望你能从这个代码中受益,发现我的代码中好的,或者不好的东西。
//如果你觉得我写的代码在某些方面有问题,那么请务必要告诉我。
//期望共同进步!
//mikespook
//版权所有 (C) 2002-2004 mikespook & swill 保留所有权利。
//---------------------------------------------------------------------------
// WATERMARKIMPL : Implementation of TWatermarkImpl
#include <vcl.h>
#pragma hdrstop
#include "WATERMARKIMPL.H"
/////////////////////////////////////////////////////////////////////////////
// TWatermarkImpl
STDMETHODIMP TWatermarkImpl::Close()
{
try
{
delete FWatermark;
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::Open(BSTR FileName)
{
try
{
FWatermark = new TXYWatermark(FileName);
FFileName = FileName;
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::Reload()
{
try
{
FWatermark->LoadFromFile(FFileName);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::Save()
{
try
{
FWatermark->SaveToFile(FFileName);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::SaveAs(BSTR FileName)
{
try
{
FWatermark->SaveToFile(FileName);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::SetFont(BSTR Name, int Size, long Color)
{
try
{
FWatermark->Font->Name = Name;
FWatermark->Font->Size = Size;
FWatermark->Font->Color = TColor(Color);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::SetText(BSTR Text, unsigned_long X,
unsigned_long Y, unsigned_short isTrans)
{
try
{
FWatermark->SetText(Text, Point(X, Y), (bool)isTrans);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::SetWatermark(BSTR FileName, unsigned_long X,
unsigned_long Y, unsigned_short isTrans)
{
try
{
FWatermark->SetWatermark(FileName, Point(X, Y), (bool)isTrans);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::get_BKColor(long* Value)
{
try
{
Value = (long *)FWatermark->BKColor;
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
};
STDMETHODIMP TWatermarkImpl::get_TransColor(long* Value)
{
try
{
Value = (long *)FWatermark->TransColor;
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
};
STDMETHODIMP TWatermarkImpl::set_BKColor(long Value)
{
try
{
FWatermark->BKColor = &TColor(Value);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
};
STDMETHODIMP TWatermarkImpl::set_TransColor(long Value)
{
try
{
FWatermark->TransColor = &TColor(Value);
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
};
STDMETHODIMP TWatermarkImpl::Resize(unsigned_long Width,
unsigned_long Height)
{
try
{
FWatermark->Resize(Point(Width, Height));
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
}
STDMETHODIMP TWatermarkImpl::get_BMP(BSTR * Value)
{
try
{
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
};
STDMETHODIMP TWatermarkImpl::get_JPEG(BSTR * Value)
{
try
{
}
catch(const Exception &E)
{
Response->Write(TVariant("XY组件错误:" + E.Message));
return Error(E.Message.c_str(), IID_IWatermark);
}
return S_OK;
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -