Optimization Introduction

This commit is contained in:
wanxp 2023-04-17 10:29:46 +08:00
parent 8fbcf118a0
commit 2750f29091
15 changed files with 346 additions and 69 deletions

122
README.md

@ -19,35 +19,33 @@
</a> </a>
</p> </p>
Import _Movie, Book, Music, Teleplay, Note, Game_ even _Your Personal Movie/Book/Music_ from Douban in [Obsidian](https://obsidian.md/)
在[Obsidian](https://obsidian.md/)使用并导入豆瓣中的 _电影/书籍/音乐/电视剧/日记/游戏_ 甚至是 _你标记过的书影音_ , 包含你的评分/发布日期/演员表等信息. 在[Obsidian](https://obsidian.md/)使用并导入豆瓣中的 _电影/书籍/音乐/电视剧/日记/游戏_ 甚至是 _你标记过的书影音_ , 包含你的评分/发布日期/演员表等信息.
![background](./doc/background.png) ![background](./doc/background.png)
--- ---
If you want some features or have any questions about this plugin, create issues or join the development is welcome.
关于当前的插件如果有任何疑问, 缺少想要的导入内容或者想要什么功能, 欢迎提issues或加入到开发当中. 关于当前的插件如果有任何疑问, 缺少想要的导入内容或者想要什么功能, 欢迎提issues或加入到开发当中.
如果觉得喜欢,欢迎一键三连-点亮 ⭐Star 如果觉得喜欢或对您有帮助,欢迎一键三连-点亮 ⭐Star
- [Bugs, Issues, & Feature Requests](https://github.com/Wanxp/obsidian-douban/issues) - [异常, 问题 & 新的想法](https://github.com/Wanxp/obsidian-douban/issues)
- [Development Roadmap](https://github.com/users/Wanxp/projects/1) - 阅读其它语言的介绍请点击 [English](./doc/README.en.md) | [简体中文](./README.md)
## Target/功能 ## 功能
- [x] Sync Personal Movie/同步个人看过的电影 - [x] 同步个人看过的电影
- [x] Sync Personal Book/同步个人阅读过的书籍 - [x] 同步个人阅读过的书籍
- [x] Sync Personal Music/同步个人听过的音乐 - [x] 同步个人听过的音乐
- [x] Import Movie/导入电影 - [x] 导入电影
- [x] Import Teleplay/导入电视剧 - [x] 导入电视剧
- [x] Import Book/导入书籍 - [x] 导入书籍
- [x] Import Music/导入音乐 - [x] 导入音乐
- [x] Import Note/导入日记 - [x] 导入日记
- [x] Import Game/导入游戏 - [x] 导入游戏
- [x] Personal Comment/导入个人的评论,评论时间,阅读状态,个人评分 - [x] 导入个人的评论,评论时间,阅读状态,个人评分
- [x] Attachment Files/支持保存封面至本地 - [x] 支持保存封面至本地
- [x] Custom Variables/支持自定义参数 - [x] 支持自定义参数
- [ ] Broadcast/广播 - [ ] 广播
## Support Field/支持的字段 ## 支持的字段
(若有缺少想导入的字段, 欢迎提issues反馈) (若有缺少想导入的字段, 欢迎提issues反馈)
| 字段 | 电影 | 电视剧 | 书籍 | 音乐 | 日记 | 游戏 | 广播 | | 字段 | 电影 | 电视剧 | 书籍 | 音乐 | 日记 | 游戏 | 广播 |
@ -85,46 +83,30 @@ If you want some features or have any questions about this plugin, create issues
- 注: myTags, myRating, myState, myComment, myCollectionDate 参数均为在插件中登录后可用 - 注: myTags, myRating, myState, myComment, myCollectionDate 参数均为在插件中登录后可用
## How to use/如何使用 ## 如何使用
### Search/搜索 ### 同步
- Search Data And Create Note - 同步个人的观影、阅读、游戏、音乐记录
搜索数据并创建笔记 从豆瓣同步数据(如何利用Timeline插件构建阅读/观影时间线,请参照[结合timeline插件实现时间线效果](Obsidian-Douban-TimeLine.en.md))
![search_and_create](./doc/search_and_create_note.gif) ![Sync Data From Douban](doc/img/sync_data_from_douban.gif)
- Search Data By File Name ### 搜索
通过当前文件名搜索 - 搜索数据并创建笔记
![Search Movie By File Name](./doc/search_by_file_name.gif) ![search_and_create](doc/img/search_and_create_note.gif)
- 通过当前文件名搜索
![Search Movie By File Name](doc/img/search_by_file_name.gif)
- Search Movie By Input Text - 通过输入文本搜索
通过输入文本搜索 ![Search Movie By Input Text](doc/img/search_by_input.gif)
![Search Movie By Input Text](./doc/search_by_input.gif)
## Settings/设置 ## 设置
- Setting Example1(Custom Template) - 设置案例1(自定义模板)
设置案例1(自定义模板) ![Setting Example1](doc/img/setting_zh.gif)
![Setting Example1](./doc/setting_zh.gif)
- Setting Example2(Other Settings) - 设置案例2(其它配置)
设置案例2(其它配置) ![Setting Example2](doc/img/setting_en.gif)
![Setting Example2](./doc/setting_en.gif)
## How to install
### From Obsidian
1. Go to Obsidian plugin center
2. Search obsidian-douban
3. Click install
4. Enable plugin
### Manmel
1. Download `main.js`, `manifest.json`, `styles.css` from GitHub release page
2. Copy step1 downloaded file to your vault folder `/.obsidian/plugins/obsidian-douban/`
3. Enable plugin in Obsidian
---
## 如何安装 ## 如何安装
### 从Obsidian插件中心 ### 从Obsidian插件中心
1. 进入Obsidian插件中心 1. 进入Obsidian插件中心
@ -134,25 +116,10 @@ If you want some features or have any questions about this plugin, create issues
### 手动安装 ### 手动安装
1. 从Github release 页面下载 `main.js`, `manifest.json`, `styles.css` 1. 从[Github release](https://github.com/Wanxp/obsidian-douban/releases) 页面下载 `main.js`, `manifest.json`, `styles.css`
2. 将下载的文件复制到你的Obsidian文档根目录下的`/.obsidian/plugins/obsidian-douban`路径,若不存在则新建文件夹(注意.obsidian文件夹可能是个隐藏为文件夹) 2. 将下载的文件复制到你的Obsidian文档根目录下的`/.obsidian/plugins/obsidian-douban`路径,若不存在则新建文件夹(注意.obsidian文件夹可能是个隐藏为文件夹)
3. 在obsidian插件中心开启当前插件功能 3. 在obsidian插件中心开启当前插件功能
## How to Develop
1. Enter your test vault folder `/.obsidian/plugins/`
2. Clone Code
`git clone git@github.com:Wanxp/obsidian-douban.git`
3. Enter folder
`cd obsidian-douban`
4. Build
`npm run build`
5. Run and Watch code chang
`npm run dev`
6. Go to your Obsidian plugin center reload this plugin
7. Enjoy your develop
---
## 如何开发调试 ## 如何开发调试
1. 进入你的Obsidian测试文档文件夹下的`/.obsidian/plugins/` 1. 进入你的Obsidian测试文档文件夹下的`/.obsidian/plugins/`
@ -171,4 +138,21 @@ If you want some features or have any questions about this plugin, create issues
## 免责声明 ## 免责声明
1. 本程序没有爬取任何书影音等内容,只供技术研究使用。没有侵犯书影音作者版权和豆瓣官方利益。如有任何侵权行为,请联系我删除。 1. 本程序没有爬取任何书影音等内容,只供技术研究使用。没有侵犯书影音作者版权和豆瓣官方利益。如有任何侵权行为,请联系我删除。
2. 本程序仅供学习交流使用,不得用于商业用途,否则后果自负。
3. 虽然极力避免,但还是有可能纰漏,所以因插件造成的损失,由使用者本人。不同操作会有何种影响,请参照<a href="#impact">影响</a>
4. 使用或修改本插件,即视为同意上述免责声明。
## <span id="impact" >影响</span>
注意: 除了在同步书影音数据时勾选 `替换同名文档` 有可能会修改同路径同文档名的笔记外,其余操作均不会修改已有笔记。
| 操作 |条件 | 影响 | 举例 |
|---------|-----------------|---------------------------|-----------------------------------------------------------------------------------------------|
| 导入书影音数据 | 默认条件 | 新建一条名为所选条目的笔记 | 如搜索蝙蝠侠并选中导入,则会创建笔记 《蝙蝠侠》 |
| 导入书影音数据 |已有同名笔记 | 无任何影响,提示已经存在同名笔记,不会修改已有笔记 | 如搜索蝙蝠侠并选中导入,但因存在同路径同名称笔记,则会不会创建笔记 |
| 导入书影音数据 | 配置 `笔记名称`值包含路径 | 若没有此路径则会创建对应文件名 | 如搜索蝙蝠侠并选中导入,配置`笔记名称`值为`/data/{{type}}/{{title}}`,则会创建文件夹`data/电影` |
| 导入书影音数据 | 配置 `保存图片附件`值为勾选 | 则会在`附件存放位置`指定位置保存封面图片 | 如搜索蝙蝠侠并选中导入,配置`附件存放位置`值为`assets`,则会在`assets`文件夹中保存封面文件`p462657443.jpg` |
| 同步书影音数据 | 以上所有 | 以上所有 | 以上所有 |
| 同步书影音数据 | `替换同名文档`值为勾选 | 已经存在 ==同路径同文档名== ,直接覆盖 | 如已经存在在`data/Movie/蝙蝠侠.md`,配置`笔记名称`值为`/data/{{type}}/{{title}}`, 同步书影音记录时勾选 `替换同名文档`, 则`data/Movie/蝙蝠侠.md`会被替换成最新 |
## Thanks ## Thanks

@ -0,0 +1,70 @@
## 效果如下
![](./img/obsidian-douban-time-preview-example.gif)
## 适用人群
1. 在豆瓣有标记/评论/评分的习惯的人
比如看完电影,会在豆瓣进行评分或评论。或者阅读完的书籍,进行评分或评论。支持包含:电影、书籍、电视剧、音乐、游戏
## 实现步骤
1. 安装[Timeline](https://github.com/Darakah/obsidian-timelines)插件
2. 安装[Obsidian-Douban](https://github.com/Wanxp/obsidian-douban)插件(本插件)
3. 在Obsidian-Douban插件配置中登录Douban
4. 配置同步需要的模板 电影/书籍的模板中的frontmatter在frontmatter中 ==增加== 特定tags根据自己的需要指定用于需要过滤成为timeline的笔记如增加tags`我看过的电影`
```md
---
tags: 我看过的电影
---
```
5. 同时,在电影/书籍... 模板中的 ==最后增加== timeline插件需要的html标签如下:
```html
<span class='ob-timelines' data-date='{{myCollectionDate}}'
data-title='{{title}}' data-img='{{image}}'
data-class = "custom-my-movie-time-line">{{myComment}} |简介: {{desc}}
</span>
```
6. 选择上述模板导入 电影/书籍...操作方式是打开obsidian命令窗口输入豆瓣找到导入功能在导入界面配置 选择模板进行导入
7. 导入需要一定时间每条内容导入需要15-30s左右所有有导入完成后会有导入汇总
8. 导入完成后新建一个笔记笔记内容加入timeline的代码块代码块的内容就是你上面指定的tags的内容如`我看过的电影`,代码块如下:
````markdown
```timeline
我看过的电影
```
````
9. 预览这个笔记就能看出已经出现了时间线
## 模板参考
### 电影
````markdown
---
doubanId: {{id}}
title: {{title}}
type: {{type}}
score: {{score}}
myRate: {{myRate}}
originalTitle: {{originalTitle}}
genre: {{genre}}
datePublished: {{datePublished}}
director: {{director}}
actor: {{actor}}
author: {{author}}
tags: {{type}}, 我看过的电影, {{myTags}}
state: {{myState}}
url: {{url}}
createTime: {{currentDate}} {{currentTime}}
collectionDate: {{myCollectionDate}}
desc: {{desc}}
---
![image]({{image}})
Comment:
---
{{myComment}}
<span class='ob-timelines' data-date='{{myCollectionDate}}'
data-title='{{title}}' data-img='{{image}}'
data-class = "custom-my-movie-time-line">{{myComment}} |简介: {{desc}}
</span>
````
### 书籍、电视剧、音乐、游戏
请参照电影模板
## 更多
参照讨论 [结合timeline插件的妙用](https://github.com/Wanxp/obsidian-douban/issues/19#issuecomment-1428307130)

@ -0,0 +1,70 @@
## 效果如下
![](./img/obsidian-douban-time-preview-example.gif)
## 适用人群
1. 在豆瓣有标记/评论/评分的习惯的人
比如看完电影,会在豆瓣进行评分或评论。或者阅读完的书籍,进行评分或评论。支持包含:电影、书籍、电视剧、音乐、游戏
## 实现步骤
1. 安装[Timeline](https://github.com/Darakah/obsidian-timelines)插件
2. 安装[Obsidian-Douban](https://github.com/Wanxp/obsidian-douban)插件(本插件)
3. 在Obsidian-Douban插件配置中登录Douban
4. 配置同步需要的模板 电影/书籍的模板中的frontmatter在frontmatter中 ==增加== 特定tags根据自己的需要指定用于需要过滤成为timeline的笔记如增加tags`我看过的电影`
```md
---
tags: 我看过的电影
---
```
5. 同时,在电影/书籍... 模板中的 ==最后增加== timeline插件需要的html标签如下:
```html
<span class='ob-timelines' data-date='{{myCollectionDate}}'
data-title='{{title}}' data-img='{{image}}'
data-class = "custom-my-movie-time-line">{{myComment}} |简介: {{desc}}
</span>
```
6. 选择上述模板导入 电影/书籍...操作方式是打开obsidian命令窗口输入豆瓣找到导入功能在导入界面配置 选择模板进行导入
7. 导入需要一定时间每条内容导入需要15-30s左右所有有导入完成后会有导入汇总
8. 导入完成后新建一个笔记笔记内容加入timeline的代码块代码块的内容就是你上面指定的tags的内容如`我看过的电影`,代码块如下:
````markdown
```timeline
我看过的电影
```
````
9. 预览这个笔记就能看出已经出现了时间线
## 模板参考
### 电影
````markdown
---
doubanId: {{id}}
title: {{title}}
type: {{type}}
score: {{score}}
myRate: {{myRate}}
originalTitle: {{originalTitle}}
genre: {{genre}}
datePublished: {{datePublished}}
director: {{director}}
actor: {{actor}}
author: {{author}}
tags: {{type}}, 我看过的电影, {{myTags}}
state: {{myState}}
url: {{url}}
createTime: {{currentDate}} {{currentTime}}
collectionDate: {{myCollectionDate}}
desc: {{desc}}
---
![image]({{image}})
Comment:
---
{{myComment}}
<span class='ob-timelines' data-date='{{myCollectionDate}}'
data-title='{{title}}' data-img='{{image}}'
data-class = "custom-my-movie-time-line">{{myComment}} |简介: {{desc}}
</span>
````
### 书籍、电视剧、音乐、游戏
请参照电影模板
## 更多
参照讨论 [结合timeline插件的妙用](https://github.com/Wanxp/obsidian-douban/issues/19#issuecomment-1428307130)

153
doc/README.en.md Normal file

@ -0,0 +1,153 @@
# Obsidian Douban Plugin
<p align="center">
<a href="https://github.com/Wanxp/obsidian-douban/releases/latest">
<img src="https://img.shields.io/github/manifest-json/v/Wanxp/obsidian-douban?color=blue">
</a>
<img src="https://img.shields.io/github/release-date/Wanxp/obsidian-douban">
<a href="https://github.com/Wanxp/obsidian-douban/blob/master/License">
<img src="https://img.shields.io/github/license/Wanxp/obsidian-douban">
</a>
<img src="https://img.shields.io/github/downloads/Wanxp/obsidian-douban/total">
<a href="https://github.com/Wanxp/obsidian-douban/issues">
<img src="https://img.shields.io/github/issues/Wanxp/obsidian-douban">
</a>
<br>
<img src="https://img.shields.io/tokei/lines/github/Wanxp/obsidian-douban">
<a href="https://www.codefactor.io/repository/github/wanxp/obsidian-douban">
<img src="https://www.codefactor.io/repository/github/wanxp/obsidian-douban/badge" alt="CodeFactor" />
</a>
</p>
Import _Movie, Book, Music, Teleplay, Note, Game_ even _Your Personal Movie/Book/Music_ from Douban in [Obsidian](https://obsidian.md/)
![background](./background.png)
---
If you want some features or have any questions about this plugin, create issues or join the development is welcome or ⭐Star
- [Bugs, Issues, & Feature Requests](https://github.com/Wanxp/obsidian-douban/issues)
- Read Other Languages: [English](./README.en.md) | [简体中文](./README.md)
## Target/功能
- [x] Sync Personal Movie
- [x] Sync Personal Book
- [x] Sync Personal Music
- [x] Import Movie
- [x] Import Teleplay
- [x] Import Book
- [x] Import Music
- [x] Import Note
- [x] Import Game
- [x] Personal Comment
- [x] Attachment Files
- [x] Custom Variables
- [ ] Broadcast
## Support Field
(若有缺少想导入的字段, 欢迎提issues反馈)
| 字段 | 电影 | 电视剧 | 书籍 | 音乐 | 日记 | 游戏 | 广播 |
|------------------|-------------------|------------------|-------------------|----------------|----------------|---------------| ---- |
| id | 豆瓣ID | 豆瓣ID | 豆瓣ID | 豆瓣ID | 豆瓣ID | 豆瓣ID | - |
| title | 电影名称 | 电视剧名称 | 书名 | 音乐名 | 日记标题 | 游戏名称 | - |
| type | 类型 | 类型 | 类型 | 类型 | 类型 | 类型 | - |
| score | 评分 | 评分 | 评分 | 评分 | 评分 | 评分 | - |
| image | 封面 | 封面 | 封面 | 封面 | 图片 | 封面 | - |
| url | 豆瓣网址 | 豆瓣网址 | 豆瓣网址 | 豆瓣网址 | 豆瓣网址 | 豆瓣网址 | - |
| desc | 简介 | 简介 | 内容简介 | 简介 | 简介 | 简介 | - |
| publisher | - | - | 出版社 | 出版者 | 发布者 | 发行商 | - |
| datePublished | 上映日期 | 上映日期 | 出版年 | 发行时间 | 发布时间 | 发行日期 | - |
| yearPublished | 上映年份 | 上映年份 | 出版年份 | 发行年份 | 发布年份 | 发行年份 | - |
| genre | 类型 | 类型 | - | 流派 | - | 类型 | - |
| currentDate | 今日日期 | 今日日期 | 今日日期 | 今日日期 | 今日日期 | 今日日期 | |
| currentTime | 当前时间 | 当前时间 | 当前时间 | 当前时间 | 当前时间 | 当前时间 | |
| myTags | 我标记的标签 | 我标记的标签 | 我标记的标签 | 我标记的标签 | - | 我标记的标签 | |
| myRating | 我的评分 | 我的评分 | 我的评分 | 我的评分 | - | 我的评分 |
| myState | 状态:想看/在看/看过 | 状态:想看/在看/看过 | 状态:想看/在看/看过 | 状态:想听/在听/听过 | - | 状态:想玩/在玩/玩过 | |
| myComment | 我的评语 | 我的评语 | 我的评语 | 我的评语 | - | 我的评语 | |
| myCollectionDate | 我标记的时间 | 我标记的时间 | 我标记的时间 | 我标记的时间 | - | 我标记的时间 | |
| 扩展1 | director:导演 | director:导演 | author:原作者 | actor: 表演者 | author:作者 | aliases:别名 | |
| 扩展2 | author:编剧 | author:编剧 | translator:译者 | albumType:专辑类型 | authorUrl:作者网址 | developer:开发商 | |
| 扩展3 | actor:主演 | actor:主演 | isbn:isbn | medium:介质 | content:日记内容 | platform:平台 | |
| 扩展4 | originalTitle:原作名 | originalTitle:原作名 | originalTitle:原作名 | records:唱片数 | | | |
| 扩展5 | country:国家 | country:国家 | subTitle:副标题 | barcode:条形码 | | | |
| 扩展6 | language:语言 | language:语言 | totalPage:页数 | | | | |
| 扩展7 | time:片长 | time:片长 | series:丛书 | | | | |
| 扩展8 | aliases:又名 | aliases:又名 | menu:目录 | | | | |
| 扩展9 | IMDb | IMDb | price:定价 | | | | |
| 扩展7 | | episode:集数 | binding:装帧 | | | | |
| 扩展8 | | | producer: 出品方 | | | | |
- Notice: myTags, myRating, myState, myComment, myCollectionDate. All parameters are available after logging in to the plugin.
## How to use
### Sync
- Sync Data From Douban
Sync data from Douban (to learn how to use the TimeLine plugin to build a reading/movie watching timeline, please refer to [here](Obsidian-Douban-TimeLine.en.md)).
![Sync Data From Douban](img/sync_data_from_douban.gif)
### Search
- Search Data And Create Note
![search_and_create]img/search_and_create_note.gif)
- Search Data By File Name
![Search Movie By File Name](img/search_by_file_name.gif)
- Search Movie By Input Text
![Search Movie By Input Text](img/search_by_input.gif)
## Settings
- Setting Example1(Custom Template)
![Setting Example1](img/setting_zh.gif)
- Setting Example2(Other Settings)
![Setting Example2](img/setting_en.gif)
## How to install
### From Obsidian
1. Go to Obsidian plugin center
2. Search obsidian-douban
3. Click install
4. Enable plugin
### Manmel
1. Download `main.js`, `manifest.json`, `styles.css` from GitHub release page
2. Copy step1 downloaded file to your vault folder `/.obsidian/plugins/obsidian-douban/`
3. Enable plugin in Obsidian
## How to Develop
1. Enter your test vault folder `/.obsidian/plugins/`
2. Clone Code
`git clone git@github.com:Wanxp/obsidian-douban.git`
3. Enter folder
`cd obsidian-douban`
4. Build
`npm run build`
5. Run and Watch code chang
`npm run dev`
6. Go to your Obsidian plugin center reload this plugin
7. Enjoy your develop
## Disclaimer
1. This program does not crawl any content such as books and videos, and is only for technical research purposes. It does not violate the copyright of authors of books and videos or the official interests of Douban. If there is any infringement, please contact me to delete it.
2. This program is for learning and communication only, and cannot be used for commercial purposes. Otherwise, the consequences will be at your own risk.
3. Although every effort is made to avoid it, I am not responsible for any losses caused by the plug-in. Please refer to [here](#impact) for the impact of different operations.
## Impact
Note: Except for checking "Replace documents with the same name" when synchronizing book and video data, which may modify notes with the same path and document name, other operations will not modify existing notes.
| Operation | Condition | Impact | Example |
|-----------------|-----------------------|---------------------------|-----------------------------------------------------------------------------------------------|
| Import book and video data | Default condition | Create a note named after the selected item | If you search for "Batman" and select it for import, a note titled "Batman" will be created |
| Import book and video data | Note with the same name already exists | No impact, prompted that there is already a note with the same name, and the existing note will not be modified | If you search for "Batman" and select it for import, but there is already a note with the same path and name, a note will not be created |
| Import book and video data | Configure the `note name` value to include the path | If there is no such path, it will create a file with the corresponding file name | If you search for "Batman" and select it for import, configure the `note name` value to be `/data/{{type}}/{{title}}`, a folder `data/Movie` will be created |
| Import book and video data | Configure the `save image attachment` value to be checked | Save the cover image in the specified location of `attachment storage location` | If you search for "Batman" and select it for import, configure the `attachment storage location` value to be `assets`, the cover file `p462657443.jpg` will be saved in the `assets` folder |
| Synchronize book and video data | All of the above | All of the above | All of the above |
| Synchronize book and video data | Check the value of `replace the same document` | If the file with the same path and name already exists, overwrite it directly | If there is already a `data/Movie/Batman.md` file, configure the `note name` value to be `/data/{{type}}/{{title}}`, and check "Replace documents with the same name" when synchronizing book and video records, then `data/Movie/Batman.md` will be replaced with the latest one |
## Thanks

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

Before

Width:  |  Height:  |  Size: 2.2 MiB

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

BIN
doc/img/search_by_input.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

BIN
doc/img/setting_en.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

BIN
doc/img/setting_zh.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.7 MiB