Вы можете достичь этого несколькими способами.
let foo = {
bar: 'Hello World'
};
foo.bar;
foo['bar'];
Обозначение скобок особенно мощно, так как оно позволяет вам получить доступ к свойству на основе переменной:
let foo = {
bar: 'Hello World'
};
let prop = 'bar';
foo[prop];
Это может быть расширено до циклизации по каждому свойству объекта. Это может казаться излишним из-за новых конструкций JavaScript, таких как ... из ..., но помогает иллюстрировать прецедент:
let foo = {
bar: 'Hello World',
baz: 'How are you doing?',
last: 'Quite alright'
};
for (let prop in foo.getOwnPropertyNames()) {
console.log(foo[prop]);
}
Оба точечных и скобковых обозначения также работают как ожидалось для вложенных объектов :
let foo = {
bar: {
baz: 'Hello World'
}
};
foo.bar.baz;
foo['bar']['baz'];
foo.bar['baz'];
foo['bar'].baz;
Деструктурирование объекта
Мы могли бы также рассмотреть разрушение объекта как средство доступа к свойству в объекте, но следующим образом:
let foo = {
bar: 'Hello World',
baz: 'How are you doing?',
last: 'Quite alright'
};
let prop = 'last';
let { bar, baz, [prop]: customName } = foo;
// bar = 'Hello World'
// baz = 'How are you doing?'
// customName = 'Quite alright'
Вы должны проверить следующую библиотеку. Может быть полезно.
https://github.com/PHP-FFMpeg/PHP-FFMpeg#watermark
Отметить видео с заданным изображением.
$video
->filters()
->watermark($watermarkPath, array(
'position' => 'relative',
'bottom' => 50,
'right' => 50,
));
https://transloadit.com/demos/video-encoding/watermarking/
Видео с водяным знаком
"watermarked": {
"use": "resized",
"robot": "/video/encode",
"ffmpeg_stack": "v3.3.3",
"result": true,
"preset": "ipad-high",
"watermark_url": "https://demos.transloadit.com/inputs/transloadit-padded.png",
"watermark_size": "25%",
"watermark_opacity": 0.7,
"watermark_x_offset": -10,
"watermark_y_offset": 10,
"watermark_position": "top-right"
}