feat: Flat import of markdown repo
This is a flat (without history) import of (some of) the content from our markdown module. We've imported this without history because the repo contains our blog posts and showcases posts content prior to porting them to strapi. Since this contains many images, it would balloon the size of this repo to import the full history. Instead, please refer to the history of the (archived) markdown repo at: https://github.com/freesewing/markdown
This commit is contained in:
parent
1671a896b5
commit
b34a2ee2ed
6132 changed files with 244167 additions and 0 deletions
39
markdown/dev/reference/plugins/bartack/en.md
Normal file
39
markdown/dev/reference/plugins/bartack/en.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
---
|
||||
title: bartack
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-bartack)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bartack)
|
||||
|
||||
The [@freesewing/plugin-bartack](/reference/packages/plugin-bartack) packages provides a plugin to help bartack points and/or paths around a given bartack line.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bartack
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import bartack from "@freesewing/plugin-bartack";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, bartack);
|
||||
```
|
||||
|
||||
Now you can use the
|
||||
[bartack](/reference/macros/bartack/),
|
||||
[bartackAlong](/reference/macros/bartackalong/), and
|
||||
[bartackFractionAlong](/reference/macros/bartackfractionalong/) macros in your parts.
|
||||
|
||||
|
38
markdown/dev/reference/plugins/bundle/de.md
Normal file
38
markdown/dev/reference/plugins/bundle/de.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: bundle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bundle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bundle)
|
||||
|
||||
|
||||
The bundle plugin bundles the most common FreeSewing build-time plugins:
|
||||
|
||||
1. [plugin-cutonfold](/reference/plugins/cutonfold) : Add cut-on-fold indicators to your patterns
|
||||
2. [plugin-dimension](/reference/plugins/dimension) : Add dimensions to your (paperless) patterns
|
||||
3. [plugin-grainline](/reference/plugins/grainline) : Add grainline indicators to your patterns
|
||||
4. [plugin-logo](/reference/plugins/logo) : Add a scalebox to your patterns
|
||||
5. [plugin-scalebox](/reference/plugins/scalebox) : Add pretty titles to your pattern parts
|
||||
6. [plugin-title](/reference/plugins/title) : Add pretty titles to your pattern parts
|
||||
7. [plugin-round](/reference/plugins/round) : Rounds corners
|
||||
8. [plugin-sprinkle](/reference/plugins/sprinkle) : Add multiple snippets to your pattern
|
||||
|
||||
Almost all patterns use these plugins, so it made sense to bundle them.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bundle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import plugins from "@freesewing/plugin-bundle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, plugins);
|
||||
```
|
||||
|
45
markdown/dev/reference/plugins/bundle/en.md
Normal file
45
markdown/dev/reference/plugins/bundle/en.md
Normal file
|
@ -0,0 +1,45 @@
|
|||
---
|
||||
title: bundle
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-bundle)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bundle)
|
||||
|
||||
|
||||
The bundle plugin bundles the most common FreeSewing build-time plugins:
|
||||
|
||||
1. [plugin-cutonfold](/reference/plugins/cutonfold) : Add cut-on-fold indicators to your patterns
|
||||
2. [plugin-dimension](/reference/plugins/dimension) : Add dimensions to your (paperless) patterns
|
||||
3. [plugin-grainline](/reference/plugins/grainline) : Add grainline indicators to your patterns
|
||||
4. [plugin-logo](/reference/plugins/logo) : Add a scalebox to your patterns
|
||||
5. [plugin-scalebox](/reference/plugins/scalebox) : Add pretty titles to your pattern parts
|
||||
6. [plugin-title](/reference/plugins/title) : Add pretty titles to your pattern parts
|
||||
7. [plugin-round](/reference/plugins/round) : Rounds corners
|
||||
8. [plugin-sprinkle](/reference/plugins/sprinkle) : Add multiple snippets to your pattern
|
||||
|
||||
Almost all patterns use these plugins, so it made sense to bundle them.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bundle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import plugins from "@freesewing/plugin-bundle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, plugins);
|
||||
```
|
||||
|
38
markdown/dev/reference/plugins/bundle/es.md
Normal file
38
markdown/dev/reference/plugins/bundle/es.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: bundle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bundle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bundle)
|
||||
|
||||
|
||||
The bundle plugin bundles the most common FreeSewing build-time plugins:
|
||||
|
||||
1. [plugin-cutonfold](/reference/plugins/cutonfold) : Add cut-on-fold indicators to your patterns
|
||||
2. [plugin-dimension](/reference/plugins/dimension) : Add dimensions to your (paperless) patterns
|
||||
3. [plugin-grainline](/reference/plugins/grainline) : Add grainline indicators to your patterns
|
||||
4. [plugin-logo](/reference/plugins/logo) : Add a scalebox to your patterns
|
||||
5. [plugin-scalebox](/reference/plugins/scalebox) : Add pretty titles to your pattern parts
|
||||
6. [plugin-title](/reference/plugins/title) : Add pretty titles to your pattern parts
|
||||
7. [plugin-round](/reference/plugins/round) : Rounds corners
|
||||
8. [plugin-sprinkle](/reference/plugins/sprinkle) : Add multiple snippets to your pattern
|
||||
|
||||
Almost all patterns use these plugins, so it made sense to bundle them.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bundle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import plugins from "@freesewing/plugin-bundle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, plugins);
|
||||
```
|
||||
|
38
markdown/dev/reference/plugins/bundle/fr.md
Normal file
38
markdown/dev/reference/plugins/bundle/fr.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: bundle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bundle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bundle)
|
||||
|
||||
|
||||
The bundle plugin bundles the most common FreeSewing build-time plugins:
|
||||
|
||||
1. [plugin-cutonfold](/reference/plugins/cutonfold) : Add cut-on-fold indicators to your patterns
|
||||
2. [plugin-dimension](/reference/plugins/dimension) : Add dimensions to your (paperless) patterns
|
||||
3. [plugin-grainline](/reference/plugins/grainline) : Add grainline indicators to your patterns
|
||||
4. [plugin-logo](/reference/plugins/logo) : Add a scalebox to your patterns
|
||||
5. [plugin-scalebox](/reference/plugins/scalebox) : Add pretty titles to your pattern parts
|
||||
6. [plugin-title](/reference/plugins/title) : Add pretty titles to your pattern parts
|
||||
7. [plugin-round](/reference/plugins/round) : Rounds corners
|
||||
8. [plugin-sprinkle](/reference/plugins/sprinkle) : Add multiple snippets to your pattern
|
||||
|
||||
Almost all patterns use these plugins, so it made sense to bundle them.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bundle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import plugins from "@freesewing/plugin-bundle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, plugins);
|
||||
```
|
||||
|
38
markdown/dev/reference/plugins/bundle/nl.md
Normal file
38
markdown/dev/reference/plugins/bundle/nl.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
---
|
||||
title: bundle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bundle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bundle)
|
||||
|
||||
|
||||
The bundle plugin bundles the most common FreeSewing build-time plugins:
|
||||
|
||||
1. [plugin-cutonfold](/reference/plugins/cutonfold) : Add cut-on-fold indicators to your patterns
|
||||
2. [plugin-dimension](/reference/plugins/dimension) : Add dimensions to your (paperless) patterns
|
||||
3. [plugin-grainline](/reference/plugins/grainline) : Add grainline indicators to your patterns
|
||||
4. [plugin-logo](/reference/plugins/logo) : Add a scalebox to your patterns
|
||||
5. [plugin-scalebox](/reference/plugins/scalebox) : Add pretty titles to your pattern parts
|
||||
6. [plugin-title](/reference/plugins/title) : Add pretty titles to your pattern parts
|
||||
7. [plugin-round](/reference/plugins/round) : Rounds corners
|
||||
8. [plugin-sprinkle](/reference/plugins/sprinkle) : Add multiple snippets to your pattern
|
||||
|
||||
Almost all patterns use these plugins, so it made sense to bundle them.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bundle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import plugins from "@freesewing/plugin-bundle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, plugins);
|
||||
```
|
||||
|
50
markdown/dev/reference/plugins/bust/de.md
Normal file
50
markdown/dev/reference/plugins/bust/de.md
Normal file
|
@ -0,0 +1,50 @@
|
|||
---
|
||||
title: bust
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bust) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bust)
|
||||
|
||||
The [@freesewing/plugin-bust](/reference/packages/plugin-bust) packages provides a plugin to help you adapt menswear patterns for breasts.
|
||||
|
||||
If you are designing a womenswear pattern, you won't need this plugin. But if you're adapting a menswear pattern for breasts, this plugin can help you.
|
||||
|
||||
Almost all menswear patterns use the chest circumference to draft the garment.
|
||||
|
||||
As a person with breasts, using your (full) chest circumference will give you bad fit. Instead, it's better to use your high bust measurement as chest circumference, and then create extra room for the breasts.
|
||||
|
||||
This is the same technique that's used in a full-bust adjustment to fit a womenswear pattern for a person with above-average sized breasts.
|
||||
|
||||
This plugin helps you by:
|
||||
|
||||
- Storing the chest circumference in `measurements.bust`
|
||||
- Changing `measurments.chestCircumference` to the value of `measurements.highBust`
|
||||
|
||||
This way you can extend a menswear pattern and have it drafted with the high bust measurement as chest measurment, after which you can create room for the breasts.
|
||||
|
||||
It's used by our [Carlita](/reference/packages/carlita) pattern, which extends the menswear [Carlton](/reference/packages/carlton) pattern.
|
||||
|
||||
<Tip>
|
||||
|
||||
To learn more about extending a pattern, see [Pattern inheritance](/howtos/core/inheritance/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bust
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import bust from "@freesewing/plugin-bust";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, bust);
|
||||
```
|
||||
|
||||
|
60
markdown/dev/reference/plugins/bust/en.md
Normal file
60
markdown/dev/reference/plugins/bust/en.md
Normal file
|
@ -0,0 +1,60 @@
|
|||
---
|
||||
title: bust
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-bust)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bust)
|
||||
|
||||
The [@freesewing/plugin-bust](/reference/packages/plugin-bust) packages provides a plugin to help you adapt menswear patterns for breasts.
|
||||
|
||||
If you are designing a womenswear pattern, you won't need this plugin. But if you're adapting
|
||||
a menswear pattern for breasts, this plugin can help you.
|
||||
|
||||
Almost all menswear patterns use the chest circumference to draft the garment.
|
||||
|
||||
As a person with breasts, using your (full) chest circumference will give you bad fit.
|
||||
Instead, it's better to use your high bust measurement as chest circumference, and then create extra room for the breasts.
|
||||
|
||||
This is the same technique that's used in a full-bust adjustment to fit a womenswear pattern for a person with above-average sized breasts.
|
||||
|
||||
This plugin helps you by:
|
||||
|
||||
- Storing the chest circumference in `measurements.bust`
|
||||
- Changing `measurments.chestCircumference` to the value of `measurements.highBust`
|
||||
|
||||
This way you can extend a menswear pattern and have it drafted with the high bust measurement
|
||||
as chest measurment, after which you can create room for the breasts.
|
||||
|
||||
It's used by our [Carlita](/reference/packages/carlita) pattern, which extends the menswear [Carlton](/reference/packages/carlton) pattern.
|
||||
|
||||
<Tip>
|
||||
|
||||
To learn more about extending a pattern, see [Design inheritance](/howtos/code/inheritance/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bust
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import bust from "@freesewing/plugin-bust";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, bust);
|
||||
```
|
||||
|
||||
|
50
markdown/dev/reference/plugins/bust/es.md
Normal file
50
markdown/dev/reference/plugins/bust/es.md
Normal file
|
@ -0,0 +1,50 @@
|
|||
---
|
||||
title: bust
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bust) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bust)
|
||||
|
||||
The [@freesewing/plugin-bust](/reference/packages/plugin-bust) packages provides a plugin to help you adapt menswear patterns for breasts.
|
||||
|
||||
If you are designing a womenswear pattern, you won't need this plugin. But if you're adapting a menswear pattern for breasts, this plugin can help you.
|
||||
|
||||
Almost all menswear patterns use the chest circumference to draft the garment.
|
||||
|
||||
As a person with breasts, using your (full) chest circumference will give you bad fit. Instead, it's better to use your high bust measurement as chest circumference, and then create extra room for the breasts.
|
||||
|
||||
This is the same technique that's used in a full-bust adjustment to fit a womenswear pattern for a person with above-average sized breasts.
|
||||
|
||||
This plugin helps you by:
|
||||
|
||||
- Storing the chest circumference in `measurements.bust`
|
||||
- Changing `measurments.chestCircumference` to the value of `measurements.highBust`
|
||||
|
||||
This way you can extend a menswear pattern and have it drafted with the high bust measurement as chest measurment, after which you can create room for the breasts.
|
||||
|
||||
It's used by our [Carlita](/reference/packages/carlita) pattern, which extends the menswear [Carlton](/reference/packages/carlton) pattern.
|
||||
|
||||
<Tip>
|
||||
|
||||
To learn more about extending a pattern, see [Pattern inheritance](/howtos/core/inheritance/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bust
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import bust from "@freesewing/plugin-bust";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, bust);
|
||||
```
|
||||
|
||||
|
50
markdown/dev/reference/plugins/bust/fr.md
Normal file
50
markdown/dev/reference/plugins/bust/fr.md
Normal file
|
@ -0,0 +1,50 @@
|
|||
---
|
||||
title: bust
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bust) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bust)
|
||||
|
||||
The [@freesewing/plugin-bust](/reference/packages/plugin-bust) packages provides a plugin to help you adapt menswear patterns for breasts.
|
||||
|
||||
If you are designing a womenswear pattern, you won't need this plugin. But if you're adapting a menswear pattern for breasts, this plugin can help you.
|
||||
|
||||
Almost all menswear patterns use the chest circumference to draft the garment.
|
||||
|
||||
As a person with breasts, using your (full) chest circumference will give you bad fit. Instead, it's better to use your high bust measurement as chest circumference, and then create extra room for the breasts.
|
||||
|
||||
This is the same technique that's used in a full-bust adjustment to fit a womenswear pattern for a person with above-average sized breasts.
|
||||
|
||||
This plugin helps you by:
|
||||
|
||||
- Storing the chest circumference in `measurements.bust`
|
||||
- Changing `measurments.chestCircumference` to the value of `measurements.highBust`
|
||||
|
||||
This way you can extend a menswear pattern and have it drafted with the high bust measurement as chest measurment, after which you can create room for the breasts.
|
||||
|
||||
It's used by our [Carlita](/reference/packages/carlita) pattern, which extends the menswear [Carlton](/reference/packages/carlton) pattern.
|
||||
|
||||
<Tip>
|
||||
|
||||
To learn more about extending a pattern, see [Pattern inheritance](/howtos/core/inheritance/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bust
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import bust from "@freesewing/plugin-bust";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, bust);
|
||||
```
|
||||
|
||||
|
50
markdown/dev/reference/plugins/bust/nl.md
Normal file
50
markdown/dev/reference/plugins/bust/nl.md
Normal file
|
@ -0,0 +1,50 @@
|
|||
---
|
||||
title: bust
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-bust) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-bust)
|
||||
|
||||
The [@freesewing/plugin-bust](/reference/packages/plugin-bust) packages provides a plugin to help you adapt menswear patterns for breasts.
|
||||
|
||||
If you are designing a womenswear pattern, you won't need this plugin. But if you're adapting a menswear pattern for breasts, this plugin can help you.
|
||||
|
||||
Almost all menswear patterns use the chest circumference to draft the garment.
|
||||
|
||||
As a person with breasts, using your (full) chest circumference will give you bad fit. Instead, it's better to use your high bust measurement as chest circumference, and then create extra room for the breasts.
|
||||
|
||||
This is the same technique that's used in a full-bust adjustment to fit a womenswear pattern for a person with above-average sized breasts.
|
||||
|
||||
This plugin helps you by:
|
||||
|
||||
- Storing the chest circumference in `measurements.bust`
|
||||
- Changing `measurments.chestCircumference` to the value of `measurements.highBust`
|
||||
|
||||
This way you can extend a menswear pattern and have it drafted with the high bust measurement as chest measurment, after which you can create room for the breasts.
|
||||
|
||||
It's used by our [Carlita](/reference/packages/carlita) pattern, which extends the menswear [Carlton](/reference/packages/carlton) pattern.
|
||||
|
||||
<Tip>
|
||||
|
||||
To learn more about extending a pattern, see [Pattern inheritance](/howtos/core/inheritance/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-bust
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import bust from "@freesewing/plugin-bust";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, bust);
|
||||
```
|
||||
|
||||
|
41
markdown/dev/reference/plugins/buttons/de.md
Normal file
41
markdown/dev/reference/plugins/buttons/de.md
Normal file
|
@ -0,0 +1,41 @@
|
|||
---
|
||||
title: buttons
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-buttons) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-buttons)
|
||||
|
||||
The **buttons** plugin provides `button` and `buttonhold` [snippets](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_buttons" caption="An example of the button, buttonhole, snap-male, and snap-female snippets" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.button = new Snippet('button', new Point(40, 10));
|
||||
snippets.buttonhole = new Snippet('buttonhole', new Point(80, 10));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The buttons plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-buttons
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import buttons from "@freesewing/plugin-buttons";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, buttons);
|
||||
```
|
||||
|
55
markdown/dev/reference/plugins/buttons/en.md
Normal file
55
markdown/dev/reference/plugins/buttons/en.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
title: buttons
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-buttons)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-buttons)
|
||||
|
||||
The **buttons** plugin provides the following [snippets](/reference/snippets/):
|
||||
|
||||
- `button`
|
||||
- `buttonhole`
|
||||
- `buttonhole-start`
|
||||
- `buttonhole-end`
|
||||
- `snap-stud`
|
||||
- `snap-socket`
|
||||
|
||||
<Example part="plugin_buttons" caption="An example of the button, buttonhole, buttonhole-start, buttonhole-end, snap-stud, and snap-socket snippets" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.button = new Snippet('button', new Point(40, 10));
|
||||
snippets.buttonhole = new Snippet('buttonhole', new Point(80, 10));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The buttons plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-buttons
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import buttons from "@freesewing/plugin-buttons";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, buttons);
|
||||
```
|
||||
|
41
markdown/dev/reference/plugins/buttons/es.md
Normal file
41
markdown/dev/reference/plugins/buttons/es.md
Normal file
|
@ -0,0 +1,41 @@
|
|||
---
|
||||
title: buttons
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-buttons) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-buttons)
|
||||
|
||||
The **buttons** plugin provides `button` and `buttonhold` [snippets](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_buttons" caption="An example of the button, buttonhole, snap-male, and snap-female snippets" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.button = new Snippet('button', new Point(40, 10));
|
||||
snippets.buttonhole = new Snippet('buttonhole', new Point(80, 10));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The buttons plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-buttons
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import buttons from "@freesewing/plugin-buttons";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, buttons);
|
||||
```
|
||||
|
41
markdown/dev/reference/plugins/buttons/fr.md
Normal file
41
markdown/dev/reference/plugins/buttons/fr.md
Normal file
|
@ -0,0 +1,41 @@
|
|||
---
|
||||
title: buttons
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-buttons) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-buttons)
|
||||
|
||||
The **buttons** plugin provides `button` and `buttonhold` [snippets](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_buttons" caption="An example of the button, buttonhole, snap-male, and snap-female snippets" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.button = new Snippet('button', new Point(40, 10));
|
||||
snippets.buttonhole = new Snippet('buttonhole', new Point(80, 10));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The buttons plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-buttons
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import buttons from "@freesewing/plugin-buttons";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, buttons);
|
||||
```
|
||||
|
41
markdown/dev/reference/plugins/buttons/nl.md
Normal file
41
markdown/dev/reference/plugins/buttons/nl.md
Normal file
|
@ -0,0 +1,41 @@
|
|||
---
|
||||
title: knopen
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-buttons) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-buttons)
|
||||
|
||||
The **buttons** plugin provides `button` and `buttonhold` [snippets](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_buttons" caption="An example of the button, buttonhole, snap-male, and snap-female snippets" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.button = new Snippet('button', new Point(40, 10));
|
||||
snippets.buttonhole = new Snippet('buttonhole', new Point(80, 10));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The buttons plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-buttons
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import buttons from "@freesewing/plugin-buttons";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, buttons);
|
||||
```
|
||||
|
66
markdown/dev/reference/plugins/cutonfold/de.md
Normal file
66
markdown/dev/reference/plugins/cutonfold/de.md
Normal file
|
@ -0,0 +1,66 @@
|
|||
---
|
||||
title: cutonfold
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-cutonfold) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-cutonfold)
|
||||
|
||||
The **cutonfold** plugin provides [the cutonfold macro](/reference/macros/cutonfold/):
|
||||
|
||||
<Example part="plugin_cutonfold" caption="An example of the cutonfold macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.topRight = new Point(150, 0);
|
||||
points.bottomRight = new Point(150, 50);
|
||||
points.bottomLeft = new Point(0, 50);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.topRight)
|
||||
.line(points.bottomRight)
|
||||
.line(points.bottomLeft)
|
||||
.close();
|
||||
|
||||
macro("cutonfold", {
|
||||
from: points.topRight,
|
||||
to: points.topLeft,
|
||||
grainline: true
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### It's safe to use a corner of your pattern part for this
|
||||
|
||||
Since this is typically used on corners, the generated cut-on-fold indicator
|
||||
will not go all the way to the `to` and `from` points.
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The cutonfold plugin is part of our [plugin-bundle](/reference/plugins/bundle/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-cutonfold
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import cutonfold from "@freesewing/plugin-cutonfold";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, cutonfold);
|
||||
```
|
||||
|
||||
Now you can use [the cutonfold macro](/reference/macros/cutonfold/) in your parts.
|
72
markdown/dev/reference/plugins/cutonfold/en.md
Normal file
72
markdown/dev/reference/plugins/cutonfold/en.md
Normal file
|
@ -0,0 +1,72 @@
|
|||
---
|
||||
title: cutonfold
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-cutonfold)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-cutonfold)
|
||||
|
||||
The **cutonfold** plugin provides [the cutonfold macro](/reference/macros/cutonfold/):
|
||||
|
||||
<Example part="plugin_cutonfold" caption="An example of the cutonfold macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.topRight = new Point(150, 0);
|
||||
points.bottomRight = new Point(150, 50);
|
||||
points.bottomLeft = new Point(0, 50);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.topRight)
|
||||
.line(points.bottomRight)
|
||||
.line(points.bottomLeft)
|
||||
.close();
|
||||
|
||||
macro("cutonfold", {
|
||||
from: points.bottomLeft,
|
||||
to: points.bottomRight,
|
||||
grainline: true
|
||||
});
|
||||
```
|
||||
<Note>
|
||||
|
||||
###### It's safe to use a corner of your pattern part for this
|
||||
|
||||
Since this is typically used on corners, the generated cut-on-fold indicator
|
||||
will not go all the way to the `to` and `from` points.
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The cutonfold plugin is part of our [plugin-bundle](/reference/plugins/bundle/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-cutonfold
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import cutonfold from "@freesewing/plugin-cutonfold";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, cutonfold);
|
||||
```
|
||||
|
||||
Now you can use [the cutonfold macro](/reference/macros/cutonfold/) in your parts.
|
66
markdown/dev/reference/plugins/cutonfold/es.md
Normal file
66
markdown/dev/reference/plugins/cutonfold/es.md
Normal file
|
@ -0,0 +1,66 @@
|
|||
---
|
||||
title: cutonfold
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-cutonfold) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-cutonfold)
|
||||
|
||||
The **cutonfold** plugin provides [the cutonfold macro](/reference/macros/cutonfold/):
|
||||
|
||||
<Example part="plugin_cutonfold" caption="An example of the cutonfold macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.topRight = new Point(150, 0);
|
||||
points.bottomRight = new Point(150, 50);
|
||||
points.bottomLeft = new Point(0, 50);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.topRight)
|
||||
.line(points.bottomRight)
|
||||
.line(points.bottomLeft)
|
||||
.close();
|
||||
|
||||
macro("cutonfold", {
|
||||
from: points.topRight,
|
||||
to: points.topLeft,
|
||||
grainline: true
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### It's safe to use a corner of your pattern part for this
|
||||
|
||||
Since this is typically used on corners, the generated cut-on-fold indicator
|
||||
will not go all the way to the `to` and `from` points.
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The cutonfold plugin is part of our [plugin-bundle](/reference/plugins/bundle/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-cutonfold
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import cutonfold from "@freesewing/plugin-cutonfold";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, cutonfold);
|
||||
```
|
||||
|
||||
Now you can use [the cutonfold macro](/reference/macros/cutonfold/) in your parts.
|
66
markdown/dev/reference/plugins/cutonfold/fr.md
Normal file
66
markdown/dev/reference/plugins/cutonfold/fr.md
Normal file
|
@ -0,0 +1,66 @@
|
|||
---
|
||||
title: cutonfold
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-cutonfold) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-cutonfold)
|
||||
|
||||
The **cutonfold** plugin provides [the cutonfold macro](/reference/macros/cutonfold/):
|
||||
|
||||
<Example part="plugin_cutonfold" caption="An example of the cutonfold macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.topRight = new Point(150, 0);
|
||||
points.bottomRight = new Point(150, 50);
|
||||
points.bottomLeft = new Point(0, 50);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.topRight)
|
||||
.line(points.bottomRight)
|
||||
.line(points.bottomLeft)
|
||||
.close();
|
||||
|
||||
macro("cutonfold", {
|
||||
from: points.topRight,
|
||||
to: points.topLeft,
|
||||
grainline: true
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### It's safe to use a corner of your pattern part for this
|
||||
|
||||
Since this is typically used on corners, the generated cut-on-fold indicator
|
||||
will not go all the way to the `to` and `from` points.
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The cutonfold plugin is part of our [plugin-bundle](/reference/plugins/bundle/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-cutonfold
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import cutonfold from "@freesewing/plugin-cutonfold";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, cutonfold);
|
||||
```
|
||||
|
||||
Now you can use [the cutonfold macro](/reference/macros/cutonfold/) in your parts.
|
66
markdown/dev/reference/plugins/cutonfold/nl.md
Normal file
66
markdown/dev/reference/plugins/cutonfold/nl.md
Normal file
|
@ -0,0 +1,66 @@
|
|||
---
|
||||
title: cutonfold
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-cutonfold) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-cutonfold)
|
||||
|
||||
The **cutonfold** plugin provides [the cutonfold macro](/reference/macros/cutonfold/):
|
||||
|
||||
<Example part="plugin_cutonfold" caption="An example of the cutonfold macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.topRight = new Point(150, 0);
|
||||
points.bottomRight = new Point(150, 50);
|
||||
points.bottomLeft = new Point(0, 50);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.topRight)
|
||||
.line(points.bottomRight)
|
||||
.line(points.bottomLeft)
|
||||
.close();
|
||||
|
||||
macro("cutonfold", {
|
||||
from: points.topRight,
|
||||
to: points.topLeft,
|
||||
grainline: true
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### It's safe to use a corner of your pattern part for this
|
||||
|
||||
Since this is typically used on corners, the generated cut-on-fold indicator
|
||||
will not go all the way to the `to` and `from` points.
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The cutonfold plugin is part of our [plugin-bundle](/reference/plugins/bundle/)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-cutonfold
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import cutonfold from "@freesewing/plugin-cutonfold";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, cutonfold);
|
||||
```
|
||||
|
||||
Now you can use [the cutonfold macro](/reference/macros/cutonfold/) in your parts.
|
5
markdown/dev/reference/plugins/de.md
Normal file
5
markdown/dev/reference/plugins/de.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Plugins
|
||||
---
|
||||
|
||||
<ReadMore root='reference/plugins' />
|
93
markdown/dev/reference/plugins/dimension/de.md
Normal file
93
markdown/dev/reference/plugins/dimension/de.md
Normal file
|
@ -0,0 +1,93 @@
|
|||
---
|
||||
title: dimension
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-dimension) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-dimension)
|
||||
|
||||
The **dimension** plugin provides the following [macros](/plugins#macros):
|
||||
|
||||
- [hd](#hd) : Adds a horizontal dimension
|
||||
- [vd](#vd) : Adds a vertical dimension
|
||||
- [ld](#ld) : Adds a linear dimension
|
||||
- [pd](#pd) : Adds a dimension along a path
|
||||
|
||||
<Example part="plugin_dimension" caption="An example of the different dimensinon macros" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.A = new Point(0, 0);
|
||||
points.B = new Point(0, 100);
|
||||
points.C = new Point(50, 100);
|
||||
points.D = new Point(100, 50);
|
||||
points.DCp1 = new Point(100, 0);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.A)
|
||||
.line(points.B)
|
||||
.line(points.C)
|
||||
.line(points.D)
|
||||
.curve(points.DCp1, points.A, points.A)
|
||||
.close();
|
||||
|
||||
macro("vd", {
|
||||
from: points.A,
|
||||
to: points.B,
|
||||
x: points.A.x - 15
|
||||
});
|
||||
|
||||
macro("hd", {
|
||||
from: points.B,
|
||||
to: points.C,
|
||||
y: points.B.y + 15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -30,
|
||||
text: "Custom text"
|
||||
});
|
||||
|
||||
macro("pd", {
|
||||
path: new Path().move(points.A).curve(points.A, points.DCp1, points.D),
|
||||
d: -15
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The dimension plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-dimension
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import dimension from "@freesewing/plugin-dimension";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, dimension);
|
||||
```
|
||||
|
||||
Now you can use the following macros in your parts:
|
||||
|
||||
- [hd](/reference/macros/hd/)
|
||||
- [vd](/reference/macros/vd/)
|
||||
- [ld](/reference/macros/ld/)
|
||||
- [pd](/reference/macros/pd/)
|
102
markdown/dev/reference/plugins/dimension/en.md
Normal file
102
markdown/dev/reference/plugins/dimension/en.md
Normal file
|
@ -0,0 +1,102 @@
|
|||
---
|
||||
title: dimension
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-dimension)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-dimension)
|
||||
|
||||
The **dimension** plugin provides the following [macros](/plugins#macros):
|
||||
|
||||
- [hd](/reference/macros/hd/) : Adds a horizontal dimension
|
||||
- [vd](/reference/macros/vd/) : Adds a vertical dimension
|
||||
- [ld](/reference/macros/ld/) : Adds a linear dimension
|
||||
- [pd](/reference/macros/pd/) : Adds a dimension along a path
|
||||
- [rmd](/reference/macros/rmd/) : Removes a dimension
|
||||
- [rmad](/reference/macros/rmad/) : Removes all dimensions with a default prefix
|
||||
|
||||
<Example part="plugin_dimension" caption="An example of the different dimensinon macros" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.A = new Point(0, 0);
|
||||
points.B = new Point(0, 100);
|
||||
points.C = new Point(50, 100);
|
||||
points.D = new Point(100, 50);
|
||||
points.DCp1 = new Point(100, 0);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.A)
|
||||
.line(points.B)
|
||||
.line(points.C)
|
||||
.line(points.D)
|
||||
.curve(points.DCp1, points.A, points.A)
|
||||
.close();
|
||||
|
||||
macro("vd", {
|
||||
from: points.A,
|
||||
to: points.B,
|
||||
x: points.A.x - 15
|
||||
});
|
||||
|
||||
macro("hd", {
|
||||
from: points.B,
|
||||
to: points.C,
|
||||
y: points.B.y + 15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -30,
|
||||
text: "Custom text"
|
||||
});
|
||||
|
||||
macro("pd", {
|
||||
path: new Path().move(points.A).curve(points.A, points.DCp1, points.D),
|
||||
d: -15
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The dimension plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-dimension
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import dimension from "@freesewing/plugin-dimension";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, dimension);
|
||||
```
|
||||
|
||||
Now you can use the following macros in your parts:
|
||||
|
||||
- [hd](/reference/macros/hd/)
|
||||
- [vd](/reference/macros/vd/)
|
||||
- [ld](/reference/macros/ld/)
|
||||
- [pd](/reference/macros/pd/)
|
93
markdown/dev/reference/plugins/dimension/es.md
Normal file
93
markdown/dev/reference/plugins/dimension/es.md
Normal file
|
@ -0,0 +1,93 @@
|
|||
---
|
||||
title: dimension
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-dimension) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-dimension)
|
||||
|
||||
The **dimension** plugin provides the following [macros](/plugins#macros):
|
||||
|
||||
- [hd](#hd) : Adds a horizontal dimension
|
||||
- [vd](#vd) : Adds a vertical dimension
|
||||
- [ld](#ld) : Adds a linear dimension
|
||||
- [pd](#pd) : Adds a dimension along a path
|
||||
|
||||
<Example part="plugin_dimension" caption="An example of the different dimensinon macros" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.A = new Point(0, 0);
|
||||
points.B = new Point(0, 100);
|
||||
points.C = new Point(50, 100);
|
||||
points.D = new Point(100, 50);
|
||||
points.DCp1 = new Point(100, 0);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.A)
|
||||
.line(points.B)
|
||||
.line(points.C)
|
||||
.line(points.D)
|
||||
.curve(points.DCp1, points.A, points.A)
|
||||
.close();
|
||||
|
||||
macro("vd", {
|
||||
from: points.A,
|
||||
to: points.B,
|
||||
x: points.A.x - 15
|
||||
});
|
||||
|
||||
macro("hd", {
|
||||
from: points.B,
|
||||
to: points.C,
|
||||
y: points.B.y + 15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -30,
|
||||
text: "Custom text"
|
||||
});
|
||||
|
||||
macro("pd", {
|
||||
path: new Path().move(points.A).curve(points.A, points.DCp1, points.D),
|
||||
d: -15
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The dimension plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-dimension
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import dimension from "@freesewing/plugin-dimension";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, dimension);
|
||||
```
|
||||
|
||||
Now you can use the following macros in your parts:
|
||||
|
||||
- [hd](/reference/macros/hd/)
|
||||
- [vd](/reference/macros/vd/)
|
||||
- [ld](/reference/macros/ld/)
|
||||
- [pd](/reference/macros/pd/)
|
93
markdown/dev/reference/plugins/dimension/fr.md
Normal file
93
markdown/dev/reference/plugins/dimension/fr.md
Normal file
|
@ -0,0 +1,93 @@
|
|||
---
|
||||
title: dimension
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-dimension) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-dimension)
|
||||
|
||||
The **dimension** plugin provides the following [macros](/plugins#macros):
|
||||
|
||||
- [hd](#hd) : Adds a horizontal dimension
|
||||
- [vd](#vd) : Adds a vertical dimension
|
||||
- [ld](#ld) : Adds a linear dimension
|
||||
- [pd](#pd) : Adds a dimension along a path
|
||||
|
||||
<Example part="plugin_dimension" caption="An example of the different dimensinon macros" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.A = new Point(0, 0);
|
||||
points.B = new Point(0, 100);
|
||||
points.C = new Point(50, 100);
|
||||
points.D = new Point(100, 50);
|
||||
points.DCp1 = new Point(100, 0);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.A)
|
||||
.line(points.B)
|
||||
.line(points.C)
|
||||
.line(points.D)
|
||||
.curve(points.DCp1, points.A, points.A)
|
||||
.close();
|
||||
|
||||
macro("vd", {
|
||||
from: points.A,
|
||||
to: points.B,
|
||||
x: points.A.x - 15
|
||||
});
|
||||
|
||||
macro("hd", {
|
||||
from: points.B,
|
||||
to: points.C,
|
||||
y: points.B.y + 15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -30,
|
||||
text: "Custom text"
|
||||
});
|
||||
|
||||
macro("pd", {
|
||||
path: new Path().move(points.A).curve(points.A, points.DCp1, points.D),
|
||||
d: -15
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The dimension plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-dimension
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import dimension from "@freesewing/plugin-dimension";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, dimension);
|
||||
```
|
||||
|
||||
Now you can use the following macros in your parts:
|
||||
|
||||
- [hd](/reference/macros/hd/)
|
||||
- [vd](/reference/macros/vd/)
|
||||
- [ld](/reference/macros/ld/)
|
||||
- [pd](/reference/macros/pd/)
|
93
markdown/dev/reference/plugins/dimension/nl.md
Normal file
93
markdown/dev/reference/plugins/dimension/nl.md
Normal file
|
@ -0,0 +1,93 @@
|
|||
---
|
||||
title: dimension
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-dimension) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-dimension)
|
||||
|
||||
The **dimension** plugin provides the following [macros](/plugins#macros):
|
||||
|
||||
- [hd](#hd) : Adds a horizontal dimension
|
||||
- [vd](#vd) : Adds a vertical dimension
|
||||
- [ld](#ld) : Adds a linear dimension
|
||||
- [pd](#pd) : Adds a dimension along a path
|
||||
|
||||
<Example part="plugin_dimension" caption="An example of the different dimensinon macros" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, Path, paths, macro } = part.shorthand();
|
||||
|
||||
points.A = new Point(0, 0);
|
||||
points.B = new Point(0, 100);
|
||||
points.C = new Point(50, 100);
|
||||
points.D = new Point(100, 50);
|
||||
points.DCp1 = new Point(100, 0);
|
||||
|
||||
paths.box = new Path()
|
||||
.move(points.A)
|
||||
.line(points.B)
|
||||
.line(points.C)
|
||||
.line(points.D)
|
||||
.curve(points.DCp1, points.A, points.A)
|
||||
.close();
|
||||
|
||||
macro("vd", {
|
||||
from: points.A,
|
||||
to: points.B,
|
||||
x: points.A.x - 15
|
||||
});
|
||||
|
||||
macro("hd", {
|
||||
from: points.B,
|
||||
to: points.C,
|
||||
y: points.B.y + 15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -15
|
||||
});
|
||||
|
||||
macro("ld", {
|
||||
from: points.C,
|
||||
to: points.D,
|
||||
d: -30,
|
||||
text: "Custom text"
|
||||
});
|
||||
|
||||
macro("pd", {
|
||||
path: new Path().move(points.A).curve(points.A, points.DCp1, points.D),
|
||||
d: -15
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The dimension plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-dimension
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import dimension from "@freesewing/plugin-dimension";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, dimension);
|
||||
```
|
||||
|
||||
Now you can use the following macros in your parts:
|
||||
|
||||
- [hd](/reference/macros/hd/)
|
||||
- [vd](/reference/macros/vd/)
|
||||
- [ld](/reference/macros/ld/)
|
||||
- [pd](/reference/macros/pd/)
|
9
markdown/dev/reference/plugins/en.md
Normal file
9
markdown/dev/reference/plugins/en.md
Normal file
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
title: Plugins
|
||||
for: developers
|
||||
about: Complete list of all the plugins available for FreeSewing core
|
||||
---
|
||||
|
||||
The following FreeSewing plugins are available:
|
||||
|
||||
<ReadMore list />
|
5
markdown/dev/reference/plugins/es.md
Normal file
5
markdown/dev/reference/plugins/es.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Plugins
|
||||
---
|
||||
|
||||
<ReadMore root='reference/plugins' />
|
33
markdown/dev/reference/plugins/flip/de.md
Normal file
33
markdown/dev/reference/plugins/flip/de.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: flip
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-flip) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-flip)
|
||||
|
||||
The **flip** plugin provides [the flip macro](/refernce/macros/flip/) which flips (mirrors) an entire part vertically around the Y-axis.
|
||||
|
||||
```js
|
||||
let { macro } = part.shorthand();
|
||||
|
||||
macro("flip");
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-flip
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import flip from "@freesewing/plugin-flip";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, flip);
|
||||
```
|
||||
|
||||
Now you can use [the flip macro](/reference/macros/flip) in your parts.
|
40
markdown/dev/reference/plugins/flip/en.md
Normal file
40
markdown/dev/reference/plugins/flip/en.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: flip
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-flip)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-flip)
|
||||
|
||||
The **flip** plugin provides [the flip macro](/reference/macros/flip/) which flips (mirrors) an entire part vertically around the Y-axis.
|
||||
|
||||
```js
|
||||
let { macro } = part.shorthand();
|
||||
|
||||
macro("flip");
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-flip
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import flip from "@freesewing/plugin-flip";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, flip);
|
||||
```
|
||||
|
||||
Now you can use [the flip macro](/reference/macros/flip) in your parts.
|
33
markdown/dev/reference/plugins/flip/es.md
Normal file
33
markdown/dev/reference/plugins/flip/es.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: flip
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-flip) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-flip)
|
||||
|
||||
The **flip** plugin provides [the flip macro](/refernce/macros/flip/) which flips (mirrors) an entire part vertically around the Y-axis.
|
||||
|
||||
```js
|
||||
let { macro } = part.shorthand();
|
||||
|
||||
macro("flip");
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-flip
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import flip from "@freesewing/plugin-flip";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, flip);
|
||||
```
|
||||
|
||||
Now you can use [the flip macro](/reference/macros/flip) in your parts.
|
33
markdown/dev/reference/plugins/flip/fr.md
Normal file
33
markdown/dev/reference/plugins/flip/fr.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: flip
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-flip) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-flip)
|
||||
|
||||
The **flip** plugin provides [the flip macro](/refernce/macros/flip/) which flips (mirrors) an entire part vertically around the Y-axis.
|
||||
|
||||
```js
|
||||
let { macro } = part.shorthand();
|
||||
|
||||
macro("flip");
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-flip
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import flip from "@freesewing/plugin-flip";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, flip);
|
||||
```
|
||||
|
||||
Now you can use [the flip macro](/reference/macros/flip) in your parts.
|
33
markdown/dev/reference/plugins/flip/nl.md
Normal file
33
markdown/dev/reference/plugins/flip/nl.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: flip
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-flip) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-flip)
|
||||
|
||||
The **flip** plugin provides [the flip macro](/refernce/macros/flip/) which flips (mirrors) an entire part vertically around the Y-axis.
|
||||
|
||||
```js
|
||||
let { macro } = part.shorthand();
|
||||
|
||||
macro("flip");
|
||||
```
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-flip
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import flip from "@freesewing/plugin-flip";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, flip);
|
||||
```
|
||||
|
||||
Now you can use [the flip macro](/reference/macros/flip) in your parts.
|
5
markdown/dev/reference/plugins/fr.md
Normal file
5
markdown/dev/reference/plugins/fr.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Plugins
|
||||
---
|
||||
|
||||
<ReadMore root='reference/plugins' />
|
47
markdown/dev/reference/plugins/grainline/de.md
Normal file
47
markdown/dev/reference/plugins/grainline/de.md
Normal file
|
@ -0,0 +1,47 @@
|
|||
---
|
||||
title: grainline
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-grainline) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-grainline)
|
||||
|
||||
The **grainline** plugin provides [the grainline macro](/reference/macros/grainline/):
|
||||
|
||||
<Example part="plugin_grainline" caption="An example of the grainline macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.grainlineFrom = new Point(10, 10);
|
||||
points.grainlineTo = new Point(100, 10);
|
||||
|
||||
macro("grainline", {
|
||||
from: points.grainlineFrom,
|
||||
to: points.grainlineTo
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The grainline plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-grainline
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import grainline from "@freesewing/plugin-grainline";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, grainline);
|
||||
```
|
||||
|
||||
Now you can use [the grainline macro](/reference/macros/grainline) in your parts.
|
54
markdown/dev/reference/plugins/grainline/en.md
Normal file
54
markdown/dev/reference/plugins/grainline/en.md
Normal file
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
title: grainline
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-grainline)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-grainline)
|
||||
|
||||
The **grainline** plugin provides [the grainline macro](/reference/macros/grainline/):
|
||||
|
||||
<Example part="plugin_grainline" caption="An example of the grainline macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.grainlineFrom = new Point(10, 10);
|
||||
points.grainlineTo = new Point(100, 10);
|
||||
|
||||
macro("grainline", {
|
||||
from: points.grainlineFrom,
|
||||
to: points.grainlineTo
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The grainline plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-grainline
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import grainline from "@freesewing/plugin-grainline";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, grainline);
|
||||
```
|
||||
|
||||
Now you can use [the grainline macro](/reference/macros/grainline) in your parts.
|
47
markdown/dev/reference/plugins/grainline/es.md
Normal file
47
markdown/dev/reference/plugins/grainline/es.md
Normal file
|
@ -0,0 +1,47 @@
|
|||
---
|
||||
title: grainline
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-grainline) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-grainline)
|
||||
|
||||
The **grainline** plugin provides [the grainline macro](/reference/macros/grainline/):
|
||||
|
||||
<Example part="plugin_grainline" caption="An example of the grainline macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.grainlineFrom = new Point(10, 10);
|
||||
points.grainlineTo = new Point(100, 10);
|
||||
|
||||
macro("grainline", {
|
||||
from: points.grainlineFrom,
|
||||
to: points.grainlineTo
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The grainline plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-grainline
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import grainline from "@freesewing/plugin-grainline";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, grainline);
|
||||
```
|
||||
|
||||
Now you can use [the grainline macro](/reference/macros/grainline) in your parts.
|
47
markdown/dev/reference/plugins/grainline/fr.md
Normal file
47
markdown/dev/reference/plugins/grainline/fr.md
Normal file
|
@ -0,0 +1,47 @@
|
|||
---
|
||||
title: grainline
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-grainline) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-grainline)
|
||||
|
||||
The **grainline** plugin provides [the grainline macro](/reference/macros/grainline/):
|
||||
|
||||
<Example part="plugin_grainline" caption="An example of the grainline macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.grainlineFrom = new Point(10, 10);
|
||||
points.grainlineTo = new Point(100, 10);
|
||||
|
||||
macro("grainline", {
|
||||
from: points.grainlineFrom,
|
||||
to: points.grainlineTo
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The grainline plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-grainline
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import grainline from "@freesewing/plugin-grainline";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, grainline);
|
||||
```
|
||||
|
||||
Now you can use [the grainline macro](/reference/macros/grainline) in your parts.
|
47
markdown/dev/reference/plugins/grainline/nl.md
Normal file
47
markdown/dev/reference/plugins/grainline/nl.md
Normal file
|
@ -0,0 +1,47 @@
|
|||
---
|
||||
title: grainline
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-grainline) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-grainline)
|
||||
|
||||
The **grainline** plugin provides [the grainline macro](/reference/macros/grainline/):
|
||||
|
||||
<Example part="plugin_grainline" caption="An example of the grainline macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.grainlineFrom = new Point(10, 10);
|
||||
points.grainlineTo = new Point(100, 10);
|
||||
|
||||
macro("grainline", {
|
||||
from: points.grainlineFrom,
|
||||
to: points.grainlineTo
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The grainline plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-grainline
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import grainline from "@freesewing/plugin-grainline";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, grainline);
|
||||
```
|
||||
|
||||
Now you can use [the grainline macro](/reference/macros/grainline) in your parts.
|
55
markdown/dev/reference/plugins/i18n/de.md
Normal file
55
markdown/dev/reference/plugins/i18n/de.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
title: i18n
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-i18n) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-i18n)
|
||||
|
||||
The **i18n** plugin provides translation for your pattern:
|
||||
|
||||
<Example part="path_attr" caption="An example in English" design={false} options={{locale: 'en'}} /> <Example part="path_attr" caption="An example in French" design={false} options={{locale: 'fr'}} />
|
||||
|
||||
It uses the [`insertText`](/plugins#inserttext) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin provides the mechanism for translation, but does not come with translations itself.
|
||||
For this, you can use our [i18n package](/reference/packages/i18n).
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-i18n
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { strings: translations });
|
||||
```
|
||||
|
||||
You should also pass a second argument which holds your translations. It should be structured as such:
|
||||
|
||||
```js
|
||||
{
|
||||
strings:
|
||||
en: {
|
||||
example: "Example"
|
||||
},
|
||||
nl: {
|
||||
example: "Voorbeeld"
|
||||
},
|
||||
// More languages can follow
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
64
markdown/dev/reference/plugins/i18n/en.md
Normal file
64
markdown/dev/reference/plugins/i18n/en.md
Normal file
|
@ -0,0 +1,64 @@
|
|||
---
|
||||
title: i18n
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-i18n)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-i18n)
|
||||
|
||||
The **i18n** plugin provides translation for your pattern:
|
||||
|
||||
<Example part="path_attr" caption="An example in English" design={false} options={{locale: 'en'}} />
|
||||
<Example part="path_attr" caption="An example in French" design={false} options={{locale: 'fr'}} />
|
||||
|
||||
It uses the [`insertText`](/plugins#inserttext) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin provides the mechanism for translation, but does not come with translations itself.
|
||||
For this, you can use our [i18n package](/reference/packages/i18n).
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-i18n
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const pattern = new aaron()
|
||||
.use(i18nPlugin, { strings: translations });
|
||||
```
|
||||
|
||||
You should also pass a second argument which holds your translations.
|
||||
It should be structured as such:
|
||||
|
||||
```js
|
||||
{
|
||||
strings:
|
||||
en: {
|
||||
example: "Example"
|
||||
},
|
||||
nl: {
|
||||
example: "Voorbeeld"
|
||||
},
|
||||
// More languages can follow
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
55
markdown/dev/reference/plugins/i18n/es.md
Normal file
55
markdown/dev/reference/plugins/i18n/es.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
title: i18n
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-i18n) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-i18n)
|
||||
|
||||
The **i18n** plugin provides translation for your pattern:
|
||||
|
||||
<Example part="path_attr" caption="An example in English" design={false} options={{locale: 'en'}} /> <Example part="path_attr" caption="An example in French" design={false} options={{locale: 'fr'}} />
|
||||
|
||||
It uses the [`insertText`](/plugins#inserttext) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin provides the mechanism for translation, but does not come with translations itself.
|
||||
For this, you can use our [i18n package](/reference/packages/i18n).
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-i18n
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { strings: translations });
|
||||
```
|
||||
|
||||
You should also pass a second argument which holds your translations. It should be structured as such:
|
||||
|
||||
```js
|
||||
{
|
||||
strings:
|
||||
en: {
|
||||
example: "Example"
|
||||
},
|
||||
nl: {
|
||||
example: "Voorbeeld"
|
||||
},
|
||||
// More languages can follow
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
55
markdown/dev/reference/plugins/i18n/fr.md
Normal file
55
markdown/dev/reference/plugins/i18n/fr.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
title: i18n
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-i18n) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-i18n)
|
||||
|
||||
The **i18n** plugin provides translation for your pattern:
|
||||
|
||||
<Example part="path_attr" caption="An example in English" design={false} options={{locale: 'en'}} /> <Example part="path_attr" caption="An example in French" design={false} options={{locale: 'fr'}} />
|
||||
|
||||
It uses the [`insertText`](/plugins#inserttext) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin provides the mechanism for translation, but does not come with translations itself.
|
||||
For this, you can use our [i18n package](/reference/packages/i18n).
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-i18n
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { strings: translations });
|
||||
```
|
||||
|
||||
You should also pass a second argument which holds your translations. It should be structured as such:
|
||||
|
||||
```js
|
||||
{
|
||||
strings:
|
||||
en: {
|
||||
example: "Example"
|
||||
},
|
||||
nl: {
|
||||
example: "Voorbeeld"
|
||||
},
|
||||
// More languages can follow
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
55
markdown/dev/reference/plugins/i18n/nl.md
Normal file
55
markdown/dev/reference/plugins/i18n/nl.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
title: i18n
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-i18n) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-i18n)
|
||||
|
||||
The **i18n** plugin provides translation for your pattern:
|
||||
|
||||
<Example part="path_attr" caption="An example in English" design={false} options={{locale: 'en'}} /> <Example part="path_attr" caption="An example in French" design={false} options={{locale: 'fr'}} />
|
||||
|
||||
It uses the [`insertText`](/plugins#inserttext) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin provides the mechanism for translation, but does not come with translations itself.
|
||||
For this, you can use our [i18n package](/reference/packages/i18n).
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-i18n
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { strings: translations });
|
||||
```
|
||||
|
||||
You should also pass a second argument which holds your translations. It should be structured as such:
|
||||
|
||||
```js
|
||||
{
|
||||
strings:
|
||||
en: {
|
||||
example: "Example"
|
||||
},
|
||||
nl: {
|
||||
example: "Voorbeeld"
|
||||
},
|
||||
// More languages can follow
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
|
40
markdown/dev/reference/plugins/logo/de.md
Normal file
40
markdown/dev/reference/plugins/logo/de.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: logo
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-logo) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-logo)
|
||||
|
||||
The **logo** plugin provides [the logo snippet](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_logo" caption="An example of the logo snippet" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.logo = new Snippet("logo", new Point(50, 30));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The logo plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-logo
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import logo from "@freesewing/plugin-logo";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, logo);
|
||||
```
|
||||
|
47
markdown/dev/reference/plugins/logo/en.md
Normal file
47
markdown/dev/reference/plugins/logo/en.md
Normal file
|
@ -0,0 +1,47 @@
|
|||
---
|
||||
title: logo
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-logo)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-logo)
|
||||
|
||||
The **logo** plugin provides [the logo snippet](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_logo" caption="An example of the logo snippet" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.logo = new Snippet("logo", new Point(50, 30));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The logo plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-logo
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import logo from "@freesewing/plugin-logo";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, logo);
|
||||
```
|
||||
|
40
markdown/dev/reference/plugins/logo/es.md
Normal file
40
markdown/dev/reference/plugins/logo/es.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: logo
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-logo) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-logo)
|
||||
|
||||
The **logo** plugin provides [the logo snippet](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_logo" caption="An example of the logo snippet" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.logo = new Snippet("logo", new Point(50, 30));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The logo plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-logo
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import logo from "@freesewing/plugin-logo";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, logo);
|
||||
```
|
||||
|
40
markdown/dev/reference/plugins/logo/fr.md
Normal file
40
markdown/dev/reference/plugins/logo/fr.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: logo
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-logo) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-logo)
|
||||
|
||||
The **logo** plugin provides [the logo snippet](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_logo" caption="An example of the logo snippet" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.logo = new Snippet("logo", new Point(50, 30));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The logo plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-logo
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import logo from "@freesewing/plugin-logo";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, logo);
|
||||
```
|
||||
|
40
markdown/dev/reference/plugins/logo/nl.md
Normal file
40
markdown/dev/reference/plugins/logo/nl.md
Normal file
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: logo
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-logo) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-logo)
|
||||
|
||||
The **logo** plugin provides [the logo snippet](/reference/snippets/):
|
||||
|
||||
<Example part="plugin_logo" caption="An example of the logo snippet" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, snippets, Snippet } = part.shorthand();
|
||||
|
||||
snippets.logo = new Snippet("logo", new Point(50, 30));
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The logo plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-logo
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import logo from "@freesewing/plugin-logo";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, logo);
|
||||
```
|
||||
|
36
markdown/dev/reference/plugins/mirror/en.md
Normal file
36
markdown/dev/reference/plugins/mirror/en.md
Normal file
|
@ -0,0 +1,36 @@
|
|||
---
|
||||
title: mirror
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-mirror)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-mirror)
|
||||
|
||||
The [@freesewing/plugin-mirror](/reference/packages/plugin-mirror) packages provides a plugin to help mirror points and/or paths around a given mirror line.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-mirror
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import mirror from "@freesewing/plugin-mirror";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, mirror);
|
||||
```
|
||||
|
||||
Now you can use [the mirror macro](/reference/macros/mirror) in your parts.
|
||||
|
||||
|
5
markdown/dev/reference/plugins/nl.md
Normal file
5
markdown/dev/reference/plugins/nl.md
Normal file
|
@ -0,0 +1,5 @@
|
|||
---
|
||||
title: Plugins
|
||||
---
|
||||
|
||||
<ReadMore root='reference/plugins' />
|
76
markdown/dev/reference/plugins/round/de.md
Normal file
76
markdown/dev/reference/plugins/round/de.md
Normal file
|
@ -0,0 +1,76 @@
|
|||
---
|
||||
title: round
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-round) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-round)
|
||||
|
||||
The **round** plugin provides [the round macro](/reference/macros/round/):
|
||||
|
||||
<Example part="plugin_round" caption="An example of the round macro" design={false} />
|
||||
|
||||
```js
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.bottomLeft = new Point(0, 30);
|
||||
points.topRight = new Point(100, 0);
|
||||
points.bottomRight = new Point(100, 30);
|
||||
|
||||
paths.demo = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
.line(points.topRight)
|
||||
.close()
|
||||
.attr("class", "note dashed");
|
||||
|
||||
macro("round", {
|
||||
from: points.topLeft,
|
||||
to: points.bottomRight,
|
||||
via: points.bottomLeft,
|
||||
radius: 10,
|
||||
prefix: 'bl',
|
||||
render: true
|
||||
});
|
||||
macro("round", {
|
||||
from: points.bottomRight,
|
||||
to: points.topLeft,
|
||||
via: points.topRight,
|
||||
radius: 20,
|
||||
prefix: 'tr',
|
||||
render: true
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The round plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-round
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import round from "@freesewing/plugin-round";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, round);
|
||||
```
|
||||
|
||||
Now you can use [the round macro](/reference/macros/round/): in your parts.
|
||||
|
||||
<Warning>
|
||||
|
||||
The round macro is intended for rounding 90° angles
|
||||
|
||||
</Warning>
|
||||
|
||||
|
||||
|
81
markdown/dev/reference/plugins/round/en.md
Normal file
81
markdown/dev/reference/plugins/round/en.md
Normal file
|
@ -0,0 +1,81 @@
|
|||
---
|
||||
title: round
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-round)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-round)
|
||||
|
||||
The **round** plugin provides [the round macro](/reference/macros/round/):
|
||||
|
||||
<Example part="plugin_round" caption="An example of the round macro" design={false} />
|
||||
|
||||
```js
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.bottomLeft = new Point(0, 30);
|
||||
points.topRight = new Point(100, 0);
|
||||
points.bottomRight = new Point(100, 30);
|
||||
|
||||
paths.demo = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
.line(points.topRight)
|
||||
.close()
|
||||
.attr("class", "note dashed");
|
||||
|
||||
macro("round", {
|
||||
from: points.topLeft,
|
||||
to: points.bottomRight,
|
||||
via: points.bottomLeft,
|
||||
radius: 10,
|
||||
prefix: 'bl',
|
||||
render: true
|
||||
});
|
||||
macro("round", {
|
||||
from: points.bottomRight,
|
||||
to: points.topLeft,
|
||||
via: points.topRight,
|
||||
radius: 20,
|
||||
prefix: 'tr',
|
||||
render: true
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The round plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-round
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import round from "@freesewing/plugin-round";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, round);
|
||||
```
|
||||
|
||||
Now you can use [the round macro](/reference/macros/round/): in your parts.
|
||||
|
||||
<Warning>
|
||||
|
||||
The round macro is intended for rounding 90° angles
|
||||
|
||||
</Warning>
|
||||
|
76
markdown/dev/reference/plugins/round/es.md
Normal file
76
markdown/dev/reference/plugins/round/es.md
Normal file
|
@ -0,0 +1,76 @@
|
|||
---
|
||||
title: round
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-round) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-round)
|
||||
|
||||
The **round** plugin provides [the round macro](/reference/macros/round/):
|
||||
|
||||
<Example part="plugin_round" caption="An example of the round macro" design={false} />
|
||||
|
||||
```js
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.bottomLeft = new Point(0, 30);
|
||||
points.topRight = new Point(100, 0);
|
||||
points.bottomRight = new Point(100, 30);
|
||||
|
||||
paths.demo = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
.line(points.topRight)
|
||||
.close()
|
||||
.attr("class", "note dashed");
|
||||
|
||||
macro("round", {
|
||||
from: points.topLeft,
|
||||
to: points.bottomRight,
|
||||
via: points.bottomLeft,
|
||||
radius: 10,
|
||||
prefix: 'bl',
|
||||
render: true
|
||||
});
|
||||
macro("round", {
|
||||
from: points.bottomRight,
|
||||
to: points.topLeft,
|
||||
via: points.topRight,
|
||||
radius: 20,
|
||||
prefix: 'tr',
|
||||
render: true
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The round plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-round
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import round from "@freesewing/plugin-round";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, round);
|
||||
```
|
||||
|
||||
Now you can use [the round macro](/reference/macros/round/): in your parts.
|
||||
|
||||
<Warning>
|
||||
|
||||
The round macro is intended for rounding 90° angles
|
||||
|
||||
</Warning>
|
||||
|
||||
|
||||
|
76
markdown/dev/reference/plugins/round/fr.md
Normal file
76
markdown/dev/reference/plugins/round/fr.md
Normal file
|
@ -0,0 +1,76 @@
|
|||
---
|
||||
title: round
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-round) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-round)
|
||||
|
||||
The **round** plugin provides [the round macro](/reference/macros/round/):
|
||||
|
||||
<Example part="plugin_round" caption="An example of the round macro" design={false} />
|
||||
|
||||
```js
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.bottomLeft = new Point(0, 30);
|
||||
points.topRight = new Point(100, 0);
|
||||
points.bottomRight = new Point(100, 30);
|
||||
|
||||
paths.demo = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
.line(points.topRight)
|
||||
.close()
|
||||
.attr("class", "note dashed");
|
||||
|
||||
macro("round", {
|
||||
from: points.topLeft,
|
||||
to: points.bottomRight,
|
||||
via: points.bottomLeft,
|
||||
radius: 10,
|
||||
prefix: 'bl',
|
||||
render: true
|
||||
});
|
||||
macro("round", {
|
||||
from: points.bottomRight,
|
||||
to: points.topLeft,
|
||||
via: points.topRight,
|
||||
radius: 20,
|
||||
prefix: 'tr',
|
||||
render: true
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The round plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-round
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import round from "@freesewing/plugin-round";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, round);
|
||||
```
|
||||
|
||||
Now you can use [the round macro](/reference/macros/round/): in your parts.
|
||||
|
||||
<Warning>
|
||||
|
||||
The round macro is intended for rounding 90° angles
|
||||
|
||||
</Warning>
|
||||
|
||||
|
||||
|
76
markdown/dev/reference/plugins/round/nl.md
Normal file
76
markdown/dev/reference/plugins/round/nl.md
Normal file
|
@ -0,0 +1,76 @@
|
|||
---
|
||||
title: round
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-round) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-round)
|
||||
|
||||
The **round** plugin provides [the round macro](/reference/macros/round/):
|
||||
|
||||
<Example part="plugin_round" caption="An example of the round macro" design={false} />
|
||||
|
||||
```js
|
||||
points.topLeft = new Point(0, 0);
|
||||
points.bottomLeft = new Point(0, 30);
|
||||
points.topRight = new Point(100, 0);
|
||||
points.bottomRight = new Point(100, 30);
|
||||
|
||||
paths.demo = new Path()
|
||||
.move(points.topLeft)
|
||||
.line(points.bottomLeft)
|
||||
.line(points.bottomRight)
|
||||
.line(points.topRight)
|
||||
.close()
|
||||
.attr("class", "note dashed");
|
||||
|
||||
macro("round", {
|
||||
from: points.topLeft,
|
||||
to: points.bottomRight,
|
||||
via: points.bottomLeft,
|
||||
radius: 10,
|
||||
prefix: 'bl',
|
||||
render: true
|
||||
});
|
||||
macro("round", {
|
||||
from: points.bottomRight,
|
||||
to: points.topLeft,
|
||||
via: points.topRight,
|
||||
radius: 20,
|
||||
prefix: 'tr',
|
||||
render: true
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The round plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-round
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import round from "@freesewing/plugin-round";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, round);
|
||||
```
|
||||
|
||||
Now you can use [the round macro](/reference/macros/round/): in your parts.
|
||||
|
||||
<Warning>
|
||||
|
||||
The round macro is intended for rounding 90° angles
|
||||
|
||||
</Warning>
|
||||
|
||||
|
||||
|
53
markdown/dev/reference/plugins/scalebox/de.md
Normal file
53
markdown/dev/reference/plugins/scalebox/de.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
---
|
||||
title: scalebox
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-scalebox) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-scalebox)
|
||||
|
||||
The **scalebox** plugin provides [the scalebox macro](/reference/macros/scalebox/):
|
||||
|
||||
<Example part="plugin_scalebox" caption="An example of the scalebox" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.anchor = new Point(0, 0);
|
||||
|
||||
macro("scalebox", {
|
||||
at: points.anchor
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### Purpose of a scale box
|
||||
|
||||
A scalebox allows people to verify the pattern is printed at the correct scale
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The scalebox plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-scalebox
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import scalebox from "@freesewing/plugin-scalebox";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, scalebox);
|
||||
```
|
||||
|
||||
Now you can use [the scalebox macro](/reference/macros/scalebox/) the macro in your parts.
|
60
markdown/dev/reference/plugins/scalebox/en.md
Normal file
60
markdown/dev/reference/plugins/scalebox/en.md
Normal file
|
@ -0,0 +1,60 @@
|
|||
---
|
||||
title: scalebox
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-scalebox)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-scalebox)
|
||||
|
||||
The **scalebox** plugin provides [the scalebox macro](/reference/macros/scalebox/):
|
||||
|
||||
<Example part="plugin_scalebox" caption="An example of the scalebox" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.anchor = new Point(0, 0);
|
||||
|
||||
macro("scalebox", {
|
||||
at: points.anchor
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### Purpose of a scale box
|
||||
|
||||
A scalebox allows people to verify the pattern is printed at the correct scale
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The scalebox plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-scalebox
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import scalebox from "@freesewing/plugin-scalebox";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, scalebox);
|
||||
```
|
||||
|
||||
Now you can use [the scalebox macro](/reference/macros/scalebox/) the macro in your parts.
|
53
markdown/dev/reference/plugins/scalebox/es.md
Normal file
53
markdown/dev/reference/plugins/scalebox/es.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
---
|
||||
title: scalebox
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-scalebox) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-scalebox)
|
||||
|
||||
The **scalebox** plugin provides [the scalebox macro](/reference/macros/scalebox/):
|
||||
|
||||
<Example part="plugin_scalebox" caption="An example of the scalebox" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.anchor = new Point(0, 0);
|
||||
|
||||
macro("scalebox", {
|
||||
at: points.anchor
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### Purpose of a scale box
|
||||
|
||||
A scalebox allows people to verify the pattern is printed at the correct scale
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The scalebox plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-scalebox
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import scalebox from "@freesewing/plugin-scalebox";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, scalebox);
|
||||
```
|
||||
|
||||
Now you can use [the scalebox macro](/reference/macros/scalebox/) the macro in your parts.
|
53
markdown/dev/reference/plugins/scalebox/fr.md
Normal file
53
markdown/dev/reference/plugins/scalebox/fr.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
---
|
||||
title: scalebox
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-scalebox) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-scalebox)
|
||||
|
||||
The **scalebox** plugin provides [the scalebox macro](/reference/macros/scalebox/):
|
||||
|
||||
<Example part="plugin_scalebox" caption="An example of the scalebox" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.anchor = new Point(0, 0);
|
||||
|
||||
macro("scalebox", {
|
||||
at: points.anchor
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### Purpose of a scale box
|
||||
|
||||
A scalebox allows people to verify the pattern is printed at the correct scale
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The scalebox plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-scalebox
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import scalebox from "@freesewing/plugin-scalebox";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, scalebox);
|
||||
```
|
||||
|
||||
Now you can use [the scalebox macro](/reference/macros/scalebox/) the macro in your parts.
|
53
markdown/dev/reference/plugins/scalebox/nl.md
Normal file
53
markdown/dev/reference/plugins/scalebox/nl.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
---
|
||||
title: scalebox
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-scalebox) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-scalebox)
|
||||
|
||||
The **scalebox** plugin provides [the scalebox macro](/reference/macros/scalebox/):
|
||||
|
||||
<Example part="plugin_scalebox" caption="An example of the scalebox" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.anchor = new Point(0, 0);
|
||||
|
||||
macro("scalebox", {
|
||||
at: points.anchor
|
||||
});
|
||||
```
|
||||
|
||||
<Note>
|
||||
|
||||
###### Purpose of a scale box
|
||||
|
||||
A scalebox allows people to verify the pattern is printed at the correct scale
|
||||
|
||||
</Note>
|
||||
|
||||
<Tip>
|
||||
|
||||
The scalebox plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-scalebox
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import scalebox from "@freesewing/plugin-scalebox";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, scalebox);
|
||||
```
|
||||
|
||||
Now you can use [the scalebox macro](/reference/macros/scalebox/) the macro in your parts.
|
54
markdown/dev/reference/plugins/sprinkle/de.md
Normal file
54
markdown/dev/reference/plugins/sprinkle/de.md
Normal file
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
title: sprinkle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-sprinkle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-sprinkle)
|
||||
|
||||
The **sprinkle** plugin provides [the sprinkle macro](/reference/macros/sprinkle/):
|
||||
|
||||
<Example part="plugin_sprinkle" caption="An example of the sprinkle macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.a = new Point(10, 10);
|
||||
points.b = new Point(20, 15);
|
||||
points.c = new Point(30, 10);
|
||||
points.d = new Point(40, 15);
|
||||
points.e = new Point(50, 10);
|
||||
points.f = new Point(60, 15);
|
||||
points.g = new Point(70, 10);
|
||||
points.h = new Point(80, 15);
|
||||
points.i = new Point(90, 10);
|
||||
|
||||
macro("sprinkle", {
|
||||
snippet: "button",
|
||||
on: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The sprinkle plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-sprinkle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import sprinkle from "@freesewing/plugin-sprinkle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, sprinkle);
|
||||
```
|
||||
|
||||
Now you can use [the sprinkle macro](/reference/macros/sprinkle/) in your parts.
|
61
markdown/dev/reference/plugins/sprinkle/en.md
Normal file
61
markdown/dev/reference/plugins/sprinkle/en.md
Normal file
|
@ -0,0 +1,61 @@
|
|||
---
|
||||
title: sprinkle
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-sprinkle)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-sprinkle)
|
||||
|
||||
The **sprinkle** plugin provides [the sprinkle macro](/reference/macros/sprinkle/):
|
||||
|
||||
<Example part="plugin_sprinkle" caption="An example of the sprinkle macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.a = new Point(10, 10);
|
||||
points.b = new Point(20, 15);
|
||||
points.c = new Point(30, 10);
|
||||
points.d = new Point(40, 15);
|
||||
points.e = new Point(50, 10);
|
||||
points.f = new Point(60, 15);
|
||||
points.g = new Point(70, 10);
|
||||
points.h = new Point(80, 15);
|
||||
points.i = new Point(90, 10);
|
||||
|
||||
macro("sprinkle", {
|
||||
snippet: "button",
|
||||
on: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The sprinkle plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-sprinkle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import sprinkle from "@freesewing/plugin-sprinkle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, sprinkle);
|
||||
```
|
||||
|
||||
Now you can use [the sprinkle macro](/reference/macros/sprinkle/) in your parts.
|
54
markdown/dev/reference/plugins/sprinkle/es.md
Normal file
54
markdown/dev/reference/plugins/sprinkle/es.md
Normal file
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
title: sprinkle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-sprinkle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-sprinkle)
|
||||
|
||||
The **sprinkle** plugin provides [the sprinkle macro](/reference/macros/sprinkle/):
|
||||
|
||||
<Example part="plugin_sprinkle" caption="An example of the sprinkle macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.a = new Point(10, 10);
|
||||
points.b = new Point(20, 15);
|
||||
points.c = new Point(30, 10);
|
||||
points.d = new Point(40, 15);
|
||||
points.e = new Point(50, 10);
|
||||
points.f = new Point(60, 15);
|
||||
points.g = new Point(70, 10);
|
||||
points.h = new Point(80, 15);
|
||||
points.i = new Point(90, 10);
|
||||
|
||||
macro("sprinkle", {
|
||||
snippet: "button",
|
||||
on: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The sprinkle plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-sprinkle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import sprinkle from "@freesewing/plugin-sprinkle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, sprinkle);
|
||||
```
|
||||
|
||||
Now you can use [the sprinkle macro](/reference/macros/sprinkle/) in your parts.
|
54
markdown/dev/reference/plugins/sprinkle/fr.md
Normal file
54
markdown/dev/reference/plugins/sprinkle/fr.md
Normal file
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
title: sprinkle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-sprinkle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-sprinkle)
|
||||
|
||||
The **sprinkle** plugin provides [the sprinkle macro](/reference/macros/sprinkle/):
|
||||
|
||||
<Example part="plugin_sprinkle" caption="An example of the sprinkle macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.a = new Point(10, 10);
|
||||
points.b = new Point(20, 15);
|
||||
points.c = new Point(30, 10);
|
||||
points.d = new Point(40, 15);
|
||||
points.e = new Point(50, 10);
|
||||
points.f = new Point(60, 15);
|
||||
points.g = new Point(70, 10);
|
||||
points.h = new Point(80, 15);
|
||||
points.i = new Point(90, 10);
|
||||
|
||||
macro("sprinkle", {
|
||||
snippet: "button",
|
||||
on: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The sprinkle plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-sprinkle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import sprinkle from "@freesewing/plugin-sprinkle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, sprinkle);
|
||||
```
|
||||
|
||||
Now you can use [the sprinkle macro](/reference/macros/sprinkle/) in your parts.
|
54
markdown/dev/reference/plugins/sprinkle/nl.md
Normal file
54
markdown/dev/reference/plugins/sprinkle/nl.md
Normal file
|
@ -0,0 +1,54 @@
|
|||
---
|
||||
title: sprinkle
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-sprinkle) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-sprinkle)
|
||||
|
||||
The **sprinkle** plugin provides [the sprinkle macro](/reference/macros/sprinkle/):
|
||||
|
||||
<Example part="plugin_sprinkle" caption="An example of the sprinkle macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.a = new Point(10, 10);
|
||||
points.b = new Point(20, 15);
|
||||
points.c = new Point(30, 10);
|
||||
points.d = new Point(40, 15);
|
||||
points.e = new Point(50, 10);
|
||||
points.f = new Point(60, 15);
|
||||
points.g = new Point(70, 10);
|
||||
points.h = new Point(80, 15);
|
||||
points.i = new Point(90, 10);
|
||||
|
||||
macro("sprinkle", {
|
||||
snippet: "button",
|
||||
on: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i']
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The sprinkle plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-sprinkle
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import sprinkle from "@freesewing/plugin-sprinkle";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, sprinkle);
|
||||
```
|
||||
|
||||
Now you can use [the sprinkle macro](/reference/macros/sprinkle/) in your parts.
|
32
markdown/dev/reference/plugins/svgattr/de.md
Normal file
32
markdown/dev/reference/plugins/svgattr/de.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
title: svgattr
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-svgattr) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-svgattr)
|
||||
|
||||
The **svgattr** plugin takes an object of key-value pairs and adds them to the SVG tag on render.
|
||||
|
||||
It uses the [`preRender`](/plugins#preRender) hook to do so.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-svgattr
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { class: "freesewing draft" });
|
||||
```
|
||||
|
||||
You should pass a second argument which holds key-value pairs of the attributes you want to add to the SVG tag.
|
||||
|
||||
|
39
markdown/dev/reference/plugins/svgattr/en.md
Normal file
39
markdown/dev/reference/plugins/svgattr/en.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
---
|
||||
title: svgattr
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-svgattr)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-svgattr)
|
||||
|
||||
The **svgattr** plugin takes an object of key-value pairs and adds them to the SVG tag on render.
|
||||
|
||||
It uses the [`preRender`](/plugins#preRender) hook to do so.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-svgattr
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { class: "freesewing draft" });
|
||||
```
|
||||
|
||||
You should pass a second argument which holds key-value pairs of the attributes you want to add to the SVG tag.
|
||||
|
||||
|
32
markdown/dev/reference/plugins/svgattr/es.md
Normal file
32
markdown/dev/reference/plugins/svgattr/es.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
title: svgattr
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-svgattr) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-svgattr)
|
||||
|
||||
The **svgattr** plugin takes an object of key-value pairs and adds them to the SVG tag on render.
|
||||
|
||||
It uses the [`preRender`](/plugins#preRender) hook to do so.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-svgattr
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { class: "freesewing draft" });
|
||||
```
|
||||
|
||||
You should pass a second argument which holds key-value pairs of the attributes you want to add to the SVG tag.
|
||||
|
||||
|
32
markdown/dev/reference/plugins/svgattr/fr.md
Normal file
32
markdown/dev/reference/plugins/svgattr/fr.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
title: svgattr
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-svgattr) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-svgattr)
|
||||
|
||||
The **svgattr** plugin takes an object of key-value pairs and adds them to the SVG tag on render.
|
||||
|
||||
It uses the [`preRender`](/plugins#preRender) hook to do so.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-svgattr
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { class: "freesewing draft" });
|
||||
```
|
||||
|
||||
You should pass a second argument which holds key-value pairs of the attributes you want to add to the SVG tag.
|
||||
|
||||
|
32
markdown/dev/reference/plugins/svgattr/nl.md
Normal file
32
markdown/dev/reference/plugins/svgattr/nl.md
Normal file
|
@ -0,0 +1,32 @@
|
|||
---
|
||||
title: svgattr
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-svgattr) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-svgattr)
|
||||
|
||||
The **svgattr** plugin takes an object of key-value pairs and adds them to the SVG tag on render.
|
||||
|
||||
It uses the [`preRender`](/plugins#preRender) hook to do so.
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-svgattr
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import i18n from "@freesewing/plugin-i18n";
|
||||
import translations from "@freesewing/i18n";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(i18nPlugin, { class: "freesewing draft" });
|
||||
```
|
||||
|
||||
You should pass a second argument which holds key-value pairs of the attributes you want to add to the SVG tag.
|
||||
|
||||
|
37
markdown/dev/reference/plugins/theme/de.md
Normal file
37
markdown/dev/reference/plugins/theme/de.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
title: theme
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-theme) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-theme)
|
||||
|
||||
The **theme** plugin provides CSS styling for SVG output:
|
||||
|
||||
<Example pattern="rendertest" part="test" caption="An example of the styles provided by this plugin" design={false} />
|
||||
|
||||
It uses the [`preRender`](/plugins#prerender) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin only applies to rendered SVG output. If you use our React component to display
|
||||
patterns, you should style our component or use our [css-theme](/reference/packages/css-theme) package.
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-theme
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import theme from "@freesewing/plugin-theme";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(theme);
|
||||
```
|
||||
|
44
markdown/dev/reference/plugins/theme/en.md
Normal file
44
markdown/dev/reference/plugins/theme/en.md
Normal file
|
@ -0,0 +1,44 @@
|
|||
---
|
||||
title: theme
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-theme)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-theme)
|
||||
|
||||
The **theme** plugin provides CSS styling for SVG output:
|
||||
|
||||
<Example pattern="rendertest" part="test" caption="An example of the styles provided by this plugin" design={false} />
|
||||
|
||||
It uses the [`preRender`](/plugins#prerender) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin only applies to rendered SVG output. If you use our React component to display
|
||||
patterns, you should style our component or use our [css-theme](/reference/packages/css-theme) package.
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-theme
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import theme from "@freesewing/plugin-theme";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(theme);
|
||||
```
|
||||
|
37
markdown/dev/reference/plugins/theme/es.md
Normal file
37
markdown/dev/reference/plugins/theme/es.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
title: theme
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-theme) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-theme)
|
||||
|
||||
The **theme** plugin provides CSS styling for SVG output:
|
||||
|
||||
<Example pattern="rendertest" part="test" caption="An example of the styles provided by this plugin" design={false} />
|
||||
|
||||
It uses the [`preRender`](/plugins#prerender) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin only applies to rendered SVG output. If you use our React component to display
|
||||
patterns, you should style our component or use our [css-theme](/reference/packages/css-theme) package.
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-theme
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import theme from "@freesewing/plugin-theme";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(theme);
|
||||
```
|
||||
|
37
markdown/dev/reference/plugins/theme/fr.md
Normal file
37
markdown/dev/reference/plugins/theme/fr.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
title: theme
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-theme) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-theme)
|
||||
|
||||
The **theme** plugin provides CSS styling for SVG output:
|
||||
|
||||
<Example pattern="rendertest" part="test" caption="An example of the styles provided by this plugin" design={false} />
|
||||
|
||||
It uses the [`preRender`](/plugins#prerender) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin only applies to rendered SVG output. If you use our React component to display
|
||||
patterns, you should style our component or use our [css-theme](/reference/packages/css-theme) package.
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-theme
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import theme from "@freesewing/plugin-theme";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(theme);
|
||||
```
|
||||
|
37
markdown/dev/reference/plugins/theme/nl.md
Normal file
37
markdown/dev/reference/plugins/theme/nl.md
Normal file
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
title: theme
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-theme) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-theme)
|
||||
|
||||
The **theme** plugin provides CSS styling for SVG output:
|
||||
|
||||
<Example pattern="rendertest" part="test" caption="An example of the styles provided by this plugin" design={false} />
|
||||
|
||||
It uses the [`preRender`](/plugins#prerender) hook to do so.
|
||||
|
||||
<Note>
|
||||
|
||||
This plugin only applies to rendered SVG output. If you use our React component to display
|
||||
patterns, you should style our component or use our [css-theme](/reference/packages/css-theme) package.
|
||||
|
||||
</Note>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-theme
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import Aaron from "@freesewing/aaron";
|
||||
import theme from "@freesewing/plugin-theme";
|
||||
|
||||
const myAaron = new Aaron()
|
||||
.use(theme);
|
||||
```
|
||||
|
48
markdown/dev/reference/plugins/title/de.md
Normal file
48
markdown/dev/reference/plugins/title/de.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: title
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-title) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-title)
|
||||
|
||||
The **title** plugin provides [the title macro](/reference/macros/title/):
|
||||
|
||||
<Example part="plugin_title" caption="An example of the title macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.title = new Point(90, 45);
|
||||
|
||||
macro("title", {
|
||||
at: points.title,
|
||||
nr: 4,
|
||||
title: "sleeve"
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The title plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-title
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import title from "@freesewing/plugin-title";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, title);
|
||||
```
|
||||
|
||||
Now you can use [the title macro](/reference/macros/title/) in your parts.
|
||||
|
55
markdown/dev/reference/plugins/title/en.md
Normal file
55
markdown/dev/reference/plugins/title/en.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
---
|
||||
title: title
|
||||
---
|
||||
|
||||
[](/plugins)
|
||||
|
||||
[](https://www.npmjs.com/package/@freesewing/plugin-title)
|
||||
|
||||
[](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256)
|
||||
|
||||
[](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-title)
|
||||
|
||||
The **title** plugin provides [the title macro](/reference/macros/title/):
|
||||
|
||||
<Example part="plugin_title" caption="An example of the title macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.title = new Point(90, 45);
|
||||
|
||||
macro("title", {
|
||||
at: points.title,
|
||||
nr: 4,
|
||||
title: "sleeve"
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The title plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-title
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them
|
||||
by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import title from "@freesewing/plugin-title";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, title);
|
||||
```
|
||||
|
||||
Now you can use [the title macro](/reference/macros/title/) in your parts.
|
||||
|
48
markdown/dev/reference/plugins/title/es.md
Normal file
48
markdown/dev/reference/plugins/title/es.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: title
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-title) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-title)
|
||||
|
||||
The **title** plugin provides [the title macro](/reference/macros/title/):
|
||||
|
||||
<Example part="plugin_title" caption="An example of the title macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.title = new Point(90, 45);
|
||||
|
||||
macro("title", {
|
||||
at: points.title,
|
||||
nr: 4,
|
||||
title: "sleeve"
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The title plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-title
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import title from "@freesewing/plugin-title";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, title);
|
||||
```
|
||||
|
||||
Now you can use [the title macro](/reference/macros/title/) in your parts.
|
||||
|
48
markdown/dev/reference/plugins/title/fr.md
Normal file
48
markdown/dev/reference/plugins/title/fr.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: title
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-title) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-title)
|
||||
|
||||
The **title** plugin provides [the title macro](/reference/macros/title/):
|
||||
|
||||
<Example part="plugin_title" caption="An example of the title macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.title = new Point(90, 45);
|
||||
|
||||
macro("title", {
|
||||
at: points.title,
|
||||
nr: 4,
|
||||
title: "sleeve"
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The title plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-title
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import title from "@freesewing/plugin-title";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, title);
|
||||
```
|
||||
|
||||
Now you can use [the title macro](/reference/macros/title/) in your parts.
|
||||
|
48
markdown/dev/reference/plugins/title/nl.md
Normal file
48
markdown/dev/reference/plugins/title/nl.md
Normal file
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: title
|
||||
---
|
||||
|
||||
[](/plugins) [](https://www.npmjs.com/package/@freesewing/plugin-title) [](https://deepscan.io/dashboard#view=project&tid=2114&pid=2993&bid=23256) [](https://github.com/freesewing/freesewing/issues?q=is%3Aissue+is%3Aopen+label%3Apkg%3Aplugin-title)
|
||||
|
||||
The **title** plugin provides [the title macro](/reference/macros/title/):
|
||||
|
||||
<Example part="plugin_title" caption="An example of the title macro" design={false} />
|
||||
|
||||
```js
|
||||
let { Point, points, macro } = part.shorthand();
|
||||
|
||||
points.title = new Point(90, 45);
|
||||
|
||||
macro("title", {
|
||||
at: points.title,
|
||||
nr: 4,
|
||||
title: "sleeve"
|
||||
});
|
||||
```
|
||||
|
||||
<Tip>
|
||||
|
||||
The title plugin is part of our [plugin-bundle](/reference/plugins/bundle)
|
||||
|
||||
</Tip>
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
npm install @freesewing/plugin-title
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Like all [build-time plugins](/guides/plugins/#build-time-plugins), you load them by passing them to the [`freesewing.Design`](/reference/api#design) constructor:
|
||||
|
||||
```js
|
||||
import freesewing from "@freesewing/core";
|
||||
import title from "@freesewing/plugin-title";
|
||||
import config from "../config";
|
||||
|
||||
const Pattern = new freesewing.Design(config, title);
|
||||
```
|
||||
|
||||
Now you can use [the title macro](/reference/macros/title/) in your parts.
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue