add artplayerPluginBacklight

This commit is contained in:
Harvey Zack committed 2019-04-18 17:00:51 +08:00
1 parent 80e04f7a4b
commit a2c3e0d019
18 files changed
+461 -40

No files matched your search

@@ -14,7 +14,7 @@ export default function screenshot(controlOption) {
const $screenshot = append($control, icons.screenshot);
tooltip($screenshot, i18n.get('Screenshot'));
proxy($screenshot, 'click', () => {
player.screenshot();
player.downloadScreenshot();
});
},
});
+17 -13
View File
@@ -7,24 +7,28 @@ export default function screenshotMix(art, player) {
template: { $video },
} = art;
function captureFrame() {
const canvas = document.createElement('canvas');
canvas.width = $video.videoWidth;
canvas.height = $video.videoHeight;
canvas.getContext('2d').drawImage($video, 0, 0);
const dataUri = canvas.toDataURL('image/png');
downloadImage(dataUri, `${option.title || 'artplayer'}_${secondToTime($video.currentTime)}.png`);
return dataUri;
}
Object.defineProperty(player, 'screenshot', {
Object.defineProperty(player, 'getScreenshotDataURL', {
value: () => {
try {
const dataUri = captureFrame();
art.emit('screenshot', dataUri);
const canvas = document.createElement('canvas');
canvas.width = $video.videoWidth;
canvas.height = $video.videoHeight;
canvas.getContext('2d').drawImage($video, 0, 0);
return canvas.toDataURL('image/png');;
} catch (error) {
notice.show(error);
console.warn(error);
return null;
}
},
});
Object.defineProperty(player, 'downloadScreenshot', {
value: () => {
const dataUri = player.getScreenshotDataURL();
if (dataUri) {
downloadImage(dataUri, `${option.title || 'artplayer'}_${secondToTime($video.currentTime)}.png`);
art.emit('screenshot', dataUri);
}
},
});
@@ -1,5 +1,6 @@
.artplayer-video-player {
position: relative;
z-index: 10;
width: 100%;
height: 100%;
outline: 0;