@jjlmoya/utils-creative 1.26.0 → 1.28.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 +2 -2
- 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 +2 -2
- package/src/category/i18n/id.ts +2 -2
- package/src/category/i18n/it.ts +2 -2
- package/src/category/i18n/ja.ts +2 -2
- package/src/category/i18n/ko.ts +2 -2
- package/src/category/i18n/nl.ts +2 -2
- package/src/category/i18n/pl.ts +2 -2
- package/src/category/i18n/pt.ts +2 -2
- package/src/category/i18n/ru.ts +2 -2
- package/src/category/i18n/sv.ts +2 -2
- package/src/category/i18n/tr.ts +2 -2
- package/src/category/i18n/zh.ts +2 -2
- package/src/category/seo.astro +1 -1
- package/src/components/PreviewNavSidebar.astro +1 -1
- package/src/components/PreviewToolbar.astro +1 -1
- package/src/env.d.ts +1 -1
- package/src/pages/index.astro +1 -1
- package/src/tests/bibliography_wellformed_export.test.ts +46 -0
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/mocks/astro_mock.js +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/seo_translation_completeness.test.ts +75 -0
- package/src/tests/seo_wellformed_export.test.ts +65 -0
- package/src/tests/tool_validation.test.ts +17 -17
- package/src/tool/bead-pattern-generator/bibliography.astro +8 -8
- package/src/tool/bead-pattern-generator/i18n/de.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/en.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/es.ts +104 -104
- package/src/tool/bead-pattern-generator/i18n/fr.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/id.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/it.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/ja.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/ko.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/nl.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/pl.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/pt.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/ru.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/sv.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/tr.ts +111 -111
- package/src/tool/bead-pattern-generator/i18n/zh.ts +111 -111
- package/src/tool/bead-pattern-generator/seo.astro +19 -19
- package/src/tool/dice-roller/bibliography.astro +8 -8
- package/src/tool/dice-roller/i18n/de.ts +134 -134
- package/src/tool/dice-roller/i18n/en.ts +134 -134
- package/src/tool/dice-roller/i18n/es.ts +125 -125
- package/src/tool/dice-roller/i18n/fr.ts +134 -134
- package/src/tool/dice-roller/i18n/id.ts +134 -134
- package/src/tool/dice-roller/i18n/it.ts +134 -134
- package/src/tool/dice-roller/i18n/ja.ts +134 -134
- package/src/tool/dice-roller/i18n/ko.ts +134 -134
- package/src/tool/dice-roller/i18n/nl.ts +134 -134
- package/src/tool/dice-roller/i18n/pl.ts +134 -134
- package/src/tool/dice-roller/i18n/pt.ts +134 -134
- package/src/tool/dice-roller/i18n/ru.ts +134 -134
- package/src/tool/dice-roller/i18n/sv.ts +134 -134
- package/src/tool/dice-roller/i18n/tr.ts +134 -134
- package/src/tool/dice-roller/i18n/zh.ts +134 -134
- package/src/tool/dice-roller/seo.astro +15 -15
- package/src/tool/excuse-generator/bibliography.astro +8 -8
- package/src/tool/excuse-generator/i18n/de.ts +120 -120
- package/src/tool/excuse-generator/i18n/en.ts +120 -120
- package/src/tool/excuse-generator/i18n/es.ts +118 -118
- package/src/tool/excuse-generator/i18n/fr.ts +120 -120
- package/src/tool/excuse-generator/i18n/id.ts +120 -120
- package/src/tool/excuse-generator/i18n/it.ts +120 -120
- package/src/tool/excuse-generator/i18n/ja.ts +120 -120
- package/src/tool/excuse-generator/i18n/ko.ts +120 -120
- package/src/tool/excuse-generator/i18n/nl.ts +120 -120
- package/src/tool/excuse-generator/i18n/pl.ts +120 -120
- package/src/tool/excuse-generator/i18n/pt.ts +120 -120
- package/src/tool/excuse-generator/i18n/ru.ts +120 -120
- package/src/tool/excuse-generator/i18n/sv.ts +120 -120
- package/src/tool/excuse-generator/i18n/tr.ts +120 -120
- package/src/tool/excuse-generator/i18n/zh.ts +120 -120
- package/src/tool/excuse-generator/seo.astro +15 -15
- package/src/tool/fortune-cookie/bibliography.astro +8 -8
- package/src/tool/fortune-cookie/i18n/de.ts +124 -124
- package/src/tool/fortune-cookie/i18n/en.ts +124 -124
- package/src/tool/fortune-cookie/i18n/es.ts +125 -125
- package/src/tool/fortune-cookie/i18n/fr.ts +124 -124
- package/src/tool/fortune-cookie/i18n/id.ts +124 -124
- package/src/tool/fortune-cookie/i18n/it.ts +124 -124
- package/src/tool/fortune-cookie/i18n/ja.ts +124 -124
- package/src/tool/fortune-cookie/i18n/ko.ts +124 -124
- package/src/tool/fortune-cookie/i18n/nl.ts +124 -124
- package/src/tool/fortune-cookie/i18n/pl.ts +124 -124
- package/src/tool/fortune-cookie/i18n/pt.ts +124 -124
- package/src/tool/fortune-cookie/i18n/ru.ts +124 -124
- package/src/tool/fortune-cookie/i18n/sv.ts +124 -124
- package/src/tool/fortune-cookie/i18n/tr.ts +124 -124
- package/src/tool/fortune-cookie/i18n/zh.ts +124 -124
- package/src/tool/fortune-cookie/seo.astro +15 -15
- package/src/tool/synesthesia-painter/bibliography.astro +8 -8
- package/src/tool/synesthesia-painter/i18n/de.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/en.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/es.ts +110 -110
- package/src/tool/synesthesia-painter/i18n/fr.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/id.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/it.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/ja.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/ko.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/nl.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/pl.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/pt.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/ru.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/sv.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/tr.ts +118 -118
- package/src/tool/synesthesia-painter/i18n/zh.ts +118 -118
- package/src/tool/synesthesia-painter/seo.astro +15 -15
- package/src/tool/zalgo-generator/bibliography.astro +8 -8
- package/src/tool/zalgo-generator/i18n/de.ts +109 -109
- package/src/tool/zalgo-generator/i18n/en.ts +109 -109
- package/src/tool/zalgo-generator/i18n/es.ts +109 -109
- package/src/tool/zalgo-generator/i18n/fr.ts +109 -109
- package/src/tool/zalgo-generator/i18n/id.ts +109 -109
- package/src/tool/zalgo-generator/i18n/it.ts +109 -109
- package/src/tool/zalgo-generator/i18n/ja.ts +109 -109
- package/src/tool/zalgo-generator/i18n/ko.ts +109 -109
- package/src/tool/zalgo-generator/i18n/nl.ts +109 -109
- package/src/tool/zalgo-generator/i18n/pl.ts +109 -109
- package/src/tool/zalgo-generator/i18n/pt.ts +109 -109
- package/src/tool/zalgo-generator/i18n/ru.ts +109 -109
- package/src/tool/zalgo-generator/i18n/sv.ts +109 -109
- package/src/tool/zalgo-generator/i18n/tr.ts +109 -109
- package/src/tool/zalgo-generator/i18n/zh.ts +109 -109
- package/src/tool/zalgo-generator/seo.astro +15 -15
- package/src/types.ts +1 -1
|
@@ -1,111 +1,111 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import { bibliography } from '../bibliography';
|
|
3
|
-
import type { BeadPatternGeneratorLocaleContent } from '../index';
|
|
4
|
-
|
|
5
|
-
const slug = 'gerador-de-padroes-de-contas';
|
|
6
|
-
const title = 'Gerador de Padrões';
|
|
7
|
-
const description = 'Crie pixel art e esquemas de contas para Miyuki ou Hama a partir das suas fotos. Algoritmo de quantização de cores, modo visão de túnel e exportação ZIP.';
|
|
8
|
-
|
|
9
|
-
const faq: BeadPatternGeneratorLocaleContent['faq'] = [
|
|
10
|
-
{ question: 'O que é a quantização de cores em padrões?', answer: 'É o processo de reduzir os milhares de cores de uma foto a apenas algumas que correspondem às cores reais das contas disponíveis (ex: Miyuki ou Hama). Utilizamos algoritmos inteligentes para manter a semelhança visual com a paleta mínima possível.' },
|
|
11
|
-
{ question: 'Posso usar este padrão para ponto de cruz?', answer: 'Sim, o gerador cria um gráfico de grelha perfeitamente compatível com ponto de cruz. Basta escolher um tamanho de grelha que corresponda ao seu tecido (Aida 14, 18, etc.).' },
|
|
12
|
-
{ question: 'Qual é a diferença entre contas Miyuki e Hama?', answer: 'As contas Miyuki Delica são contas de vidro muito pequenas e precisas para joalharia. As contas Hama são de plástico e são fundidas com um ferro de engomar. A nossa ferramenta permite ajustar a proporção para que o padrão não se distorça dependendo do material utilizado.' },
|
|
13
|
-
{ question: 'Como funciona o algoritmo de dithering?', answer: 'O dithering cria a ilusão de mais cores ao misturar píxeis de diferentes cores em padrões espaçados. Ajuda os gradientes de cor a parecerem mais suaves, mesmo com uma paleta de contas limitada.' },
|
|
14
|
-
];
|
|
15
|
-
|
|
16
|
-
const howTo: BeadPatternGeneratorLocaleContent['howTo'] = [
|
|
17
|
-
{ name: 'Carregue uma imagem nítida', text: 'Selecione uma foto com bom contraste e poucos detalhes pequenos para que o padrão seja mais fácil de seguir.' },
|
|
18
|
-
{ name: 'Ajuste o tamanho da grelha', text: 'Defina quantas contas de largura e altura terá a sua peça final. Mais contas = mais detalhe, mas mais dificuldade.' },
|
|
19
|
-
{ name: 'Otimize a paleta de cores', text: 'Reduza o número de cores até que correspondam às contas que tem disponíveis no seu kit.' },
|
|
20
|
-
{ name: 'Exporte o esquema guia', text: 'Gere o padrão final com códigos de cores para usar como referência enquanto monta as suas contas na placa ou linha.' },
|
|
21
|
-
];
|
|
22
|
-
|
|
23
|
-
const faqSchema: WithContext<FAQPage> = {
|
|
24
|
-
'@context': 'https://schema.org',
|
|
25
|
-
'@type': 'FAQPage',
|
|
26
|
-
mainEntity: faq.map((item) => ({
|
|
27
|
-
'@type': 'Question',
|
|
28
|
-
name: item.question,
|
|
29
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
30
|
-
})),
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
const howToSchema: WithContext<HowTo> = {
|
|
34
|
-
'@context': 'https://schema.org',
|
|
35
|
-
'@type': 'HowTo',
|
|
36
|
-
name: title,
|
|
37
|
-
description,
|
|
38
|
-
step: howTo.map((step) => ({
|
|
39
|
-
'@type': 'HowToStep',
|
|
40
|
-
name: step.name,
|
|
41
|
-
text: step.text,
|
|
42
|
-
})),
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
const appSchema: WithContext<SoftwareApplication> = {
|
|
46
|
-
'@context': 'https://schema.org',
|
|
47
|
-
'@type': 'SoftwareApplication',
|
|
48
|
-
name: title,
|
|
49
|
-
description,
|
|
50
|
-
applicationCategory: 'UtilitiesApplication',
|
|
51
|
-
operatingSystem: 'Web',
|
|
52
|
-
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
53
|
-
inLanguage: 'pt',
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
export const content: BeadPatternGeneratorLocaleContent = {
|
|
57
|
-
slug,
|
|
58
|
-
title,
|
|
59
|
-
description,
|
|
60
|
-
faqTitle: 'Perguntas Frequentes',
|
|
61
|
-
ui: {
|
|
62
|
-
title: 'Laboratório de Padrões',
|
|
63
|
-
subtitle: 'Engenharia de cores para as suas mãos',
|
|
64
|
-
description: 'De foto a esquema de contas.',
|
|
65
|
-
gridSizeLabel: 'Tamanho (Largura)',
|
|
66
|
-
colorCountLabel: 'Cores',
|
|
67
|
-
optionsLabel: 'Opções',
|
|
68
|
-
rulersLabel: 'Réguas',
|
|
69
|
-
symbolsTooltip: 'Padrão Surpresa',
|
|
70
|
-
symbolsLabel: 'Símbolos',
|
|
71
|
-
downloadBtn: 'Descarregar',
|
|
72
|
-
uploadTitle: 'Carregue a Sua Visão',
|
|
73
|
-
uploadSubtitle: 'e deixe a magia digital acontecer',
|
|
74
|
-
paletteTitle: 'ADN Cromático',
|
|
75
|
-
reuploadBtn: 'Alterar Imagem',
|
|
76
|
-
tunnelVisionTitle: 'Visão de Túnel',
|
|
77
|
-
tunnelVisionSubtitle: 'O seu assistente de precisão fila a fila.',
|
|
78
|
-
uploadLabel: 'Carregue a sua foto',
|
|
79
|
-
pixelateBtn: 'Gerar Padrão',
|
|
80
|
-
faqTitle: 'FAQ',
|
|
81
|
-
bibliographyTitle: 'Referências'
|
|
82
|
-
},
|
|
83
|
-
seo: [
|
|
84
|
-
{ type: 'title', text: 'Alquimia Digital: Transmuta Píxeis em Arte Tangível', level: 2 },
|
|
85
|
-
{ type: 'paragraph', html: 'Bem-vindo ao <strong>Ultimate Pattern Studio</strong>. Um <em>motor de inteligência cromática</em> desenhado para arquitetos de Pixel Art, mestres de Miyuki e visionários de ponto de cruz. A sua ponte entre o digital e o feito à mão.' },
|
|
86
|
-
{ type: 'card', icon: 'mdi:grid', title: 'A Grelha Inteligente', html: 'O nosso algoritmo de <strong>subamostragem espacial</strong> não se limita a "encolher" a sua imagem. Analisa a estrutura visual para mapear grupos complexos de píxeis em células individuais, preservando a integridade das silhuetas e arestas como um ilustrador especialista.' },
|
|
87
|
-
{ type: 'card', icon: 'mdi:palette', title: 'Quantização de Cores K Means', html: 'Implementamos uma variante do algoritmo <strong>K-Means Clustering</strong> que encontra matematicamente os tons "centróides" da sua imagem. Fidelidade visual surpreendente com uma paleta minimalista de 12, 24 ou 32 cores.' },
|
|
88
|
-
{ type: 'title', text: 'Mestria em 3 Passos', level: 3 },
|
|
89
|
-
{ type: 'card', icon: 'mdi:image-search', title: 'A Seleção Perfeita', html: 'Procure <strong>alto contraste</strong>, iluminação dramática e formas icónicas. Retratos com fundos limpos, logótipos e vector art traduzem-se maravilhosamente.' },
|
|
90
|
-
{ type: 'card', icon: 'mdi:ruler', title: 'Calibração Dimensional', html: '<strong>Miyuki Delica:</strong> 50 contas ≈ 8cm · <strong>Hama Midi:</strong> 50 contas ≈ 25cm · <strong>Ponto de Cruz:</strong> 1 célula = 1 ponto.' },
|
|
91
|
-
{ type: 'card', icon: 'mdi:eye-check', title: 'Execução Zen (Modo Visão de Túnel)', html: 'O nosso sistema de <strong>Visão de Túnel</strong> atua como o seu assistente pessoal, diminuindo o ruído visual e destacando cirurgicamente apenas a fila ativa. Concentração absoluta.' },
|
|
92
|
-
{ type: 'title', text: 'Telas Infinitas', level: 3 },
|
|
93
|
-
{ type: 'list', items: [
|
|
94
|
-
'<strong>Joalharia Têxtil:</strong> Padrões intrincados para teares e pulseiras geométricas.',
|
|
95
|
-
'<strong>Ponto de Cruz:</strong> Esquemas modernos prontos a ser bordados píxel a píxel.',
|
|
96
|
-
'<strong>Mosaicos:</strong> Murais de grande escala utilizando tesselas cerâmicas simplificadas.',
|
|
97
|
-
'<strong>Retro Gaming:</strong> Assets e sprites 8-bit autênticos em segundos.',
|
|
98
|
-
]},
|
|
99
|
-
{ type: 'stats', items: [
|
|
100
|
-
{ value: '10-100', label: 'Intervalo de largura de contas', icon: 'mdi:arrow-expand-horizontal' },
|
|
101
|
-
{ value: '2-32', label: 'Ranhuras de paleta de cores', icon: 'mdi:palette-swatch' },
|
|
102
|
-
{ value: 'K-Means', label: 'Algoritmo de quantização', icon: 'mdi:function-variant' },
|
|
103
|
-
{ value: 'ZIP', label: 'Formato de exportação (padrão + guia)', icon: 'mdi:zip-box' },
|
|
104
|
-
], columns: 4 },
|
|
105
|
-
{ type: 'paragraph', html: 'Numa era de ecrãs efémeros, criar algo físico é um ato revolucionário. Esta ferramenta não procura automatizar a arte, mas sim <strong>capacitar o artesão</strong>. Damos-lhe precisão computacional para que as suas mãos possam construir legados duradouros.' },
|
|
106
|
-
],
|
|
107
|
-
faq,
|
|
108
|
-
bibliography,
|
|
109
|
-
howTo,
|
|
110
|
-
schemas: [faqSchema as any, howToSchema as any, appSchema],
|
|
111
|
-
};
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { BeadPatternGeneratorLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'gerador-de-padroes-de-contas';
|
|
6
|
+
const title = 'Gerador de Padrões';
|
|
7
|
+
const description = 'Crie pixel art e esquemas de contas para Miyuki ou Hama a partir das suas fotos. Algoritmo de quantização de cores, modo visão de túnel e exportação ZIP.';
|
|
8
|
+
|
|
9
|
+
const faq: BeadPatternGeneratorLocaleContent['faq'] = [
|
|
10
|
+
{ question: 'O que é a quantização de cores em padrões?', answer: 'É o processo de reduzir os milhares de cores de uma foto a apenas algumas que correspondem às cores reais das contas disponíveis (ex: Miyuki ou Hama). Utilizamos algoritmos inteligentes para manter a semelhança visual com a paleta mínima possível.' },
|
|
11
|
+
{ question: 'Posso usar este padrão para ponto de cruz?', answer: 'Sim, o gerador cria um gráfico de grelha perfeitamente compatível com ponto de cruz. Basta escolher um tamanho de grelha que corresponda ao seu tecido (Aida 14, 18, etc.).' },
|
|
12
|
+
{ question: 'Qual é a diferença entre contas Miyuki e Hama?', answer: 'As contas Miyuki Delica são contas de vidro muito pequenas e precisas para joalharia. As contas Hama são de plástico e são fundidas com um ferro de engomar. A nossa ferramenta permite ajustar a proporção para que o padrão não se distorça dependendo do material utilizado.' },
|
|
13
|
+
{ question: 'Como funciona o algoritmo de dithering?', answer: 'O dithering cria a ilusão de mais cores ao misturar píxeis de diferentes cores em padrões espaçados. Ajuda os gradientes de cor a parecerem mais suaves, mesmo com uma paleta de contas limitada.' },
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
const howTo: BeadPatternGeneratorLocaleContent['howTo'] = [
|
|
17
|
+
{ name: 'Carregue uma imagem nítida', text: 'Selecione uma foto com bom contraste e poucos detalhes pequenos para que o padrão seja mais fácil de seguir.' },
|
|
18
|
+
{ name: 'Ajuste o tamanho da grelha', text: 'Defina quantas contas de largura e altura terá a sua peça final. Mais contas = mais detalhe, mas mais dificuldade.' },
|
|
19
|
+
{ name: 'Otimize a paleta de cores', text: 'Reduza o número de cores até que correspondam às contas que tem disponíveis no seu kit.' },
|
|
20
|
+
{ name: 'Exporte o esquema guia', text: 'Gere o padrão final com códigos de cores para usar como referência enquanto monta as suas contas na placa ou linha.' },
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
24
|
+
'@context': 'https://schema.org',
|
|
25
|
+
'@type': 'FAQPage',
|
|
26
|
+
mainEntity: faq.map((item) => ({
|
|
27
|
+
'@type': 'Question',
|
|
28
|
+
name: item.question,
|
|
29
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
30
|
+
})),
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const howToSchema: WithContext<HowTo> = {
|
|
34
|
+
'@context': 'https://schema.org',
|
|
35
|
+
'@type': 'HowTo',
|
|
36
|
+
name: title,
|
|
37
|
+
description,
|
|
38
|
+
step: howTo.map((step) => ({
|
|
39
|
+
'@type': 'HowToStep',
|
|
40
|
+
name: step.name,
|
|
41
|
+
text: step.text,
|
|
42
|
+
})),
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
46
|
+
'@context': 'https://schema.org',
|
|
47
|
+
'@type': 'SoftwareApplication',
|
|
48
|
+
name: title,
|
|
49
|
+
description,
|
|
50
|
+
applicationCategory: 'UtilitiesApplication',
|
|
51
|
+
operatingSystem: 'Web',
|
|
52
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
53
|
+
inLanguage: 'pt',
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export const content: BeadPatternGeneratorLocaleContent = {
|
|
57
|
+
slug,
|
|
58
|
+
title,
|
|
59
|
+
description,
|
|
60
|
+
faqTitle: 'Perguntas Frequentes',
|
|
61
|
+
ui: {
|
|
62
|
+
title: 'Laboratório de Padrões',
|
|
63
|
+
subtitle: 'Engenharia de cores para as suas mãos',
|
|
64
|
+
description: 'De foto a esquema de contas.',
|
|
65
|
+
gridSizeLabel: 'Tamanho (Largura)',
|
|
66
|
+
colorCountLabel: 'Cores',
|
|
67
|
+
optionsLabel: 'Opções',
|
|
68
|
+
rulersLabel: 'Réguas',
|
|
69
|
+
symbolsTooltip: 'Padrão Surpresa',
|
|
70
|
+
symbolsLabel: 'Símbolos',
|
|
71
|
+
downloadBtn: 'Descarregar',
|
|
72
|
+
uploadTitle: 'Carregue a Sua Visão',
|
|
73
|
+
uploadSubtitle: 'e deixe a magia digital acontecer',
|
|
74
|
+
paletteTitle: 'ADN Cromático',
|
|
75
|
+
reuploadBtn: 'Alterar Imagem',
|
|
76
|
+
tunnelVisionTitle: 'Visão de Túnel',
|
|
77
|
+
tunnelVisionSubtitle: 'O seu assistente de precisão fila a fila.',
|
|
78
|
+
uploadLabel: 'Carregue a sua foto',
|
|
79
|
+
pixelateBtn: 'Gerar Padrão',
|
|
80
|
+
faqTitle: 'FAQ',
|
|
81
|
+
bibliographyTitle: 'Referências'
|
|
82
|
+
},
|
|
83
|
+
seo: [
|
|
84
|
+
{ type: 'title', text: 'Alquimia Digital: Transmuta Píxeis em Arte Tangível', level: 2 },
|
|
85
|
+
{ type: 'paragraph', html: 'Bem-vindo ao <strong>Ultimate Pattern Studio</strong>. Um <em>motor de inteligência cromática</em> desenhado para arquitetos de Pixel Art, mestres de Miyuki e visionários de ponto de cruz. A sua ponte entre o digital e o feito à mão.' },
|
|
86
|
+
{ type: 'card', icon: 'mdi:grid', title: 'A Grelha Inteligente', html: 'O nosso algoritmo de <strong>subamostragem espacial</strong> não se limita a "encolher" a sua imagem. Analisa a estrutura visual para mapear grupos complexos de píxeis em células individuais, preservando a integridade das silhuetas e arestas como um ilustrador especialista.' },
|
|
87
|
+
{ type: 'card', icon: 'mdi:palette', title: 'Quantização de Cores K Means', html: 'Implementamos uma variante do algoritmo <strong>K-Means Clustering</strong> que encontra matematicamente os tons "centróides" da sua imagem. Fidelidade visual surpreendente com uma paleta minimalista de 12, 24 ou 32 cores.' },
|
|
88
|
+
{ type: 'title', text: 'Mestria em 3 Passos', level: 3 },
|
|
89
|
+
{ type: 'card', icon: 'mdi:image-search', title: 'A Seleção Perfeita', html: 'Procure <strong>alto contraste</strong>, iluminação dramática e formas icónicas. Retratos com fundos limpos, logótipos e vector art traduzem-se maravilhosamente.' },
|
|
90
|
+
{ type: 'card', icon: 'mdi:ruler', title: 'Calibração Dimensional', html: '<strong>Miyuki Delica:</strong> 50 contas ≈ 8cm · <strong>Hama Midi:</strong> 50 contas ≈ 25cm · <strong>Ponto de Cruz:</strong> 1 célula = 1 ponto.' },
|
|
91
|
+
{ type: 'card', icon: 'mdi:eye-check', title: 'Execução Zen (Modo Visão de Túnel)', html: 'O nosso sistema de <strong>Visão de Túnel</strong> atua como o seu assistente pessoal, diminuindo o ruído visual e destacando cirurgicamente apenas a fila ativa. Concentração absoluta.' },
|
|
92
|
+
{ type: 'title', text: 'Telas Infinitas', level: 3 },
|
|
93
|
+
{ type: 'list', items: [
|
|
94
|
+
'<strong>Joalharia Têxtil:</strong> Padrões intrincados para teares e pulseiras geométricas.',
|
|
95
|
+
'<strong>Ponto de Cruz:</strong> Esquemas modernos prontos a ser bordados píxel a píxel.',
|
|
96
|
+
'<strong>Mosaicos:</strong> Murais de grande escala utilizando tesselas cerâmicas simplificadas.',
|
|
97
|
+
'<strong>Retro Gaming:</strong> Assets e sprites 8-bit autênticos em segundos.',
|
|
98
|
+
]},
|
|
99
|
+
{ type: 'stats', items: [
|
|
100
|
+
{ value: '10-100', label: 'Intervalo de largura de contas', icon: 'mdi:arrow-expand-horizontal' },
|
|
101
|
+
{ value: '2-32', label: 'Ranhuras de paleta de cores', icon: 'mdi:palette-swatch' },
|
|
102
|
+
{ value: 'K-Means', label: 'Algoritmo de quantização', icon: 'mdi:function-variant' },
|
|
103
|
+
{ value: 'ZIP', label: 'Formato de exportação (padrão + guia)', icon: 'mdi:zip-box' },
|
|
104
|
+
], columns: 4 },
|
|
105
|
+
{ type: 'paragraph', html: 'Numa era de ecrãs efémeros, criar algo físico é um ato revolucionário. Esta ferramenta não procura automatizar a arte, mas sim <strong>capacitar o artesão</strong>. Damos-lhe precisão computacional para que as suas mãos possam construir legados duradouros.' },
|
|
106
|
+
],
|
|
107
|
+
faq,
|
|
108
|
+
bibliography,
|
|
109
|
+
howTo,
|
|
110
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema],
|
|
111
|
+
};
|
|
@@ -1,111 +1,111 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import { bibliography } from '../bibliography';
|
|
3
|
-
import type { BeadPatternGeneratorLocaleContent } from '../index';
|
|
4
|
-
|
|
5
|
-
const slug = 'generator-skhem';
|
|
6
|
-
const title = 'Генератор схем';
|
|
7
|
-
const description = 'Создавайте пиксель-арт и схемы для бисероплетения (Miyuki) или термомозаики (Hama) из ваших фотографий. Алгоритм квантования цветов, режим туннельного зрения и экспорт в ZIP.';
|
|
8
|
-
|
|
9
|
-
const faq: BeadPatternGeneratorLocaleContent['faq'] = [
|
|
10
|
-
{ question: 'Что такое квантование цветов в схемах?', answer: 'Это процесс уменьшения тысяч цветов в фотографии до нескольких, соответствующих реальным доступным цветам бисера (например, Miyuki или Hama). Мы используем интеллектуальные алгоритмы для сохранения визуального сходства при минимальной палитре.' },
|
|
11
|
-
{ question: 'Можно ли использовать эту схему для вышивки крестом?', answer: 'Да, генератор создает сетчатую диаграмму, которая идеально подходит для вышивки крестиком. Вам просто нужно выбрать размер сетки, соответствующий вашей ткани (Aida 14, 18 и т. д.).' },
|
|
12
|
-
{ question: 'В чем разница между бисером Miyuki и Hama?', answer: 'Бисер Miyuki Delica - это очень мелкий и точный стеклянный бисер для ювелирных изделий. Бисер Hama сделан из пластика и сплавляется утюгом. Наш инструмент позволяет настраивать соотношение сторон, чтобы схема не искажалась в зависимости от используемого материала.' },
|
|
13
|
-
{ question: 'Как работает алгоритм дизеринга?', answer: 'Дизеринг создает иллюзию большего количества цветов путем смешивания пикселей разных цветов в разреженных паттернах. Это помогает цветовым градиентам выглядеть более плавными даже при ограниченной палитре бисера.' },
|
|
14
|
-
];
|
|
15
|
-
|
|
16
|
-
const howTo: BeadPatternGeneratorLocaleContent['howTo'] = [
|
|
17
|
-
{ name: 'Загрузите четкое изображение', text: 'Выберите фотографию с хорошим контрастом и минимумом мелких деталей, чтобы схеме было легче следовать.' },
|
|
18
|
-
{ name: 'Настройте размер сетки', text: 'Определите ширину и высоту вашего будущего изделия в количестве бисерин. Больше бисера = больше деталей, но выше сложность.' },
|
|
19
|
-
{ name: 'Оптимизируйте цветовую палитру', text: 'Уменьшайте количество цветов, пока они не совпадут с бисером, имеющимся в вашем наборе.' },
|
|
20
|
-
{ name: 'Экспортируйте схему-руководство', text: 'Сгенерируйте финальную схему с цветовыми кодами для использования в качестве эталона при сборке изделия на основе или нитке.' },
|
|
21
|
-
];
|
|
22
|
-
|
|
23
|
-
const faqSchema: WithContext<FAQPage> = {
|
|
24
|
-
'@context': 'https://schema.org',
|
|
25
|
-
'@type': 'FAQPage',
|
|
26
|
-
mainEntity: faq.map((item) => ({
|
|
27
|
-
'@type': 'Question',
|
|
28
|
-
name: item.question,
|
|
29
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
30
|
-
})),
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
const howToSchema: WithContext<HowTo> = {
|
|
34
|
-
'@context': 'https://schema.org',
|
|
35
|
-
'@type': 'HowTo',
|
|
36
|
-
name: title,
|
|
37
|
-
description,
|
|
38
|
-
step: howTo.map((step) => ({
|
|
39
|
-
'@type': 'HowToStep',
|
|
40
|
-
name: step.name,
|
|
41
|
-
text: step.text,
|
|
42
|
-
})),
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
const appSchema: WithContext<SoftwareApplication> = {
|
|
46
|
-
'@context': 'https://schema.org',
|
|
47
|
-
'@type': 'SoftwareApplication',
|
|
48
|
-
name: title,
|
|
49
|
-
description,
|
|
50
|
-
applicationCategory: 'UtilitiesApplication',
|
|
51
|
-
operatingSystem: 'Web',
|
|
52
|
-
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
53
|
-
inLanguage: 'ru',
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
export const content: BeadPatternGeneratorLocaleContent = {
|
|
57
|
-
slug,
|
|
58
|
-
title,
|
|
59
|
-
description,
|
|
60
|
-
faqTitle: 'Часто задаваемые вопросы',
|
|
61
|
-
ui: {
|
|
62
|
-
title: 'Лаборатория узоров',
|
|
63
|
-
subtitle: 'Инженерия цвета для ваших рук',
|
|
64
|
-
description: 'От фото к схеме бисероплетения.',
|
|
65
|
-
gridSizeLabel: 'Размер (Ширина)',
|
|
66
|
-
colorCountLabel: 'Цвета',
|
|
67
|
-
optionsLabel: 'Опции',
|
|
68
|
-
rulersLabel: 'Линейки',
|
|
69
|
-
symbolsTooltip: 'Узор-сюрприз',
|
|
70
|
-
symbolsLabel: 'Символы',
|
|
71
|
-
downloadBtn: 'Скачать',
|
|
72
|
-
uploadTitle: 'Загрузите ваше видение',
|
|
73
|
-
uploadSubtitle: 'и позвольте цифровой магии случиться',
|
|
74
|
-
paletteTitle: 'Хроматическая ДНК',
|
|
75
|
-
reuploadBtn: 'Изменить фото',
|
|
76
|
-
tunnelVisionTitle: 'Туннельное зрение',
|
|
77
|
-
tunnelVisionSubtitle: 'Ваш помощник для точной сборки ряд за рядом.',
|
|
78
|
-
uploadLabel: 'Загрузите ваше фото',
|
|
79
|
-
pixelateBtn: 'Создать схему',
|
|
80
|
-
faqTitle: 'FAQ',
|
|
81
|
-
bibliographyTitle: 'Ссылки'
|
|
82
|
-
},
|
|
83
|
-
seo: [
|
|
84
|
-
{ type: 'title', text: 'Цифровая алхимия: превращение пикселей в осязаемое искусство', level: 2 },
|
|
85
|
-
{ type: 'paragraph', html: 'Добро пожаловать в <strong>Ultimate Pattern Studio</strong>. Это <em>движок хроматического интеллекта</em>, созданный для архитекторов пиксель-арта, мастеров Miyuki и визионеров вышивки крестом. Ваш мост между цифровым и рукотворным миром.' },
|
|
86
|
-
{ type: 'card', icon: 'mdi:grid', title: 'Интеллектуальная сетка', html: 'Наш алгоритм <strong>пространственного субсамплинга</strong> не просто \"сжимает\" ваше изображение. Он анализирует визуальную структуру, чтобы отобразить сложные группы пикселей на отдельные ячейки, сохраняя целостность силуэтов и краев, как это сделал бы опытный иллюстратор.' },
|
|
87
|
-
{ type: 'card', icon: 'mdi:palette', title: 'Квантование цвета методом K средних', html: 'Мы используем вариант алгоритма <strong>кластеризации K-средних</strong>, который математически находит \"центроидные\" тона вашего изображения. Потрясающая визуальная точность при минималистичной палитре из 12, 24 или 32 цветов.' },
|
|
88
|
-
{ type: 'title', text: 'Мастерство в 3 шага', level: 3 },
|
|
89
|
-
{ type: 'card', icon: 'mdi:image-search', title: 'Идеальный выбор', html: 'Ищите <strong>высокий контраст</strong>, драматическое освещение и знаковые формы. Портреты с чистым фоном, логотипы и векторная графика переводятся великолепно.' },
|
|
90
|
-
{ type: 'card', icon: 'mdi:ruler', title: 'Размерная калибровка', html: '<strong>Miyuki Delica:</strong> 50 бисерин ≈ 8 см · <strong>Hama Midi:</strong> 50 бисерин ≈ 25 см · <strong>Вышивка крестом:</strong> 1 ячейка = 1 стежок.' },
|
|
91
|
-
{ type: 'card', icon: 'mdi:eye-check', title: 'Дзен исполнение (режим туннельного зрения)', html: 'Наша система <strong>туннельного зрения</strong> выступает в роли вашего личного помощника, приглушая визуальный шум и хирургически выделяя только активный ряд. Абсолютная концентрация.' },
|
|
92
|
-
{ type: 'title', text: 'Бесконечные холсты', level: 3 },
|
|
93
|
-
{ type: 'list', items: [
|
|
94
|
-
'<strong>Текстильные украшения:</strong> сложные узоры для ткацких станков и геометрические браслеты.',
|
|
95
|
-
'<strong>Вышивка крестом:</strong> современные схемы, готовые к вышиванию пиксель за пикселем.',
|
|
96
|
-
'<strong>Мозаика:</strong> крупномасштабные панно с использованием упрощенной керамической плитки.',
|
|
97
|
-
'<strong>Ретро-гейминг:</strong> аутентичные 8-битные ассеты и спрайты за считанные секунды.',
|
|
98
|
-
]},
|
|
99
|
-
{ type: 'stats', items: [
|
|
100
|
-
{ value: '10-100', label: 'Диапазон ширины в бисере', icon: 'mdi:arrow-expand-horizontal' },
|
|
101
|
-
{ value: '2-32', label: 'Слоты цветовой палитры', icon: 'mdi:palette-swatch' },
|
|
102
|
-
{ value: 'K-Means', label: 'Алгоритм квантования', icon: 'mdi:function-variant' },
|
|
103
|
-
{ value: 'ZIP', label: 'Формат экспорта (схема + гид)', icon: 'mdi:zip-box' },
|
|
104
|
-
], columns: 4 },
|
|
105
|
-
{ type: 'paragraph', html: 'В эпоху ускользающих экранов создание чего-то физического - это революционный акт. Этот инструмент не стремится автоматизировать искусство, он призван <strong>расширить возможности мастера</strong>. Мы даем вам вычислительную точность, чтобы ваши руки могли создавать долговечное наследие.' },
|
|
106
|
-
],
|
|
107
|
-
faq,
|
|
108
|
-
bibliography,
|
|
109
|
-
howTo,
|
|
110
|
-
schemas: [faqSchema as any, howToSchema as any, appSchema],
|
|
111
|
-
};
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { BeadPatternGeneratorLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'generator-skhem';
|
|
6
|
+
const title = 'Генератор схем';
|
|
7
|
+
const description = 'Создавайте пиксель-арт и схемы для бисероплетения (Miyuki) или термомозаики (Hama) из ваших фотографий. Алгоритм квантования цветов, режим туннельного зрения и экспорт в ZIP.';
|
|
8
|
+
|
|
9
|
+
const faq: BeadPatternGeneratorLocaleContent['faq'] = [
|
|
10
|
+
{ question: 'Что такое квантование цветов в схемах?', answer: 'Это процесс уменьшения тысяч цветов в фотографии до нескольких, соответствующих реальным доступным цветам бисера (например, Miyuki или Hama). Мы используем интеллектуальные алгоритмы для сохранения визуального сходства при минимальной палитре.' },
|
|
11
|
+
{ question: 'Можно ли использовать эту схему для вышивки крестом?', answer: 'Да, генератор создает сетчатую диаграмму, которая идеально подходит для вышивки крестиком. Вам просто нужно выбрать размер сетки, соответствующий вашей ткани (Aida 14, 18 и т. д.).' },
|
|
12
|
+
{ question: 'В чем разница между бисером Miyuki и Hama?', answer: 'Бисер Miyuki Delica - это очень мелкий и точный стеклянный бисер для ювелирных изделий. Бисер Hama сделан из пластика и сплавляется утюгом. Наш инструмент позволяет настраивать соотношение сторон, чтобы схема не искажалась в зависимости от используемого материала.' },
|
|
13
|
+
{ question: 'Как работает алгоритм дизеринга?', answer: 'Дизеринг создает иллюзию большего количества цветов путем смешивания пикселей разных цветов в разреженных паттернах. Это помогает цветовым градиентам выглядеть более плавными даже при ограниченной палитре бисера.' },
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
const howTo: BeadPatternGeneratorLocaleContent['howTo'] = [
|
|
17
|
+
{ name: 'Загрузите четкое изображение', text: 'Выберите фотографию с хорошим контрастом и минимумом мелких деталей, чтобы схеме было легче следовать.' },
|
|
18
|
+
{ name: 'Настройте размер сетки', text: 'Определите ширину и высоту вашего будущего изделия в количестве бисерин. Больше бисера = больше деталей, но выше сложность.' },
|
|
19
|
+
{ name: 'Оптимизируйте цветовую палитру', text: 'Уменьшайте количество цветов, пока они не совпадут с бисером, имеющимся в вашем наборе.' },
|
|
20
|
+
{ name: 'Экспортируйте схему-руководство', text: 'Сгенерируйте финальную схему с цветовыми кодами для использования в качестве эталона при сборке изделия на основе или нитке.' },
|
|
21
|
+
];
|
|
22
|
+
|
|
23
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
24
|
+
'@context': 'https://schema.org',
|
|
25
|
+
'@type': 'FAQPage',
|
|
26
|
+
mainEntity: faq.map((item) => ({
|
|
27
|
+
'@type': 'Question',
|
|
28
|
+
name: item.question,
|
|
29
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
30
|
+
})),
|
|
31
|
+
};
|
|
32
|
+
|
|
33
|
+
const howToSchema: WithContext<HowTo> = {
|
|
34
|
+
'@context': 'https://schema.org',
|
|
35
|
+
'@type': 'HowTo',
|
|
36
|
+
name: title,
|
|
37
|
+
description,
|
|
38
|
+
step: howTo.map((step) => ({
|
|
39
|
+
'@type': 'HowToStep',
|
|
40
|
+
name: step.name,
|
|
41
|
+
text: step.text,
|
|
42
|
+
})),
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
46
|
+
'@context': 'https://schema.org',
|
|
47
|
+
'@type': 'SoftwareApplication',
|
|
48
|
+
name: title,
|
|
49
|
+
description,
|
|
50
|
+
applicationCategory: 'UtilitiesApplication',
|
|
51
|
+
operatingSystem: 'Web',
|
|
52
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
53
|
+
inLanguage: 'ru',
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
export const content: BeadPatternGeneratorLocaleContent = {
|
|
57
|
+
slug,
|
|
58
|
+
title,
|
|
59
|
+
description,
|
|
60
|
+
faqTitle: 'Часто задаваемые вопросы',
|
|
61
|
+
ui: {
|
|
62
|
+
title: 'Лаборатория узоров',
|
|
63
|
+
subtitle: 'Инженерия цвета для ваших рук',
|
|
64
|
+
description: 'От фото к схеме бисероплетения.',
|
|
65
|
+
gridSizeLabel: 'Размер (Ширина)',
|
|
66
|
+
colorCountLabel: 'Цвета',
|
|
67
|
+
optionsLabel: 'Опции',
|
|
68
|
+
rulersLabel: 'Линейки',
|
|
69
|
+
symbolsTooltip: 'Узор-сюрприз',
|
|
70
|
+
symbolsLabel: 'Символы',
|
|
71
|
+
downloadBtn: 'Скачать',
|
|
72
|
+
uploadTitle: 'Загрузите ваше видение',
|
|
73
|
+
uploadSubtitle: 'и позвольте цифровой магии случиться',
|
|
74
|
+
paletteTitle: 'Хроматическая ДНК',
|
|
75
|
+
reuploadBtn: 'Изменить фото',
|
|
76
|
+
tunnelVisionTitle: 'Туннельное зрение',
|
|
77
|
+
tunnelVisionSubtitle: 'Ваш помощник для точной сборки ряд за рядом.',
|
|
78
|
+
uploadLabel: 'Загрузите ваше фото',
|
|
79
|
+
pixelateBtn: 'Создать схему',
|
|
80
|
+
faqTitle: 'FAQ',
|
|
81
|
+
bibliographyTitle: 'Ссылки'
|
|
82
|
+
},
|
|
83
|
+
seo: [
|
|
84
|
+
{ type: 'title', text: 'Цифровая алхимия: превращение пикселей в осязаемое искусство', level: 2 },
|
|
85
|
+
{ type: 'paragraph', html: 'Добро пожаловать в <strong>Ultimate Pattern Studio</strong>. Это <em>движок хроматического интеллекта</em>, созданный для архитекторов пиксель-арта, мастеров Miyuki и визионеров вышивки крестом. Ваш мост между цифровым и рукотворным миром.' },
|
|
86
|
+
{ type: 'card', icon: 'mdi:grid', title: 'Интеллектуальная сетка', html: 'Наш алгоритм <strong>пространственного субсамплинга</strong> не просто \"сжимает\" ваше изображение. Он анализирует визуальную структуру, чтобы отобразить сложные группы пикселей на отдельные ячейки, сохраняя целостность силуэтов и краев, как это сделал бы опытный иллюстратор.' },
|
|
87
|
+
{ type: 'card', icon: 'mdi:palette', title: 'Квантование цвета методом K средних', html: 'Мы используем вариант алгоритма <strong>кластеризации K-средних</strong>, который математически находит \"центроидные\" тона вашего изображения. Потрясающая визуальная точность при минималистичной палитре из 12, 24 или 32 цветов.' },
|
|
88
|
+
{ type: 'title', text: 'Мастерство в 3 шага', level: 3 },
|
|
89
|
+
{ type: 'card', icon: 'mdi:image-search', title: 'Идеальный выбор', html: 'Ищите <strong>высокий контраст</strong>, драматическое освещение и знаковые формы. Портреты с чистым фоном, логотипы и векторная графика переводятся великолепно.' },
|
|
90
|
+
{ type: 'card', icon: 'mdi:ruler', title: 'Размерная калибровка', html: '<strong>Miyuki Delica:</strong> 50 бисерин ≈ 8 см · <strong>Hama Midi:</strong> 50 бисерин ≈ 25 см · <strong>Вышивка крестом:</strong> 1 ячейка = 1 стежок.' },
|
|
91
|
+
{ type: 'card', icon: 'mdi:eye-check', title: 'Дзен исполнение (режим туннельного зрения)', html: 'Наша система <strong>туннельного зрения</strong> выступает в роли вашего личного помощника, приглушая визуальный шум и хирургически выделяя только активный ряд. Абсолютная концентрация.' },
|
|
92
|
+
{ type: 'title', text: 'Бесконечные холсты', level: 3 },
|
|
93
|
+
{ type: 'list', items: [
|
|
94
|
+
'<strong>Текстильные украшения:</strong> сложные узоры для ткацких станков и геометрические браслеты.',
|
|
95
|
+
'<strong>Вышивка крестом:</strong> современные схемы, готовые к вышиванию пиксель за пикселем.',
|
|
96
|
+
'<strong>Мозаика:</strong> крупномасштабные панно с использованием упрощенной керамической плитки.',
|
|
97
|
+
'<strong>Ретро-гейминг:</strong> аутентичные 8-битные ассеты и спрайты за считанные секунды.',
|
|
98
|
+
]},
|
|
99
|
+
{ type: 'stats', items: [
|
|
100
|
+
{ value: '10-100', label: 'Диапазон ширины в бисере', icon: 'mdi:arrow-expand-horizontal' },
|
|
101
|
+
{ value: '2-32', label: 'Слоты цветовой палитры', icon: 'mdi:palette-swatch' },
|
|
102
|
+
{ value: 'K-Means', label: 'Алгоритм квантования', icon: 'mdi:function-variant' },
|
|
103
|
+
{ value: 'ZIP', label: 'Формат экспорта (схема + гид)', icon: 'mdi:zip-box' },
|
|
104
|
+
], columns: 4 },
|
|
105
|
+
{ type: 'paragraph', html: 'В эпоху ускользающих экранов создание чего-то физического - это революционный акт. Этот инструмент не стремится автоматизировать искусство, он призван <strong>расширить возможности мастера</strong>. Мы даем вам вычислительную точность, чтобы ваши руки могли создавать долговечное наследие.' },
|
|
106
|
+
],
|
|
107
|
+
faq,
|
|
108
|
+
bibliography,
|
|
109
|
+
howTo,
|
|
110
|
+
schemas: [faqSchema as any, howToSchema as any, appSchema],
|
|
111
|
+
};
|