react-thumbnail-generator
Version:
react-thumbnail-generator
188 lines (147 loc) โข 5.3 kB
Markdown
# ๐ป react-thumbnail-generator
[English](README.md) | ํ๊ตญ์ด | [็ฎไฝไธญๆ](README-zh_cn.md) | [ๆฅๆฌ่ช](README-ja_jp.md)
<a href="https://www.npmjs.com/package/react-thumbnail-generator" target="_blank">
<img src="https://img.shields.io/npm/v/react-thumbnail-generator.svg">
</a>
<a href="https://www.npmjs.com/package/react-thumbnail-generator" target="_blank">
<img src="https://img.shields.io/npm/dt/react-thumbnail-generator.svg">
</a>
<a href="https://bundlephobia.com/package/react-thumbnail-generator" target="_blank">
<img src="https://img.shields.io/bundlephobia/minzip/react-thumbnail-generator/latest?style=flat-square">
</a>
<p>
<a href="https://www.npmjs.com/package/react-thumbnail-generator" target="_blank">
<img src="https://user-images.githubusercontent.com/64779472/219855230-d6515d16-334c-432a-8d20-fa171e17c231.png" />
</a>
</p>
## Overview ๐จ
`react-thumbnail-generator`๋ ์น ๋ธ๋ผ์ฐ์ ์์ ์ง์ ์ธ๋ค์ผ์ ์ฝ๊ฒ ์์ฑํ๊ณ ์ปค์คํฐ๋ง์ด์งํ ์ ์๋ React ์ปดํฌ๋ํธ์
๋๋ค. ์ง๊ด์ ์ธ ์ธํฐํ์ด์ค์ ํ๋ถํ ๊ธฐ๋ฅ์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์
์ ๋ ๋์ง ์๊ณ ๋ ํ๋ก์ ํธ์ฉ ์ธ๋ค์ผ์ ์์ฑํ ์ ์์ต๋๋ค.
https://github.com/user-attachments/assets/5d4f8c23-72c6-43ae-aa62-5c46ee0ddfc6
<br />
### Key Features
- ๐ฏ ๊ฐ๋จํ ๋๋๊ทธ ์ค ๋๋กญ ์ธํฐํ์ด์ค
- ๐จ ๋ฐฐ๊ฒฝ ์์/์ด๋ฏธ์ง ์ปค์คํฐ๋ง์ด์ง
- โ๏ธ ๋ค์ํ ํฐํธ์ ํจ๊ณผ๋ก ํ
์คํธ ์คํ์ผ๋ง
- ๐ ์ ์ฐํ ์บ๋ฒ์ค ํฌ๊ธฐ ์กฐ์
- ๐ผ๏ธ ๋ค์ํ ๋ด๋ณด๋ด๊ธฐ ํ์ (PNG, JPG, WebP)
- ๐ง ๋์ ์ค์ ๊ฐ๋ฅ์ฑ์ ๊ฐ์ง ์์น ๋ฐ ์ธ๊ด
- ๐ฑ ๋ฐ์คํฌํฑ ๋ธ๋ผ์ฐ์ ์ต์ ํ
- ๐ฑ ํด๋ผ์ด์ธํธ ์ฌ์ด๋ ์ ์ฉ ์ปดํฌ๋ํธ
<br />
## Demo Page ๐ผ๏ธ
[react-thumbnail-generator demo page](https://ssi02014.github.io/react-thumbnail-generator/?path=/story/components-thumbnailgenerator--default)
<br />
### Version Compatibility ๐
react-thumbnail-generator `v4`๋ `react/react-dom v19`์ ์ง์ํฉ๋๋ค.
react v18๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด `v3` ๋ฒ์ ์ ์ฌ์ฉํด์ฃผ์ธ์.
```shell
yarn add react-thumbnail-generator@^3
```
```shell
pnpm add react-thumbnail-generator@^3
```
```shell
npm install react-thumbnail-generator@^3
```
<br />
## Quick Start ๐
### STEP 1๏ธโฃ
- ํจํค์ง ์ค์น
```shell
yarn add react-thumbnail-generator
```
```shell
pnpm add react-thumbnail-generator
```
```shell
npm install react-thumbnail-generator
```
<br />
### STEP 2๏ธโฃ
- `<ThumbnailGenerator>` ์ปดํฌ๋ํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- ThumbnailGenerator๋ ๊ธฐ๋ณธ์ ์ผ๋ก `Portal`์ ์ฌ์ฉํ์ฌ `document.body`์ ์์์ผ๋ก ์๋ ๋ ๋๋ง๋ฉ๋๋ค.
```jsx
import ThumbnailGenerator from 'react-thumbnail-generator';
const App = () => {
return (
<ThumbnailGenerator
iconPosition="bottom-right"
// ํ ๊ธ ๋ฒํผ ์์ด์ฝ์ ์์น ์ง์ (top-left, top-right, bottom-left, bottom-right)
modalPosition="right"
// ์ธ๋ค์ผ ์์ฑ๊ธฐ๊ฐ ํ์๋ ์์น ์ง์ (left, right, center)
additionalFontFamily={['Noto Sans', ...]}
// ์์ฑ๊ธฐ์์ ์ฌ์ฉํ ์ปค์คํ
ํฐํธ ์ถ๊ฐ
// ์ค์: ํฐํธ๊ฐ ํ๋ก์ ํธ์ ์ด๋ฏธ ๋ก๋๋์ด ์์ด์ผ ์๋ํฉ๋๋ค
isFullWidth={true}
// true์ผ ๋ ์ธ๋ค์ผ ์์ฑ๊ธฐ๊ฐ ์ ์ฒด ๋๋น๋ก ํ์ฅ๋ฉ๋๋ค
isDefaultOpen={false}
// true์ผ ๋ ๋ก๋ ์ ์ธ๋ค์ผ ์์ฑ๊ธฐ๊ฐ ์๋์ผ๋ก ์ด๋ฆฝ๋๋ค
/>
)
}
```
<br />
## How to add Web Fonts ๐
### STEP 1๏ธโฃ
- `public/index.html` ๋๋ `index.html`์ ์น ํฐํธ๋ฅผ ์ถ๊ฐํฉ๋๋ค
- ๋๋ `CSS/SCSS` ํ์ผ์์ ์น ํฐํธ๋ฅผ importํฉ๋๋ค
```html
<html lang="en">
<head>
<!-- ... -->
<!-- ์น ํฐํธ ์ถ๊ฐ -->
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Zeyada&display=swap"
rel="stylesheet"
/>
</head>
<body>
<div id="root"></div>
</body>
</html>
```
<br />
### STEP 2๏ธโฃ
- `additionalFontFamily` prop์ ํฐํธ ์ด๋ฆ์ ๋ฐฐ์ด๋ก ์ถ๊ฐํฉ๋๋ค
- ํฐํธ ์ด๋ฆ์ ๋ก๋๋ ์น ํฐํธ์ ์ ํํ ์ผ์นํด์ผ ํฉ๋๋ค
```jsx
import ThumbnailGenerator from 'react-thumbnail-generator';
const App = () => {
return (
<ThumbnailGenerator additionalFontFamily={["Zeyada"]} {...props} />
)
}
```
<br />
## Options ๐
- iconPosition
- **Optional**
- Default: `bottom-right`
- Type:`top-left | top-right | bottom-left | bottom-right`
- modalPosition
- **Optional**
- Default: `right`
- Type:`left | right | center`
- additionalFontFamily
- **Optional**
- Type: `string[]`
- isFullWidth
- **Optional**
- Default: `false`
- Type: `boolean`
- isDefaultOpen
- **Optional**
- Default: `false`
- Type: `boolean`
<br />
## Contributing
์ฌ๋ฌ๋ถ์ ๊ธฐ์ฌ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. โค๏ธ ๋๊ตฌ๋ `react-thumbnail-generator`์ ๊ธฐ์ฌํ ์ ์์ต๋๋ค.
<a href="https://github.com/ssi02014/react-thumbnail-generator/graphs/contributors">
<img src="https://contrib.rocks/image?repo=ssi02014/react-thumbnail-generator">
</a>
<br />
## License
MIT ยฉ ssi02014. ์์ธํ ๋ด์ฉ์ [LICENSE](./LICENSE)๋ฅผ ์ฐธ์กฐํ์ธ์.