Электронный скриншот слишком мал

Привет, я использую электрон, чтобы сделать снимок экрана всего экрана, и мой код работает хорошо, за исключением того факта, что размер загружаемого снимка экрана слишком мал.

Это функция js, которая делает снимок экрана при нажатии кнопки

renderer.js:

const electron = require('electron');

const desktopCapturer = electron.desktopCapturer;
const electronScreen = electron.screen;
const shell = electron.shell;

const remote = electron.remote;
const dialog = remote.dialog;

const fs = require('fs');
const os = require('os');
const path = require('path');

const screenshot = document.getElementById('screen-shot');
const screenshotMsg = document.getElementById('screenshot-path');
const pathButton = document.getElementById('path-button');

 var screenShotPath ='';

 pathButton.addEventListener('click',function (event) {
     dialog.showSaveDialog(function (fileName) {
         if (fileName == undefined){
             return;
         }
         screenShotPath = fileName;
         screenshotMsg.textContent = screenShotPath;
     });
 });
screenshot.addEventListener('click',function(event){
    screenshotMsg.textContent =  'Gathering screens';
    const thumbSize = determineScreenshot();
    console.info(thumbSize.height);
    console.info(thumbSize.width);
    let options  = {types: ['screen'], thumnailSize: thumbSize};

    desktopCapturer.getSources(options,function (error,sources) {
        console.info(sources);
        if (error) return console.info(error.message);

        sources.forEach(function (source) {
           if (source.name === "Entire screen" || source.name === "Screen 1" ){
                if (screenShotPath === ''){
                    screenShotPath = path.join(os.tmpdir(),'screenshot.jpeg');
                }
                console.info(screenShotPath);
                fs.writeFile(screenShotPath,source.thumbnail.toPNG(), function (err) {
                    if (err) return console.info(err.message);

                    shell.openExternal("file://"+screenShotPath);
                    var message = 'Saved SS to ' + screenShotPath;
                    screenshotMsg.textContent = message;
                });
           }
        });
    });
});

function  determineScreenshot() {
        const screensize =electronScreen.getPrimaryDisplay().workAreaSize;
        const maxDimension = Math.max(screensize.width,screensize.height);
        console.info(maxDimension);

        return {
            width: maxDimension * window.devicePixelRatio,
            height: maxDimension * window.devicePixelRatio
        };
}

Снимок экрана хорошо передает рабочую область, но проблема в том, что он слишком мал. Может кто-нибудь подскажет, как его размер увеличить? Прилагаю сгенерированный скриншот.

поможет ли этот учебник? ourcodeworld.com/articles/read/280/… - Кстати, вы можете дважды проверить числа, возвращаемые determineScreenshot() - поскольку это, похоже, влияет на размеры вашего снимка экрана. Специально эта строчка: maxDimension * window.devicePixelRatio (и следующая)

blurfus 30.05.2018 20:33

Возвращенные значения - 1366 и 1366, но все же они кажутся маленькими.

Dhirish 30.05.2018 20:47

вы получаете какие-либо ошибки, отображаемые в консоли?

blurfus 30.05.2018 20:58

Понятно, произошла ошибка с написанием "thumnailSize"

Dhirish 30.05.2018 22:22

это отображалось в консоли? - рад, что это разрешилось ...

blurfus 30.05.2018 23:42

Нет, я ввел код

Dhirish 31.05.2018 20:52
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
6
709
0

Другие вопросы по теме