先来看一下具体执行类的构造函数,代码如下: DesktopAndCursorComposer::DesktopAndCursorComposer( std::unique_ptr<DesktopCapturer...MouseCursorMonitor::Create(options).release()) {} DesktopAndCursorComposer::DesktopAndCursorComposer( DesktopCapturer...然后就是启动桌面采集时和执行桌面采集时的代码逻辑区分,如果设置了mouse_monitor,才进行鼠标的捕捉,代码如下: void DesktopAndCursorComposer::Start(DesktopCapturer
handleError ) Electron获取窗口的流 下面的示例演示如何从标题为 Electron 的桌面窗口捕获视频: // In the renderer process. const { desktopCapturer...} = require('electron') desktopCapturer.getSources({ types: ['window', 'screen'] }).then(async sources...= electron.desktopCapturer; const {screen} = window.require("electron").remote; jieping1() { let...this; let display = screen.getPrimaryDisplay(); let scaleFactor = display.scaleFactor; desktopCapturer...$emit("jiangping_image", imageurl); }); }, desktopCapturer.getSources 会导致整个程序挂起,挂起时间与屏幕分辨率、屏幕数量和电脑性能有关
Electron上截图的实现方案 方案1 使用Electron提供的API 新建一个BrowserWindow; 在窗口加载完成,调用desktopCapturer获取缩略图 在窗口绘制两个canvas...,一个用于遮罩,一个用于显示裁剪区域 附一下desktopCapturer的使用: jieping() { let that = this; let display = screen.getPrimaryDisplay...display.bounds.width * scaleFactor); logger.log("height:", display.bounds.height * scaleFactor); desktopCapturer
"支持" : "不支持")); } 获取可用的视频源 desktopCapturer.getSources({ types: ['screen'] }, (error, sources) => {
Renderer Process 模块 desktopCapturer 从桌面上捕获音频和视频的媒体源信息。 ipcRenderer 从渲染器进程到主进程的异步通信。
模块和 session 模块等,少量模块是专门为渲染进程的逻辑服务的,比如 ipcRenderer 模块、webFrame 模块等,只有少量模块是两个进程可以同时使用的,比如:clipboard 模块、desktopCapturer
以纯文本的形式写入剪贴板: clipboard.writeText(text[, type]) 以纯文本的形式获取剪贴板的内容: clipboard.readText([type]) 7.3 截图 desktopCapturer...this.determineScreenShotSize() let options = { types: ['screen'], thumbnailSize: thumbSize } desktopCapturer.getSources
Electron 提供了一个获取各个“窗口”和“屏幕”视频 MediaSourceId 的通用 API import { desktopCapturer } from 'electron'; //...获取全部窗口或屏幕的mediaSourceId desktopCapturer.getSources({ types: ['screen', 'window'], // 设定需要捕获的是"屏幕"
领取专属 10元无门槛券
手把手带您无忧上云