@jjlmoya/utils-textiles 1.14.0 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/category/i18n/de.ts +2 -2
- package/src/category/i18n/en.ts +2 -2
- package/src/category/i18n/es.ts +2 -2
- package/src/category/i18n/fr.ts +9 -9
- package/src/category/i18n/id.ts +2 -2
- package/src/category/i18n/it.ts +2 -2
- package/src/category/i18n/nl.ts +2 -2
- package/src/category/i18n/pl.ts +3 -3
- package/src/category/i18n/pt.ts +2 -2
- package/src/category/i18n/ru.ts +5 -5
- package/src/category/i18n/sv.ts +3 -3
- package/src/category/i18n/zh.ts +2 -2
- package/src/layouts/PreviewLayout.astro +1 -0
- package/src/tests/diacritics_density.test.ts +118 -0
- package/src/tests/inverted_punctuation.test.ts +84 -0
- package/src/tests/no_en_dash.test.ts +70 -0
- package/src/tests/script_density.test.ts +94 -0
- package/src/tool/burnTest/i18n/de.ts +3 -3
- package/src/tool/burnTest/i18n/fr.ts +3 -3
- package/src/tool/burnTest/i18n/pl.ts +3 -3
- package/src/tool/burnTest/i18n/ru.ts +6 -6
- package/src/tool/burnTest/i18n/zh.ts +3 -3
- package/src/tool/clothingSizeConverter/i18n/en.ts +1 -1
- package/src/tool/clothingSizeConverter/i18n/fr.ts +6 -6
- package/src/tool/clothingSizeConverter/i18n/pl.ts +1 -1
- package/src/tool/clothingSizeConverter/i18n/ru.ts +2 -2
- package/src/tool/clothingSizeConverter/i18n/zh.ts +1 -1
- package/src/tool/fabricProjectCalculator/component.astro +2 -3
- package/src/tool/fabricProjectCalculator/fabric-project-calculator.css +63 -1
- package/src/tool/fabricProjectCalculator/i18n/ru.ts +2 -2
- package/src/tool/fabricProjectCalculator/i18n/zh.ts +1 -1
- package/src/tool/fabricTruth/i18n/de.ts +1 -1
- package/src/tool/fabricTruth/i18n/en.ts +1 -1
- package/src/tool/fabricTruth/i18n/es.ts +1 -1
- package/src/tool/fabricTruth/i18n/fr.ts +13 -13
- package/src/tool/fabricTruth/i18n/id.ts +1 -1
- package/src/tool/fabricTruth/i18n/it.ts +1 -1
- package/src/tool/fabricTruth/i18n/ja.ts +1 -1
- package/src/tool/fabricTruth/i18n/ko.ts +1 -1
- package/src/tool/fabricTruth/i18n/nl.ts +1 -1
- package/src/tool/fabricTruth/i18n/pl.ts +1 -1
- package/src/tool/fabricTruth/i18n/pt.ts +1 -1
- package/src/tool/fabricTruth/i18n/ru.ts +11 -11
- package/src/tool/fabricTruth/i18n/sv.ts +1 -1
- package/src/tool/fabricTruth/i18n/tr.ts +1 -1
- package/src/tool/fabricTruth/i18n/zh.ts +9 -9
- package/src/tool/fiberPrep/fiber-preparation-natural-dyeing.css +130 -11
- package/src/tool/fiberPrep/i18n/fr.ts +4 -4
- package/src/tool/fiberPrep/i18n/ru.ts +3 -3
- package/src/tool/fiberPrep/i18n/zh.ts +2 -2
- package/src/tool/knittingGauge/i18n/ru.ts +6 -6
- package/src/tool/knittingGauge/i18n/zh.ts +1 -1
- package/src/tool/laundryGuide/i18n/de.ts +1 -1
- package/src/tool/laundryGuide/i18n/en.ts +1 -1
- package/src/tool/laundryGuide/i18n/es.ts +1 -1
- package/src/tool/laundryGuide/i18n/fr.ts +12 -12
- package/src/tool/laundryGuide/i18n/id.ts +1 -1
- package/src/tool/laundryGuide/i18n/it.ts +1 -1
- package/src/tool/laundryGuide/i18n/nl.ts +1 -1
- package/src/tool/laundryGuide/i18n/pl.ts +2 -2
- package/src/tool/laundryGuide/i18n/pt.ts +1 -1
- package/src/tool/laundryGuide/i18n/ru.ts +6 -6
- package/src/tool/laundryGuide/i18n/sv.ts +1 -1
- package/src/tool/laundryGuide/i18n/zh.ts +2 -2
- package/src/tool/needleConverter/i18n/fr.ts +5 -5
- package/src/tool/needleConverter/i18n/ru.ts +4 -4
- package/src/tool/sewingPatternScaler/i18n/fr.ts +2 -2
- package/src/tool/sewingPatternScaler/i18n/pl.ts +2 -2
- package/src/tool/sewingPatternScaler/i18n/ru.ts +7 -7
- package/src/tool/sewingPatternScaler/i18n/zh.ts +3 -3
- package/src/tool/shoeSizeConverter/i18n/fr.ts +1 -1
- package/src/tool/shoeSizeConverter/i18n/ru.ts +4 -4
- package/src/tool/shoeSizeConverter/i18n/zh.ts +3 -3
- package/src/tool/stainChemistry/bibliography.ts +2 -2
- package/src/tool/stainChemistry/i18n/de.ts +3 -3
- package/src/tool/stainChemistry/i18n/en.ts +3 -3
- package/src/tool/stainChemistry/i18n/es.ts +3 -3
- package/src/tool/stainChemistry/i18n/fr.ts +6 -6
- package/src/tool/stainChemistry/i18n/id.ts +3 -3
- package/src/tool/stainChemistry/i18n/it.ts +3 -3
- package/src/tool/stainChemistry/i18n/ja.ts +3 -3
- package/src/tool/stainChemistry/i18n/ko.ts +3 -3
- package/src/tool/stainChemistry/i18n/nl.ts +3 -3
- package/src/tool/stainChemistry/i18n/pl.ts +3 -3
- package/src/tool/stainChemistry/i18n/pt.ts +3 -3
- package/src/tool/stainChemistry/i18n/ru.ts +7 -7
- package/src/tool/stainChemistry/i18n/sv.ts +3 -3
- package/src/tool/stainChemistry/i18n/tr.ts +3 -3
- package/src/tool/stainChemistry/i18n/zh.ts +7 -7
- package/src/tool/yarnCalculator/i18n/fr.ts +4 -4
- package/src/tool/yarnCalculator/i18n/ru.ts +7 -7
- package/src/tool/yarnCalculator/i18n/zh.ts +5 -5
|
@@ -6,7 +6,7 @@ import type { StainChemistryUI } from '../ui';
|
|
|
6
6
|
const slug = 'protocole-chimique-taches';
|
|
7
7
|
const title = 'Protocole Chimique des Taches Textiles';
|
|
8
8
|
const description =
|
|
9
|
-
'Protocoles scientifiques pour éliminer les taches selon le type de fibre et la nature chimique de la tache. Percarbonate, enzymes, solvants
|
|
9
|
+
'Protocoles scientifiques pour éliminer les taches selon le type de fibre et la nature chimique de la tache. Percarbonate, enzymes, solvants: la bonne méthode pour chaque cas.';
|
|
10
10
|
|
|
11
11
|
const faqData = [
|
|
12
12
|
{
|
|
@@ -157,7 +157,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
157
157
|
protocols: {
|
|
158
158
|
natural: {
|
|
159
159
|
agentId: 'percarbonate',
|
|
160
|
-
temperature: '40
|
|
160
|
+
temperature: '40-60°C',
|
|
161
161
|
method: 'Trempage prolongé',
|
|
162
162
|
},
|
|
163
163
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pâte directe' },
|
|
@@ -242,19 +242,19 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
242
242
|
},
|
|
243
243
|
{
|
|
244
244
|
type: 'card',
|
|
245
|
-
title: '01
|
|
245
|
+
title: '01: Oxydation Contrôlée',
|
|
246
246
|
icon: 'mdi:atom',
|
|
247
247
|
html: 'Le <strong>percarbonate de sodium</strong> libère de l\'oxygène actif qui brise les doubles liaisons des chromophores (les molécules responsables de la couleur de la tache), les rendant incolores et solubles dans l\'eau. C\'est la méthode la plus efficace pour les taches organiques.',
|
|
248
248
|
},
|
|
249
249
|
{
|
|
250
250
|
type: 'card',
|
|
251
|
-
title: '02
|
|
251
|
+
title: '02: Solubilisation par Solvants',
|
|
252
252
|
icon: 'mdi:flask-outline',
|
|
253
253
|
html: 'Les taches comme l\'huile ou l\'encre ne sont pas solubles dans l\'eau. Des solvants tels que l\'<strong>alcool isopropylique</strong> ou l\'<strong>acétone</strong> réduisent la tension de surface et attirent les molécules apolaires de la tache, leur permettant d\'être transférées sur un support.',
|
|
254
254
|
},
|
|
255
255
|
{
|
|
256
256
|
type: 'title',
|
|
257
|
-
text: 'La Souveraineté des Fibres
|
|
257
|
+
text: 'La Souveraineté des Fibres: Pourquoi le Type de Fibre Compte',
|
|
258
258
|
level: 2,
|
|
259
259
|
},
|
|
260
260
|
{
|
|
@@ -272,7 +272,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
272
272
|
},
|
|
273
273
|
{
|
|
274
274
|
type: 'tip',
|
|
275
|
-
title: 'Protocole d\'Urgence
|
|
275
|
+
title: 'Protocole d\'Urgence: Vin Rouge',
|
|
276
276
|
html: '<strong>A. Absorption passive :</strong> Tamponner avec du papier absorbant, ne jamais frotter pour éviter l\'expansion mécanique.<br><strong>B. Neutralisation osmotique :</strong> Couvrir de sel fin pour attirer le liquide vers l\'extérieur du noyau de la fibre.<br><strong>C. Action chimique :</strong> Appliquer une pâte de percarbonate et d\'eau à 40°C si la fibre supporte la chaleur.',
|
|
277
277
|
},
|
|
278
278
|
{
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Anggur Merah / Buah',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Perendaman lama' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta langsung' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Oksidasi Terkontrol',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>Natrium perkarbonat</strong> melepaskan oksigen aktif yang memecah ikatan rangkap kromofor (molekul yang bertanggung jawab atas warna noda), menjadikannya tidak berwarna dan larut dalam air. Ini adalah metode paling efektif untuk noda organik.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Kelarutan oleh Pelarut',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Noda seperti minyak atau tinta tidak larut dalam air. Pelarut seperti <strong>isopropil alkohol</strong> atau <strong>aseton</strong> mengurangi tegangan permukaan dan menarik molekul non-polar noda, memungkinkannya berpindah ke media pendukung.',
|
|
244
244
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Vino Rosso / Frutta',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Ammollo prolungato' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta diretta' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Ossidazione Controllata',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: 'Il <strong>percarbonato di sodio</strong> rilascia ossigeno attivo che rompe i doppi legami dei cromofori (le molecole responsabili del colore della macchia), rendendoli incolori e solubili in acqua. È il metodo più efficace per le macchie organiche.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Solubilizzazione tramite Solventi',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: "Macchie come l'olio o l'inchiostro non sono solubili in acqua. Solventi come l'<strong>alcol isopropilico</strong> o l'<strong>acetone</strong> riducono la tensione superficiale e attirano le molecole non polari della macchia, permettendo loro di trasferirsi su un mezzo di supporto.",
|
|
244
244
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: '赤ワイン / 果物',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: '長時間のつけ置き' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: '直接ペーストを塗布' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: 制御された酸化作用',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>過炭酸ナトリウム</strong>は活性酸素を放出し、色素分子(シミの色の原因)の二重結合を切断することで、シミを無色化し水に溶けやすくします。有機系のシミに最も効果的な方法です。',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: 溶剤による溶解作用',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'オイルやインクのようなシミは水に溶けません。<strong>イソプロピルアルコール</strong>や<strong>アセトン</strong>のような溶剤は、表面張力を下げてシミの非極性分子を引きつけ、支持媒体へと移動させることができます。',
|
|
244
244
|
},
|
|
@@ -150,7 +150,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
150
150
|
id: 'wine',
|
|
151
151
|
name: '레드 와인 / 과일',
|
|
152
152
|
protocols: {
|
|
153
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
153
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: '장시간 담그기' },
|
|
154
154
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: '페이스트 직접 도포' },
|
|
155
155
|
delicate: {
|
|
156
156
|
agentId: 'vinegar',
|
|
@@ -229,13 +229,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
229
229
|
},
|
|
230
230
|
{
|
|
231
231
|
type: 'card',
|
|
232
|
-
title: '01
|
|
232
|
+
title: '01: 조절된 산화 작용',
|
|
233
233
|
icon: 'mdi:atom',
|
|
234
234
|
html: '<strong>과탄산나트륨</strong>은 활성산소를 방출하여 색소 분자(얼룩의 색 원인)의 이중 결합을 끊어 얼룩을 무색화하고 물에 용해되기 쉬운 상태로 만듭니다. 유기물 얼룩에 가장 효과적인 방법입니다.',
|
|
235
235
|
},
|
|
236
236
|
{
|
|
237
237
|
type: 'card',
|
|
238
|
-
title: '02
|
|
238
|
+
title: '02: 용제에 의한 용해',
|
|
239
239
|
icon: 'mdi:flask-outline',
|
|
240
240
|
html: '기름이나 잉크 같은 얼룩은 물에 녹지 않습니다. <strong>이소프로필 알코올</strong>이나 <strong>아세톤</strong> 같은 용제는 표면 장력을 낮추고 얼룩의 비극성 분자를 끌어당겨 천 등으로 옮겨갈 수 있게 합니다.',
|
|
241
241
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Rode Wijn / Fruit',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Langdurig weken' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Rechtstreekse pasta' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Gecontroleerde Oxidatie',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>Natriumpercarbonaat</strong> geeft actieve zuurstof af die de dubbele bindingen van chromoforen (de moleculen die verantwoordelijk zijn voor de kleur van de vlek) breekt, waardoor ze kleurloos en in water oplosbaar worden. Het is de meest effectieve methode voor organische vlekken.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Oplosbaar maken door Oplosmiddelen',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Vlekken zoals olie of inkt zijn niet oplosbaar in water. Oplosmiddelen zoals <strong>isopropylalcohol</strong> of <strong>aceton</strong> verlagen de oppervlaktespanning en trekken de niet-polaire moleculen van de vlek aan, waardoor ze kunnen worden overgedragen op een drager.',
|
|
244
244
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Czerwone Wino / Owoce',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Długotrwałe moczenie' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Bezpośrednia pasta' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Kontrolowane Utlenianie',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>Nadwęglan sodu</strong> uwalnia aktywny tlen, który rozrywa podwójne wiązania chromoforów (cząsteczek odpowiedzialnych za kolor plamy), czyniąc je bezbarwnymi i rozpuszczalnymi w wodzie. Jest to najskuteczniejsza metoda na plamy organiczne.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Solubilizacja przez Rozpuszczalniki',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Plamy takie jak olej czy atrament nie rozpuszczają się w wodzie. Rozpuszczalniki, takie jak <strong>alkohol izopropylowy</strong> lub <strong>aceton</strong>, zmniejszają napięcie powierzchniowe i przyciągają niepolarne cząsteczki plamy, pozwalając im przenieść się na podłoże pomocnicze.',
|
|
244
244
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Vinho Tinto / Fruta',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Demolha prolongada' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta directa' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Oxidação Controlada',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: 'O <strong>percarbonato de sódio</strong> liberta oxigénio activo que quebra as duplas ligações dos cromóforos (as moléculas responsáveis pela cor da mancha), tornando-as incolores e solúveis em água. É o método mais eficaz para manchas orgânicas.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Solubilização por Solventes',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Manchas como o óleo ou a tinta não são solúveis em água. Solventes como o <strong>álcool isopropílico</strong> ou a <strong>acetona</strong> reduzem a tensão superficial e atraem as moléculas não polares da mancha, permitindo que se transfiram para um meio de suporte.',
|
|
244
244
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Красное вино / Фрукты',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Длительное замачивание' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Нанесение пасты' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Контролируемое окисление',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>Перкарбонат натрия</strong> выделяет активный кислород, который разрывает двойные связи хромофоров (молекул, отвечающих за цвет пятна), делая их бесцветными и водорастворимыми. Это самый эффективный метод для органических пятен.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Растворение растворителями',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Пятна от масла или чернил не растворяются в воде. Растворители, такие как <strong>изопропиловый спирт</strong> или <strong>ацетон</strong>, снижают поверхностное натяжение и притягивают неполярные молекулы пятна, позволяя им переноситься на подложку.',
|
|
244
244
|
},
|
|
@@ -249,7 +249,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
249
249
|
},
|
|
250
250
|
{
|
|
251
251
|
type: 'paragraph',
|
|
252
|
-
html: 'Не все волокна
|
|
252
|
+
html: 'Не все волокна "едятся" одинаково. <strong>Шелк и шерсть</strong> - это белки (фиброин и кератин). Если вы без контроля примените энзимное средство, предназначенное для "поедания белков" (пятна крови или яйца), моющее средство начнет разрушать само волокно, уничтожая блеск и структуру ткани.',
|
|
253
253
|
},
|
|
254
254
|
{
|
|
255
255
|
type: 'title',
|
|
@@ -258,7 +258,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
258
258
|
},
|
|
259
259
|
{
|
|
260
260
|
type: 'paragraph',
|
|
261
|
-
html: 'Одна из самых распространенных ошибок
|
|
261
|
+
html: 'Одна из самых распространенных ошибок - использование горячей воды для "размягчения" пятна крови. Химически тепло вызывает <strong>коагуляцию белков</strong> пятна, навсегда закрепляя их в пористой структуре волокна. Белковые пятна всегда следует обрабатывать холодной водой.',
|
|
262
262
|
},
|
|
263
263
|
{
|
|
264
264
|
type: 'tip',
|
|
@@ -272,11 +272,11 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
272
272
|
},
|
|
273
273
|
{
|
|
274
274
|
type: 'paragraph',
|
|
275
|
-
html: '<strong>Ацетон</strong>
|
|
275
|
+
html: '<strong>Ацетон</strong> - исключительный растворитель для лаков для ногтей или клея, но он губителен для <strong>ацетата</strong>. Будучи волокнами, производными от целлюлозы, но химически обработанными, ацетон буквально растворяет ткань.',
|
|
276
276
|
},
|
|
277
277
|
{
|
|
278
278
|
type: 'paragraph',
|
|
279
|
-
html: '<strong>Изопропиловый спирт</strong> более стабилен, но на окрашенной синтетике он может вымывать сам пигмент. Мы всегда рекомендуем проводить
|
|
279
|
+
html: '<strong>Изопропиловый спирт</strong> более стабилен, но на окрашенной синтетике он может вымывать сам пигмент. Мы всегда рекомендуем проводить "тест на шве" на незаметном участке перед основной обработкой.',
|
|
280
280
|
},
|
|
281
281
|
],
|
|
282
282
|
faq: faqData,
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Rödvin / Frukt',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Långvarig blötläggning' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Direkt pasta' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Kontrollerad Oxidation',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>Natriumperkarbonat</strong> frisläpper aktivt syre som bryter dubbelbindningarna i kromoforena (molekylerna som ansvarar för fläckens färg), vilket gör dem färglösa och vattenlösliga. Det är den mest effektiva metoden för organiska fläckar.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Solubilisering med Lösningsmedel',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Fläckar som olja eller bläck är inte vattenlösliga. Lösningsmedel som <strong>isopropylalkohol</strong> eller <strong>aceton</strong> minskar ytspänningen och attraherar fläckens opolära molekyler, vilket gör att de kan överföras till ett bärarmaterial.',
|
|
244
244
|
},
|
|
@@ -153,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
153
153
|
id: 'wine',
|
|
154
154
|
name: 'Kırmızı Şarap / Meyve',
|
|
155
155
|
protocols: {
|
|
156
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
156
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Uzun süreli bekletme' },
|
|
157
157
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Doğrudan macun' },
|
|
158
158
|
delicate: {
|
|
159
159
|
agentId: 'vinegar',
|
|
@@ -232,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
232
232
|
},
|
|
233
233
|
{
|
|
234
234
|
type: 'card',
|
|
235
|
-
title: '01
|
|
235
|
+
title: '01: Kontrollü Oksidasyon',
|
|
236
236
|
icon: 'mdi:atom',
|
|
237
237
|
html: '<strong>Sodyum perkarbonat</strong>, kromoforların (lekenin renginden sorumlu moleküller) çift bağlarını kopararak onları renksiz ve suda çözünür hale getiren aktif oksijen salar. Organik lekeler için en etkili yöntemdir.',
|
|
238
238
|
},
|
|
239
239
|
{
|
|
240
240
|
type: 'card',
|
|
241
|
-
title: '02
|
|
241
|
+
title: '02: Çözücülerle Çözünürlük',
|
|
242
242
|
icon: 'mdi:flask-outline',
|
|
243
243
|
html: 'Yağ veya mürekkep gibi lekeler suda çözünmezler. <strong>İzopropil alkol</strong> veya <strong>aseton</strong> gibi çözücüler yüzey gerilimini azaltır ve lekenin polar olmayan moleküllerini çekerek bir destek ortamına aktarılmalarını sağlar.',
|
|
244
244
|
},
|
|
@@ -44,7 +44,7 @@ const howToData = [
|
|
|
44
44
|
},
|
|
45
45
|
{
|
|
46
46
|
name: '执行指定方案',
|
|
47
|
-
text: '
|
|
47
|
+
text: '按照提供的溶剂类型、温度和方法说明进行操作。请特别留意"关键警示"部分。',
|
|
48
48
|
},
|
|
49
49
|
];
|
|
50
50
|
|
|
@@ -148,7 +148,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
148
148
|
id: 'wine',
|
|
149
149
|
name: '红酒 / 水果',
|
|
150
150
|
protocols: {
|
|
151
|
-
natural: { agentId: 'percarbonate', temperature: '40
|
|
151
|
+
natural: { agentId: 'percarbonate', temperature: '40-60°C', method: '长时间浸泡' },
|
|
152
152
|
synthetic: { agentId: 'percarbonate', temperature: '40°C', method: '直接涂抹糊状物' },
|
|
153
153
|
delicate: {
|
|
154
154
|
agentId: 'vinegar',
|
|
@@ -227,13 +227,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
227
227
|
},
|
|
228
228
|
{
|
|
229
229
|
type: 'card',
|
|
230
|
-
title: '01
|
|
230
|
+
title: '01: 受控氧化',
|
|
231
231
|
icon: 'mdi:atom',
|
|
232
232
|
html: '<strong>过碳酸钠</strong>释放出的活性氧能断裂发色团(污渍颜色的来源分子)的双键,使其变得无色并可溶于水。这是处理有机污渍最有效的方法。',
|
|
233
233
|
},
|
|
234
234
|
{
|
|
235
235
|
type: 'card',
|
|
236
|
-
title: '02
|
|
236
|
+
title: '02: 溶剂增溶',
|
|
237
237
|
icon: 'mdi:flask-outline',
|
|
238
238
|
html: '油渍或墨水等污渍不溶于水。<strong>异丙基酒精</strong>或<strong>丙酮</strong>等溶剂能降低表面张力并吸引污渍中的非极性分子,使它们能够转移至承载媒介上。',
|
|
239
239
|
},
|
|
@@ -244,7 +244,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
244
244
|
},
|
|
245
245
|
{
|
|
246
246
|
type: 'paragraph',
|
|
247
|
-
html: '
|
|
247
|
+
html: '并非所有纤维都能经受同样的"侵蚀"。<strong>真丝和羊毛</strong>属于蛋白质(丝蛋白和角蛋白)。如果你盲目使用专为"吞噬蛋白质"(用于处理血渍或蛋渍)设计的酶促洗涤剂,它会开始降解纤维本身,从而破坏织物的光泽和结构。',
|
|
248
248
|
},
|
|
249
249
|
{
|
|
250
250
|
type: 'title',
|
|
@@ -253,7 +253,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
253
253
|
},
|
|
254
254
|
{
|
|
255
255
|
type: 'paragraph',
|
|
256
|
-
html: '
|
|
256
|
+
html: '最常见的错误之一是使用热水来"软化"血渍。从化学角度看,热量会导致污渍中的<strong>蛋白质凝固</strong>,从而使其永久固定在纤维的多孔结构中。蛋白质类污渍必须始终使用冷水处理。',
|
|
257
257
|
},
|
|
258
258
|
{
|
|
259
259
|
type: 'tip',
|
|
@@ -271,7 +271,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
|
|
|
271
271
|
},
|
|
272
272
|
{
|
|
273
273
|
type: 'paragraph',
|
|
274
|
-
html: '<strong>异丙基酒精</strong
|
|
274
|
+
html: '<strong>异丙基酒精</strong>相对更稳定,但在染色的合成纤维上可能会带走色素本身。我们建议在正式处理前,始终先在"内锁边"等隐蔽区域进行测试。',
|
|
275
275
|
},
|
|
276
276
|
],
|
|
277
277
|
faq: faqData,
|
|
@@ -4,7 +4,7 @@ import { bibliography } from '../bibliography';
|
|
|
4
4
|
import type { YarnCalculatorUI } from '../ui';
|
|
5
5
|
|
|
6
6
|
const slug = 'calculateur-laine';
|
|
7
|
-
const title = 'Calculateur de Laine
|
|
7
|
+
const title = 'Calculateur de Laine: Combien de mètres et de pelotes ?';
|
|
8
8
|
const description =
|
|
9
9
|
'Calculez avec précision la quantité de laine nécessaire pour vos projets de tricot et crochet en fonction du patron et de la taille.';
|
|
10
10
|
|
|
@@ -94,12 +94,12 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
94
94
|
seo: [
|
|
95
95
|
{
|
|
96
96
|
type: 'title',
|
|
97
|
-
text: 'Guide de Consommation de Laine
|
|
97
|
+
text: 'Guide de Consommation de Laine: Comment Calculer Mètres et Pelotes',
|
|
98
98
|
level: 2,
|
|
99
99
|
},
|
|
100
100
|
{
|
|
101
101
|
type: 'paragraph',
|
|
102
|
-
html: 'Maîtrisez la logistique du tricot et évitez de manquer de fil grâce à notre calculateur technique de précision pour le tricot et le crochet. L\'une des plus grandes craintes des tricoteurs est le <strong>"Yarn Chicken"</strong
|
|
102
|
+
html: 'Maîtrisez la logistique du tricot et évitez de manquer de fil grâce à notre calculateur technique de précision pour le tricot et le crochet. L\'une des plus grandes craintes des tricoteurs est le <strong>"Yarn Chicken"</strong>: ce moment critique en fin de projet où le fil semble vouloir se terminer avant de fermer les dernières mailles. Ce calculateur a été développé pour vous offrir des estimations basées sur les standards industriels de métrage et de grammage.',
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
105
|
type: 'stats',
|
|
@@ -117,7 +117,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
type: 'paragraph',
|
|
120
|
-
html: 'Beaucoup de débutants font l\'erreur d\'acheter de la laine en se basant exclusivement sur le poids (ex. "6 pelotes de 100g"). Cependant, le poids est une unité de masse, pas de longueur. Deux laines de 100g peuvent avoir des longueurs radicalement différentes
|
|
120
|
+
html: 'Beaucoup de débutants font l\'erreur d\'acheter de la laine en se basant exclusivement sur le poids (ex. "6 pelotes de 100g"). Cependant, le poids est une unité de masse, pas de longueur. Deux laines de 100g peuvent avoir des longueurs radicalement différentes: une laine <strong>Bulky</strong> peut n\'avoir que 80 mètres, tandis qu\'une <strong>Fingering / Lace</strong> peut dépasser 450 mètres pour le même poids.',
|
|
121
121
|
},
|
|
122
122
|
{
|
|
123
123
|
type: 'paragraph',
|
|
@@ -12,12 +12,12 @@ const faqData = [
|
|
|
12
12
|
{
|
|
13
13
|
question: 'Почему при вязании крючком расходуется больше пряжи, чем при вязании спицами?',
|
|
14
14
|
answer:
|
|
15
|
-
'Вязание крючком основано на создании узлов и перекрывающихся петель, что создает более плотное и толстое полотно на квадратный сантиметр. В среднем проект крючком потребляет на 25
|
|
15
|
+
'Вязание крючком основано на создании узлов и перекрывающихся петель, что создает более плотное и толстое полотно на квадратный сантиметр. В среднем проект крючком потребляет на 25-35% больше пряжи, чем тот же проект, связанный спицами (лицевой гладью).',
|
|
16
16
|
},
|
|
17
17
|
{
|
|
18
18
|
question: 'Что произойдет, если я куплю пряжу из разных партий красителя (Dye Lot)?',
|
|
19
19
|
answer:
|
|
20
|
-
'Даже если цвет в магазине кажется идентичным, минимальные химические вариации во время окрашивания могут создать видимые
|
|
20
|
+
'Даже если цвет в магазине кажется идентичным, минимальные химические вариации во время окрашивания могут создать видимые "полосы" на готовом изделии. Настоятельно рекомендуется покупать всю пряжу сразу, проверяя, чтобы номер партии был одинаковым.',
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
question: 'Как плотность вязания (gauge) влияет на конечный расход?',
|
|
@@ -99,7 +99,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
99
99
|
},
|
|
100
100
|
{
|
|
101
101
|
type: 'paragraph',
|
|
102
|
-
html: 'Освойте логистику вязания и забудьте о страхе нехватки нитей с нашим высокоточным техническим калькулятором. Главный кошмар любого вязальщика
|
|
102
|
+
html: 'Освойте логистику вязания и забудьте о страхе нехватки нитей с нашим высокоточным техническим калькулятором. Главный кошмар любого вязальщика - <strong>"Yarn Chicken"</strong>: тот критический момент в конце проекта, когда кажется, что нить закончится раньше, чем вы закроете последние петли. Этот калькулятор разработан для предоставления оценок на основе отраслевых стандартов метража и веса.',
|
|
103
103
|
},
|
|
104
104
|
{
|
|
105
105
|
type: 'stats',
|
|
@@ -117,7 +117,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
117
117
|
},
|
|
118
118
|
{
|
|
119
119
|
type: 'paragraph',
|
|
120
|
-
html: 'Многие новички совершают ошибку, покупая пряжу исключительно по весу (например,
|
|
120
|
+
html: 'Многие новички совершают ошибку, покупая пряжу исключительно по весу (например, "6 мотков по 100 г"). Однако вес - это единица массы, а не длины. Две пряжи весом 100 г могут иметь радикально разную длину: пряжа типа <strong>Bulky</strong> может иметь длину всего 80 метров, в то время как <strong>Fingering / Lace</strong> может превышать 450 метров при том же весе.',
|
|
121
121
|
},
|
|
122
122
|
{
|
|
123
123
|
type: 'paragraph',
|
|
@@ -147,7 +147,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
147
147
|
{
|
|
148
148
|
type: 'tip',
|
|
149
149
|
title: 'Фактор плотности (Gauge)',
|
|
150
|
-
html: '<p>Помните: если вы вяжете слабо, ваши петли будут крупнее и потребуют больше нити, чем при плотном вязании. Наш калькулятор применяет запас прочности, но если вы знаете, что ваша плотность экстремально низкая, рассмотрите возможность добавления еще 5
|
|
150
|
+
html: '<p>Помните: если вы вяжете слабо, ваши петли будут крупнее и потребуют больше нити, чем при плотном вязании. Наш калькулятор применяет запас прочности, но если вы знаете, что ваша плотность экстремально низкая, рассмотрите возможность добавления еще 5-10% к результатам, чтобы избежать сюрпризов.</p>',
|
|
151
151
|
},
|
|
152
152
|
{
|
|
153
153
|
type: 'title',
|
|
@@ -169,7 +169,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
169
169
|
},
|
|
170
170
|
{
|
|
171
171
|
title: 'Косы / Араны',
|
|
172
|
-
description: 'Перекрещивание волокон
|
|
172
|
+
description: 'Перекрещивание волокон "укорачивает" деталь, увеличивая расход примерно на 25%.',
|
|
173
173
|
icon: 'mdi:texture-box',
|
|
174
174
|
points: ['Требуется больше метража', 'Более плотное и тяжелое полотно'],
|
|
175
175
|
pointIcon: 'mdi:alert-circle-outline',
|
|
@@ -233,7 +233,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
233
233
|
type: 'list',
|
|
234
234
|
items: [
|
|
235
235
|
'<strong>Проверьте метраж вашего реального мотка:</strong> Не каждый 100-граммовый моток имеет длину 200 м. Проверьте это на этикетке для корректировки расчета.',
|
|
236
|
-
'<strong>Добавьте метраж на детали:</strong> Если вы планируете добавить бахрому к шарфу или помпоны к шапке, добавьте 50
|
|
236
|
+
'<strong>Добавьте метраж на детали:</strong> Если вы планируете добавить бахрому к шарфу или помпоны к шапке, добавьте 50-80 метров к итогу.',
|
|
237
237
|
'<strong>Образец плотности:</strong> Свяжите квадрат 10x10 см. Взвесьте его на точных весах. Если он весит 20 г, а ваш плед 100x100 (100 квадратов), вам понадобится ровно 2 кг пряжи.',
|
|
238
238
|
'<strong>Всегда покупайте пряжу из одной партии:</strong> Если расчет показывает 7 мотков, купите 8 на случай, если придется использовать разные партии, или для швов.',
|
|
239
239
|
],
|
|
@@ -16,7 +16,7 @@ const faqData = [
|
|
|
16
16
|
{
|
|
17
17
|
question: '如果我购买不同缸号(Dye Lot)的线会怎样?',
|
|
18
18
|
answer:
|
|
19
|
-
'
|
|
19
|
+
'即使在商店里看起来颜色完全一致,染色过程中极细微的化学差异也可能导致成品编织在一起时出现可见的"色差带"。强烈建议务必一次性买齐所需毛线,并确保批次代码(缸号)完全相同。',
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
22
|
question: '织片密度(gauge)如何影响最终耗线量?',
|
|
@@ -98,7 +98,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
98
98
|
},
|
|
99
99
|
{
|
|
100
100
|
type: 'paragraph',
|
|
101
|
-
html: '
|
|
101
|
+
html: '掌握编织物流管理,使用我们的棒针与钩针高精度技术计算器,避免"断线"尴尬。每一位编织者最大的恐惧莫过于 <strong>"绝望的最后几米(Yarn Chicken)"</strong>:在项目的末尾,似乎线就要在收掉最后几针前用完了。本计算器旨在基于工业标准的长度和克重数据为你提供准确的预估。',
|
|
102
102
|
},
|
|
103
103
|
{
|
|
104
104
|
type: 'stats',
|
|
@@ -111,12 +111,12 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
111
111
|
},
|
|
112
112
|
{
|
|
113
113
|
type: 'title',
|
|
114
|
-
text: '
|
|
114
|
+
text: '为什么线团的"重量"具有欺骗性?',
|
|
115
115
|
level: 3,
|
|
116
116
|
},
|
|
117
117
|
{
|
|
118
118
|
type: 'paragraph',
|
|
119
|
-
html: '
|
|
119
|
+
html: '许多初学者在购买毛线时会犯专注于重量(例如"买 6 团 100 克的线")的错误。然而,重量是质量单位,而非长度单位。两款同样重 100 克的线,其长度可能截然不同:一款 <strong>Bulky(粗线)</strong> 类型可能只有 80 米,而同样重量的一款 <strong>Fingering / Lace(蕾丝线)</strong> 长度可能超过 450 米。',
|
|
120
120
|
},
|
|
121
121
|
{
|
|
122
122
|
type: 'paragraph',
|
|
@@ -168,7 +168,7 @@ export const content: ToolLocaleContent<YarnCalculatorUI> = {
|
|
|
168
168
|
},
|
|
169
169
|
{
|
|
170
170
|
title: '麻花 / 纹理',
|
|
171
|
-
description: '
|
|
171
|
+
description: '纤维的交叉会使织片"缩短",使消耗量增加约 25%。',
|
|
172
172
|
icon: 'mdi:texture-box',
|
|
173
173
|
points: ['需要更多米数', '织物更紧密、更沉重'],
|
|
174
174
|
pointIcon: 'mdi:alert-circle-outline',
|