12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- /*
- * <<
- * Davinci
- * ==
- * Copyright (C) 2016 - 2017 EDP
- * ==
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * >>
- */
- import slide from 'assets/json/slideSettings/slide.json'
- import { ISlideParams } from 'containers/Viz/types'
- import { ILayerParams } from './types'
- export { computeEditorBaselines } from './Container/Slide/util'
- export { setLayersAlignment } from './Setting/Alignment/util'
- import { GraphTypes, SecondaryGraphTypes, slideSettings } from './constants'
- export function getDefaultSlideParams() {
- const params = (slide as any).params
- const defaultSlideParams = {}
- params.forEach((param) => {
- param.items.forEach((item) => {
- defaultSlideParams[item.name] = item.default || null
- })
- })
- return defaultSlideParams as ISlideParams
- }
- export function getDefaultLayerSetting(
- graphType: GraphTypes,
- secondaryGraphType?: SecondaryGraphTypes
- ) {
- const defaultSetting = {}
- const type = secondaryGraphType || graphType
- const setting = slideSettings[type]
- if (!setting) {
- return defaultSetting as ILayerParams
- }
- setting.params.forEach((param) => {
- param.items.forEach((item) => {
- defaultSetting[item.name] = item.default || null
- })
- })
- return defaultSetting as ILayerParams
- }
- export const captureVideosWithImages = (canvasDom) => {
- const canvas = canvasDom || document.createElement('canvas')
- const ctx = canvas.getContext('2d')
- const videos = document.querySelectorAll('video')
- Array.prototype.forEach.call(videos, (v) => {
- if (!v.src) {
- return
- }
- try {
- const { videoWidth, videoHeight } = v
- canvas.width = videoWidth
- canvas.height = videoHeight
- ctx.fillRect(0, 0, videoWidth, videoHeight)
- ctx.drawImage(v, 0, 0, videoWidth, videoHeight)
- v.style.backgroundImage = `url(${canvas.toDataURL()})`
- v.style.backgroundSize = 'cover'
- console.log('v.style: ', v.style)
- ctx.clearRect(0, 0, videoWidth, videoHeight)
- } catch (e) {
- console.log('e: ', e)
- return
- }
- })
- }
|