sterepando commited on
Commit
fb12317
·
verified ·
1 Parent(s): 32f323c

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +18 -19
index.html CHANGED
@@ -3,14 +3,19 @@
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>Swaga Icon Maker PRO</title>
7
  <link rel="preconnect" href="https://fonts.googleapis.com">
8
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
  <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;700;900&display=swap" rel="stylesheet">
10
 
11
  <style>
12
- body {
 
13
  font-family: 'Nunito', sans-serif;
 
 
 
 
14
  background-color: #1e1e1e;
15
  color: white;
16
  display: flex;
@@ -23,7 +28,7 @@
23
  user-select: none;
24
  }
25
 
26
- h1 { margin-bottom: 10px; }
27
 
28
  .container {
29
  display: flex;
@@ -101,10 +106,8 @@
101
  border: none;
102
  background: #444;
103
  color: white;
104
- font-family: 'Nunito', sans-serif;
105
  font-weight: 900;
106
  font-size: 16px;
107
- box-sizing: border-box;
108
  }
109
 
110
  input[type="range"] {
@@ -205,6 +208,7 @@
205
  border-bottom: 1px solid #444;
206
  padding-bottom: 15px;
207
  margin-bottom: 15px;
 
208
  }
209
 
210
  .legal-text {
@@ -214,7 +218,7 @@
214
  max-height: 60vh;
215
  overflow-y: auto;
216
  padding-right: 10px;
217
- user-select: text; /* Чтобы можно было читать и выделять текст */
218
  text-align: justify;
219
  }
220
 
@@ -224,6 +228,7 @@
224
 
225
  .legal-text strong {
226
  color: white;
 
227
  }
228
 
229
  /* Скроллбар внутри модалки */
@@ -249,7 +254,7 @@
249
  </head>
250
  <body>
251
 
252
- <h1>MandreIcon Creator PRO</h1>
253
 
254
  <div class="container">
255
  <!-- Область превью -->
@@ -311,7 +316,7 @@
311
  <h2>Отказ от ответственности (Disclaimer)</h2>
312
  <div class="legal-text">
313
  <p><strong>1. Общие положения</strong><br>
314
- Данный веб-инструмент ("Swaga Icon Maker PRO") предоставляется на условиях «как есть» (as is). Разработчик и владельцы ресурса не несут ответственности за любые прямые или косвенные убытки, возникшие в результате использования или невозможности использования данного сервиса.</p>
315
 
316
  <p><strong>2. Пользовательский контент и Авторские права</strong><br>
317
  Весь функционал сайта выполняется исключительно на стороне клиента (в вашем браузере). Мы не храним, не проверяем и не модерируем изображения, загружаемые пользователем.
@@ -323,6 +328,9 @@
323
  <p><strong>4. Технические ограничения</strong><br>
324
  Разработчик не гарантирует бесперебойную работу сайта, отсутствие программных ошибок или полную совместимость с конкретными устройствами и браузерами.</p>
325
 
 
 
 
326
  <p>Используя данный сайт, вы выражаете свое полное согласие с вышеуказанными условиями.</p>
327
  </div>
328
  <button class="btn-primary" id="acceptBtn" style="margin-top: 20px;">Всё понятно</button>
@@ -387,7 +395,6 @@
387
 
388
  function openModal() {
389
  modalOverlay.style.display = 'flex';
390
- // Небольшая задержка для анимации opacity
391
  setTimeout(() => modalOverlay.classList.add('active'), 10);
392
  }
393
 
@@ -400,7 +407,6 @@
400
  closeModalBtn.addEventListener('click', closeModal);
401
  acceptBtn.addEventListener('click', closeModal);
402
 
403
- // Закрытие по клику вне окна
404
  modalOverlay.addEventListener('click', (e) => {
405
  if (e.target === modalOverlay) closeModal();
406
  });
@@ -433,7 +439,6 @@
433
  }
434
  });
435
 
436
- // Загрузка SVG для базы
437
  dropZoneBase.addEventListener('click', () => fileInputBase.click());
438
  dropZoneBase.addEventListener('dragover', (e) => { e.preventDefault(); dropZoneBase.classList.add('dragover'); });
439
  dropZoneBase.addEventListener('dragleave', () => dropZoneBase.classList.remove('dragover'));
@@ -453,8 +458,7 @@
453
  img.onload = () => {
454
  baseLayer.type = 'image';
455
  baseLayer.object = img;
456
- textInput.value = ''; // Очистить текст
457
- // Сброс слайдеров
458
  scaleRange.value = 100;
459
  offsetXRange.value = 0;
460
  offsetYRange.value = 0;
@@ -509,7 +513,6 @@
509
  drawAll();
510
  }
511
 
512
- // Удаление по кнопке Delete
513
  window.addEventListener('keydown', (e) => {
514
  if ((e.key === 'Delete' || e.key === 'Backspace') && selectedStickerIndex !== -1) {
515
  if (document.activeElement === textInput) return;
@@ -598,27 +601,23 @@
598
  const halfW = w / 2;
599
  const halfH = h / 2;
600
 
601
- // Рамка
602
  ctx.strokeStyle = '#FFFFFF';
603
  ctx.lineWidth = 2;
604
  ctx.setLineDash([5, 5]);
605
  ctx.strokeRect(-halfW, -halfH, w, h);
606
 
607
- // Линия к вращалке
608
  ctx.setLineDash([]);
609
  ctx.beginPath();
610
  ctx.moveTo(0, -halfH);
611
  ctx.lineTo(0, -halfH - 25);
612
  ctx.stroke();
613
 
614
- // Ручка вращения
615
  ctx.fillStyle = '#E13839';
616
  ctx.beginPath();
617
  ctx.arc(0, -halfH - 25, 8, 0, Math.PI * 2);
618
  ctx.fill();
619
  ctx.stroke();
620
 
621
- // Ручка изменения размера
622
  ctx.beginPath();
623
  ctx.arc(halfW, halfH, 8, 0, Math.PI * 2);
624
  ctx.fill();
@@ -788,7 +787,7 @@
788
  drawAll();
789
 
790
  const link = document.createElement('a');
791
- link.download = 'SWAGA_ICON_PRO.png';
792
  link.href = canvas.toDataURL('image/png');
793
  link.click();
794
 
 
3
  <head>
4
  <meta charset="UTF-8">
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Swaga Icon Maker</title>
7
  <link rel="preconnect" href="https://fonts.googleapis.com">
8
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9
  <link href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;700;900&display=swap" rel="stylesheet">
10
 
11
  <style>
12
+ /* Глобальное применение шрифта ко всем элементам */
13
+ * {
14
  font-family: 'Nunito', sans-serif;
15
+ box-sizing: border-box;
16
+ }
17
+
18
+ body {
19
  background-color: #1e1e1e;
20
  color: white;
21
  display: flex;
 
28
  user-select: none;
29
  }
30
 
31
+ h1 { margin-bottom: 10px; font-weight: 900; }
32
 
33
  .container {
34
  display: flex;
 
106
  border: none;
107
  background: #444;
108
  color: white;
 
109
  font-weight: 900;
110
  font-size: 16px;
 
111
  }
112
 
113
  input[type="range"] {
 
208
  border-bottom: 1px solid #444;
209
  padding-bottom: 15px;
210
  margin-bottom: 15px;
211
+ font-weight: 900;
212
  }
213
 
214
  .legal-text {
 
218
  max-height: 60vh;
219
  overflow-y: auto;
220
  padding-right: 10px;
221
+ user-select: text;
222
  text-align: justify;
223
  }
224
 
 
228
 
229
  .legal-text strong {
230
  color: white;
231
+ font-weight: 900;
232
  }
233
 
234
  /* Скроллбар внутри модалки */
 
254
  </head>
255
  <body>
256
 
257
+ <h1>MandreIcon Creator</h1>
258
 
259
  <div class="container">
260
  <!-- Область превью -->
 
316
  <h2>Отказ от ответственности (Disclaimer)</h2>
317
  <div class="legal-text">
318
  <p><strong>1. Общие положения</strong><br>
319
+ Данный веб-инструмент ("Swaga Icon Maker") предоставляется на условиях «как есть» (as is). Разработчик и владельцы ресурса не несут ответственности за любые прямые или косвенные убытки, возникшие в результате использования или невозможности использования данного сервиса.</p>
320
 
321
  <p><strong>2. Пользовательский контент и Авторские права</strong><br>
322
  Весь функционал сайта выполняется исключительно на стороне клиента (в вашем браузере). Мы не храним, не проверяем и не модерируем изображения, загружаемые пользователем.
 
328
  <p><strong>4. Технические ограничения</strong><br>
329
  Разработчик не гарантирует бесперебойную работу сайта, отсутствие программных ошибок или полную совместимость с конкретными устройствами и браузерами.</p>
330
 
331
+ <p><strong>5. Различия в законодательстве стран</strong><br>
332
+ Сайт доступен пользователям по всему миру. Пользователь признает, что законы, регулирующие авторское право, использование символики и распространение контента, могут существенно различаться в зависимости от юрисдикции. Пользователь самостоятельно несет ответственность за соблюдение законодательства страны своего проживания, а также законодательства стран, на территории ко��орых планируется использование созданных материалов. Разработчик не несет ответственности за нарушение пользователем локальных законов.</p>
333
+
334
  <p>Используя данный сайт, вы выражаете свое полное согласие с вышеуказанными условиями.</p>
335
  </div>
336
  <button class="btn-primary" id="acceptBtn" style="margin-top: 20px;">Всё понятно</button>
 
395
 
396
  function openModal() {
397
  modalOverlay.style.display = 'flex';
 
398
  setTimeout(() => modalOverlay.classList.add('active'), 10);
399
  }
400
 
 
407
  closeModalBtn.addEventListener('click', closeModal);
408
  acceptBtn.addEventListener('click', closeModal);
409
 
 
410
  modalOverlay.addEventListener('click', (e) => {
411
  if (e.target === modalOverlay) closeModal();
412
  });
 
439
  }
440
  });
441
 
 
442
  dropZoneBase.addEventListener('click', () => fileInputBase.click());
443
  dropZoneBase.addEventListener('dragover', (e) => { e.preventDefault(); dropZoneBase.classList.add('dragover'); });
444
  dropZoneBase.addEventListener('dragleave', () => dropZoneBase.classList.remove('dragover'));
 
458
  img.onload = () => {
459
  baseLayer.type = 'image';
460
  baseLayer.object = img;
461
+ textInput.value = '';
 
462
  scaleRange.value = 100;
463
  offsetXRange.value = 0;
464
  offsetYRange.value = 0;
 
513
  drawAll();
514
  }
515
 
 
516
  window.addEventListener('keydown', (e) => {
517
  if ((e.key === 'Delete' || e.key === 'Backspace') && selectedStickerIndex !== -1) {
518
  if (document.activeElement === textInput) return;
 
601
  const halfW = w / 2;
602
  const halfH = h / 2;
603
 
 
604
  ctx.strokeStyle = '#FFFFFF';
605
  ctx.lineWidth = 2;
606
  ctx.setLineDash([5, 5]);
607
  ctx.strokeRect(-halfW, -halfH, w, h);
608
 
 
609
  ctx.setLineDash([]);
610
  ctx.beginPath();
611
  ctx.moveTo(0, -halfH);
612
  ctx.lineTo(0, -halfH - 25);
613
  ctx.stroke();
614
 
 
615
  ctx.fillStyle = '#E13839';
616
  ctx.beginPath();
617
  ctx.arc(0, -halfH - 25, 8, 0, Math.PI * 2);
618
  ctx.fill();
619
  ctx.stroke();
620
 
 
621
  ctx.beginPath();
622
  ctx.arc(halfW, halfH, 8, 0, Math.PI * 2);
623
  ctx.fill();
 
787
  drawAll();
788
 
789
  const link = document.createElement('a');
790
+ link.download = 'SWAGA_ICON.png'; // Убрано PRO
791
  link.href = canvas.toDataURL('image/png');
792
  link.click();
793