From 70c01ccb85bf7e9cc4b31566ae623fe885e59d5e Mon Sep 17 00:00:00 2001 From: Anatolii Hrynchuk Date: Sun, 1 Nov 2026 22:25:16 +0200 Subject: [PATCH] Document v0.6.24 shapes, rotation and canvas zoom in English and Ukrainian --- Home-uk.md | 14 ++++++++++---- Home.md | 14 ++++++++++---- Screenshots-uk.md | 27 +++++++++++++++++++++++++-- Screenshots.md | 27 +++++++++++++++++++++++++-- Usage-uk.md | 4 ++++ Usage.md | 4 ++++ images/screenshot-editor-0624.png | Bin 0 -> 31237 bytes 7 files changed, 78 insertions(+), 12 deletions(-) create mode 100644 images/screenshot-editor-0624.png diff --git a/Home-uk.md b/Home-uk.md index 8b5f7cf..4a8d740 100644 --- a/Home-uk.md +++ b/Home-uk.md @@ -37,7 +37,7 @@ KSwitcher — нативне C++/Win32-переписування Windows-фун ## Можливості на скриншотах -Скриншоти містять лише демонстраційні дані. Налаштування, словники, буфер та OCR знято у v0.6.14; приклади сніпетів оновлено для v0.6.18; приклад редактора знімків оновлено для v0.6.23. +Скриншоти містять лише демонстраційні дані. Налаштування, словники, буфер та OCR знято у v0.6.14; приклади сніпетів оновлено для v0.6.18; приклад редактора знімків оновлено для v0.6.24. @@ -135,7 +135,7 @@ KSwitcher — нативне C++/Win32-переписування Windows-фун Натисніть **Win+Shift+S**, захопіть ділянку й відкрийте сповіщення з мініатюрою для редагування. Додайте стрілки, номери, підсвітку, текст або фігури й скопіюйте результат або збережіть PNG через **Ctrl+S**. Початковий інструмент — **Олівець (F)**; у прикладі показано кнопку Save та демонстраційні позначки. -![Скріншоти](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0623.png) +![Скріншоти](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0624.png) [Докладніше](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/Screenshots-uk) @@ -155,13 +155,19 @@ KSwitcher — нативне C++/Win32-переписування Windows-фун - [Гарячі клавіші, буфер обміну та шаблони](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/Usage-uk) - [Оновлення, дані та поширені запитання](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/FAQ-uk) -Документацію та огляд усіх 11 можливостей актуалізовано для **v0.6.23**. Інтерфейс застосунку англійською; назви кнопок у посібнику наведені як у програмі. +Документацію та огляд усіх 11 можливостей актуалізовано для **v0.6.24**. Інтерфейс застосунку англійською; назви кнопок у посібнику наведені як у програмі. [![Підтримати KSwitcher: пригостіть розробника кавою](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/donate-uk.png)](https://send.monobank.ua/jar/88h2TddKfS) [Відкрити банку Monobank](https://send.monobank.ua/jar/88h2TddKfS) · Дякую, що підтримуєте KSwitcher! -## Останні зміни — v0.6.23 (2026-11-01) +## Останні зміни — v0.6.24 (2026-11-01) + +Згладжування олівця та розпізнавання прямокутників, кіл, еліпсів, трикутників і трапецій; інструменти Triangle (G) та Trapezoid (B); поворот фігур і незалежні вершини трикутника. Масштабування через Ctrl++ / Ctrl+- або Ctrl+колесо, скидання через Ctrl+0, переміщення середньою кнопкою. Ctrl+Z повертає початковий штрих олівця. + +[Посібник редактора](Screenshots-uk) · [Завантажити v0.6.24](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/releases/download/release-v0.6.24/KSwitcher-win-x64.zip) · [SHA256SUMS.txt](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/releases/download/release-v0.6.24/SHA256SUMS.txt) + +## Попередній реліз — v0.6.23 (2026-11-01) Зберігайте знімки з позначками у PNG у повній роздільній здатності через **Save… / Ctrl+S**; **Ctrl+Shift+S** дозволяє вибрати інший файл. Вбудований словник тепер містить `поточні` для `Gjnjxys` + пробіл → `Поточні`. Chrome та Edge використовують виділення з паузами; повідомлений браузерний випадок ще потребує перевірки наживо. diff --git a/Home.md b/Home.md index e4248a6..b76d6a0 100644 --- a/Home.md +++ b/Home.md @@ -36,7 +36,7 @@ To correct text manually, select it and press **Next layout**. With **Convert re ## Features in screenshots -Screenshots contain demonstration data only. Settings, dictionaries, clipboard and OCR were captured in v0.6.14; snippet examples are updated for v0.6.18; the annotation-editor example is updated for v0.6.23. +Screenshots contain demonstration data only. Settings, dictionaries, clipboard and OCR were captured in v0.6.14; snippet examples are updated for v0.6.18; the annotation-editor example is updated for v0.6.24. @@ -134,7 +134,7 @@ Click a shortcut field, press the desired combination, then **Save**. **Backspac Press **Win+Shift+S**, capture a region, and open the thumbnail notification to annotate it. Add arrows, numbers, highlights, text or shapes, then copy the result or save PNG with **Ctrl+S**. The editor initially selects **Pencil (F)**; this example shows the Save button and demonstration annotations. -![Screenshots](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0623.png) +![Screenshots](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0624.png) [Guide](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/Screenshots) @@ -154,13 +154,19 @@ Enable **Start with Windows**. For elevated target applications, optionally enab - [Keyboard shortcuts, clipboard and snippets](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/Usage) - [Updates, data and frequently asked questions](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/FAQ) -Documentation is current through **v0.6.23**. The application interface is in English. This wiki is available in English and Ukrainian; use the language links at the top of each page to open its translation. +Documentation is current through **v0.6.24**. The application interface is in English. This wiki is available in English and Ukrainian; use the language links at the top of each page to open its translation. [![Support KSwitcher development — buy the developer a coffee](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/donate-en.png)](https://send.monobank.ua/jar/88h2TddKfS) [Donate via Monobank](https://send.monobank.ua/jar/88h2TddKfS) · Thank you for supporting KSwitcher! -## Recent changes — v0.6.23 (2026-11-01) +## Recent changes — v0.6.24 (2026-11-01) + +Pencil smoothing and recognition of rectangles, circles, ellipses, triangles and trapezoids; Triangle (G) and Trapezoid (B) tools; shape rotation and independent triangle vertices. Zoom with Ctrl++ / Ctrl+- or Ctrl+wheel, reset with Ctrl+0, pan with the middle button. Ctrl+Z can restore the original pencil stroke. + +[Full editor guide](Screenshots) · [Download v0.6.24](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/releases/download/release-v0.6.24/KSwitcher-win-x64.zip) · [SHA256SUMS.txt](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/releases/download/release-v0.6.24/SHA256SUMS.txt) + +## Previous release — v0.6.23 (2026-11-01) Save annotated screenshots as full-resolution PNG with **Save… / Ctrl+S**; use **Ctrl+Shift+S** for another destination. The bundled dictionary now includes `поточні` for `Gjnjxys` + Space → `Поточні`. Chrome and Edge use paced text selection; the reported browser-editor case still needs live verification. diff --git a/Screenshots-uk.md b/Screenshots-uk.md index 261485c..9e2c775 100644 --- a/Screenshots-uk.md +++ b/Screenshots-uk.md @@ -22,7 +22,7 @@ ## Інструменти -![Редактор KSwitcher v0.6.23: кнопка Save та демонстраційна стрілка](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0623.png) +![Редактор KSwitcher v0.6.24: фігури, маркери вершин і масштабування канвасу](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0624.png) Це справжній редактор із нейтральним демонстраційним зображенням. Панель унизу показує підказки для поточної дії. @@ -33,16 +33,39 @@ | Пряма лінія | L | Суцільна, пунктирна, штрихова або штрихпунктирна лінія | | Прямокутник | R | Переміщення та зміна розміру | | Коло / еліпс | O / E | Контурні фігури | +| Трикутник | G | Три незалежні рухомі вершини та поворот | +| Трапеція | B | Паралельні основи, зміна розміру та поворот | | Олівець | F | Довільна лінія; активний за замовчуванням | | Підсвітка | H | Напівпрозорий штрих поверх зображення | | Текст | T | Введення прямо на зображенні, шрифт, розмір і поворот | Палітра змінює колір вибраного об’єкта й наступних об’єктів. **Line style** задає тип лінії, а **Ends** — стрілку на початку, в кінці, з обох боків або без наконечників. +## Згладжування та розпізнавання фігур (v0.6.24) + +Після відпускання миші олівець злегка згладжує штрих і намагається розпізнати прямокутник, коло, еліпс, трикутник або трапецію, зокрема нахилені контури. Нерівні овали можуть мати невеликий розрив або нахльост у місці замикання; основи трапеції вирівнюються до паралельних ліній. Розпізнаний контур стає об’єктом-фігурою, а не кривою олівця. + +**Ctrl+Z** відразу після покращення повертає точний початковий штрих; повторне скасування видаляє його. **Ctrl+Y** повторює покращення. Короткі штрихи, штрихи з прив’язкою до інших об’єктів та штрихи, намальовані хоча б частково із Shift, не обробляються. Розпізнавання евристичне: неоднозначний малюнок може лише згладитися, а помилкове перетворення можна скасувати. + +## Фігури та поворот (v0.6.24) + +Інструменти **Triangle / Трикутник (G)** і **Trapezoid / Трапеція (B)** на панелі дозволяють створити фігуру відразу. Намальовані й розпізнані трикутники мають **три незалежні маркери вершин**: перетягування однієї не зміщує дві інші, навіть після повороту. Прямокутники, кола, еліпси й трапеції мають два кутові маркери зміни розміру; кола зберігають однакові ширину й висоту. + +Кожна фігура має **круглий маркер повороту**. Перетягуйте його для обертання навколо центру; утримуйте **Shift** для кроку **15°**. Квадратний маркер регулює товщину контуру. Поворот працює з масштабуванням канвасу, зміною розміру, клонуванням, прив’язаними стрілками та експортом PNG. Зміна вершин трикутника й поворот підтримують undo/redo. Трапеція наразі змінює розмір через кутові маркери рамки, без незалежного редагування вершин. + +## Масштабування й переміщення канвасу (v0.6.24) + +- **Ctrl++ / Ctrl+-**, зокрема на цифровій клавіатурі: зміна масштабу навколо центру видимої області з множником 1,25. +- **Ctrl+колесо миші**: масштабування навколо курсора. +- **Ctrl+0**: початковий масштаб. +- **Перетягування середньою кнопкою**: переміщення збільшеного зображення. + +Діапазон — 0,1×–16× початкового масштабу; рядок стану показує фактичний масштаб зображення. Масштабування й переміщення канвасу не змінюють координат позначок, роздільності експорту чи історії скасування. Колесо **без Ctrl** і далі змінює об’єкт під курсором. Щоб повернути зображення у видиму область, натисніть Ctrl+0. + ## Редагування об’єктів - Перетягуйте об’єкт для переміщення, ручки — для зміни розміру. Курсор підказує доступну дію. -- Колесо миші змінює розмір об’єкта під курсором: товщину лінії, діаметр мітки чи розмір тексту. Товщину також можна змінювати окремою ручкою біля лінії. +- Колесо миші без Ctrl змінює розмір об’єкта під курсором: товщину лінії, діаметр мітки чи розмір тексту. Товщину також можна змінювати окремою ручкою біля лінії. - **Клавіші-стрілки** зміщують вибраний об’єкт на один піксель зображення. - **Ctrl+D** клонує об’єкт, **Delete** видаляє його. - **Ctrl+Z** — Undo; **Ctrl+Y** або **Ctrl+Shift+Z** — Redo. diff --git a/Screenshots.md b/Screenshots.md index e827f62..f1fcd04 100644 --- a/Screenshots.md +++ b/Screenshots.md @@ -22,7 +22,7 @@ If Windows notifications are disabled or cannot be sent, the editor opens immedi ## Tools -![KSwitcher v0.6.23 editor: Save button and an arrow on demonstration data](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0623.png) +![KSwitcher v0.6.24 editor: shapes, vertex handles and canvas zoom](https://gitea.hrynco.com/hrynco/hrynco-kswitcher/wiki/raw/images/screenshot-editor-0624.png) This is the actual editor with a neutral demonstration image. The status bar at the bottom shows contextual hints. @@ -33,16 +33,39 @@ This is the actual editor with a neutral demonstration image. The status bar at | Straight line | L | Solid, dotted, dashed or dash-dot strokes | | Rectangle | R | Move and resize | | Circle / ellipse | O / E | Outline shapes | +| Triangle | G | Three independently draggable vertices and rotation | +| Trapezoid | B | Parallel bases, resizing and rotation | | Pencil | F | Freehand drawing; selected by default | | Highlighter | H | A translucent stroke over the image | | Text | T | Type directly on the image; choose font, size and rotation | The palette changes the selected object's color and the color of new objects. **Line style** sets the stroke pattern; **Ends** selects an arrowhead at the start, end, both ends or neither end. +## Pencil smoothing and shape recognition (v0.6.24) + +After releasing the mouse, Pencil lightly smooths the stroke and tries to recognize a rectangle, circle, ellipse, triangle or trapezoid, including tilted outlines. Uneven ovals can have a small closing gap or overlap; trapezoid bases are fitted to parallel lines. Recognized outlines become shape objects, not pencil curves. + +**Ctrl+Z** immediately after improvement restores the exact original stroke; a second undo removes it. **Ctrl+Y** reapplies the improvement. Small strokes, strokes linked to other objects and any stroke drawn partly with Shift stay unchanged. Recognition is heuristic: ambiguous drawings may only be smoothed, and an incorrect guess can be undone. + +## Shapes and rotation (v0.6.24) + +Use **Triangle (G)** or **Trapezoid (B)** on the toolbar to draw these shapes directly. Both drawn and recognized triangles have **three independent vertex handles**: dragging one keeps the other two fixed, even after rotation. Rectangles, circles, ellipses and trapezoids use two bounding-box resize handles; circles retain equal width and height. + +Every shape has a **round rotation handle**. Drag it to rotate around the center; hold **Shift** for **15-degree steps**. The square handle controls outline thickness. Rotation works with canvas zoom, resizing, cloning, attached connectors and PNG export. Triangle vertex edits and rotation support undo/redo. Trapezoids currently use bounding-box resizing rather than independent vertex editing. + +## Canvas zoom and pan (v0.6.24) + +- **Ctrl++ / Ctrl+-**, including numpad keys: zoom around the viewport center in factors of 1.25. +- **Ctrl+mouse wheel**: zoom around the cursor. +- **Ctrl+0**: restore the initial fit. +- **Middle-button drag**: pan the enlarged image. + +The range is 0.1×–16× the initial fit; the status bar shows the actual image scale. Zoom/pan never changes annotation coordinates, export resolution or undo history. The mouse wheel **without Ctrl** still changes the object under the cursor. If you lose your place, use Ctrl+0. + ## Edit objects - Drag an object to move it or its handles to resize it. The cursor indicates the available action. -- The mouse wheel changes the size of the object under the cursor: line thickness, marker diameter or text size. A separate handle beside the line also adjusts thickness. +- The mouse wheel without Ctrl changes the size of the object under the cursor: line thickness, marker diameter or text size. A separate handle beside the line also adjusts thickness. - **Arrow keys** move the selected object by one image pixel. - **Ctrl+D** duplicates an object; **Delete** removes it. - **Ctrl+Z** undoes; **Ctrl+Y** or **Ctrl+Shift+Z** redoes. diff --git a/Usage-uk.md b/Usage-uk.md index 7823042..2ba69d7 100644 --- a/Usage-uk.md +++ b/Usage-uk.md @@ -84,3 +84,7 @@ Hello, {cursor}! Chrome та Edge тепер використовують виділення з паузами, як Teams/WebView: окремі натискання **Shift+Left** розділено паузами 25 мс. Це зменшує серії подій, які асинхронний редактор може не встигнути обробити. Конвертація щойно набраного тексту, повторна конвертація та Undo й далі перевіряють увесь скопійований фрагмент перед заміною; відновлення часткового виділення залишається доступним. Повідомлений браузерний збій після цієї зміни ще не перевірено наживо. Якщо **previous-result-verification-mismatch** повторюється, припиніть повторювати хоткей, явно виділіть потрібне слово й спробуйте ручну конвертацію. До нового повідомлення додайте деталі діагностики. **Original text remained** та **Paste not verified** — окремі результати зчитування; ця зміна не гарантує вставлення та не прибирає наявні перевірки. + +## Клавіші редактора скріншотів (v0.6.24) + +Трикутник: **G**; трапеція: **B**. **Ctrl++ / Ctrl+- / Ctrl+колесо** змінюють масштаб; **Ctrl+0** скидає його; **перетягування середньою кнопкою** переміщує канвас. **Shift** задає крок повороту фігури 15°. Після автоматичного покращення олівця **Ctrl+Z** повертає початковий штрих. [Посібник редактора](Screenshots-uk). diff --git a/Usage.md b/Usage.md index a40d381..0175262 100644 --- a/Usage.md +++ b/Usage.md @@ -84,3 +84,7 @@ Native regression tests cover suffix verification, and isolated-editor integrati Chrome and Edge now use paced selection, as already used for Teams/WebView: individual **Shift+Left** presses have 25 ms pauses. This reduces bursts of events that asynchronous editors may not process in time. Recent-text conversion, repeat conversion and Undo still verify the full copied range before replacement; partial-selection recovery remains available. The reported browser-editor failure has not yet been verified live after this change. If **previous-result-verification-mismatch** persists, stop repeating the shortcut, explicitly select the intended word and try manual conversion. Include diagnostic details in a new report. **Original text remained** and **Paste not verified** are separate readback outcomes; this change does not guarantee paste delivery or remove the existing verification checks. + +## Screenshot editor shortcuts (v0.6.24) + +Triangle: **G**; trapezoid: **B**. **Ctrl++ / Ctrl+- / Ctrl+wheel** zoom; **Ctrl+0** resets the view; **middle-button drag** pans. Shape rotation handles support **Shift** for 15-degree steps. After automatic pencil improvement, **Ctrl+Z** restores the original stroke. [Full editor guide](Screenshots). diff --git a/images/screenshot-editor-0624.png b/images/screenshot-editor-0624.png new file mode 100644 index 0000000000000000000000000000000000000000..1f1599a0ad562c63fb4cce328580bf9720b591bd GIT binary patch literal 31237 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

lLIVB%1VZ)k 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 ZpTer&EPo#dd;Q>RYI4f5#nR8;{u_>`umu1B literal 0 HcmV?d00001