ScnLib_TakeScreenshot()

ScnLib_TakeScreenshotA/W()

标准版专业版超级版至尊版
C++ __declspec(dllimport) BOOL __stdcall ScnLib_TakeScreenshotA(LPSTR pszPath, long left, long top, long right, long bottom);
__declspec(dllimport) BOOL __stdcall ScnLib_TakeScreenshotW(LPWSTR pwszPath, long left, long top, long right, long bottom);
C# [DllImport("ScnLib.dll", CharSet = CharSet.Unicode)] public static extern bool ScnLib_TakeScreenshotW(StringBuilder Path, int left, int top, int right, int bottom);
Basic Public Declare Unicode Function ScnLib_TakeScreenshotW Lib "ScnLib.dll" (ByVal Path As StringBuilder, ByVal left As Int32, ByVal top As Int32, ByVal right As Int32, ByVal bottom As Int32) As Boolean
Delphi function ScnLib_TakeScreenshotA(Path: PAnsiChar; left: Integer; top: Integer; right: Integer; bottom: Integer): LongBool; stdcall; external 'ScnLib.dll';
function ScnLib_TakeScreenshotW(Path: PWideChar; left: Integer; top: Integer; right: Integer; bottom: Integer): LongBool; stdcall; external 'ScnLib.dll';
  • 描述
    对指定的屏幕区域进行截图。

  • 参数
    • Path [in/out]
      输入和输出的截图文件路径。确保分配的字符串缓冲区容量大于260个字符。支持的截图图像格式包括 PNG、BMP、JPG 和 TIFF。文件路径可以包含以下任意组合的预定义变量:
      • <num> - 在文件名中插入一个自动递增的数字,以确保其唯一性。
      • <date> - 在文件名中包含代表当前日期的字符串。
      • <time> - 在文件名中包含代表当前时间的字符串。
      例如:C:\Temp\Rec <date> <time>.png
    • left [in]
      代表屏幕截取矩形左上角的 x 坐标,以像素为单位。
    • top [in]
      代表屏幕截取矩形左上角的 y 坐标,以像素为单位。
    • right [in]
      代表屏幕截取矩形右下角的 x 坐标,以像素为单位。
    • bottom [in]
      代表屏幕截取矩形右下角的 y 坐标,以像素为单位。
    • 指定的屏幕截取区域不包括矩形的右侧和底部边缘。
  • 返回值
    如果截图成功拍摄并保存,返回值为TRUE。否则,返回值为FALSE。

  • 备注
    调用此函数对指定的屏幕区域进行截图。文件路径可以包含上述描述的预定义变量组合。Path字符串将获得实际的输出文件路径。如果您不愿意在路径中使用变量,可以手动创建一个唯一的文件路径。请注意,如果指定的文件路径已存在,文件将被覆盖。文件扩展名决定了输出的图像格式,支持的格式包括 .PNG、.BMP、.JPG 和 .TIFF。

    如果指定了一个空矩形坐标,则会截取当前设定的屏幕录制区域。要截取特定窗口,请使用 Win32 API 函数 GetWindowRect() 获取窗口的矩形位置,然后将坐标传递给此函数。要让用户自行选择屏幕截取区域,请调用ScnLib_SelectCaptureRegionA/W()

  • 参见
    ScnLib_SelectCaptureRegionA/W()

下载 SDK API 总览