1
0
Fork 0
mirror of https://github.com/Orama-Interactive/Pixelorama.git synced 2025-02-12 16:53:07 +00:00

Compare commits

...

21 commits

Author SHA1 Message Date
Variable 3458da9d1f
Merge 5ee7566cb4 into aa1731b701 2024-11-21 20:02:19 +08:00
Emmanouil Papadeas aa1731b701 Initial work on diagonal symmetry guides
Still no buttons yet, and they cannot be moved yet.
2024-11-21 04:00:40 +02:00
Emmanouil Papadeas 558140b309 Add partial logic for diagonal mirroring
Still WIP, no buttons and guides exposed yet.
2024-11-21 03:25:41 +02:00
Emmanouil Papadeas 849b815562 Further simplify mirror_array() 2024-11-21 02:21:11 +02:00
Emmanouil Papadeas 3615ce087c Reduce duplicated code by calling mirror_array by tools less times 2024-11-21 02:15:50 +02:00
Emmanouil Papadeas 2d28136449
Implement indexed mode (#1136)
* Create a custom PixeloramaImage class, initial support for indexed mode

* Convert opened projects and images to indexed mode

* Use shaders for RGB to Indexed conversion and vice versa

* Add `is_indexed` variable in PixeloramaImage

* Basic undo/redo support for indexed mode when drawing

* Make image effects respect indexed mode

* Move code from image effects to ShaderImageEffect instead

* Bucket tool works with indexed mode

* Move and selection tools works with indexed mode

* Brushes respect indexed mode

* Add color_mode variable and some helper methods in Project

Replace hard-coded cases of Image.FORMAT_RGBA8 with `Project.get_image_format()` just in case we want to add more formats in the future

* Add a helper new_empty_image() method to Project

* Set new images to indexed if the project is indexed

* Change color modes from the Image menu

* Fix open image to replace cel

* Load/save indices in pxo files

* Merging layers works with indexed mode

* Layer effects respect indexed mode

* Add an `other_image` parameter to `PixeloramaImage.add_data_to_dictionary()`

* Scale image works with indexed mode

* Resizing works with indexed mode

* Fix non-shader rotation not working with indexed mode

* Minor refactor of PixeloramaImage's set_pixelv_custom()

* Make the text tool work with indexed mode

* Remove print from PixeloramaImage

* Rename "PixeloramaImage" to "ImageExtended"

* Add docstrings in ImageExtended

* Set color mode from the create new image dialog

* Update Translations.pot

* Show the color mode in the project properties dialog
2024-11-20 14:41:37 +02:00
Emmanouil Papadeas 74d95c2424
[skip ci] Update Translations.pot 2024-11-19 16:00:28 +02:00
Emmanouil Papadeas f4f7da7605 [skip ci] Update Translations.pot 2024-11-19 01:32:21 +02:00
Emmanouil Papadeas 428e5edb8f
Add a text tool (#1134)
* Initial port of the text tool to Godot 4

* Change font (WIP)

* Add antialiasing option and remove some old unneeded lines

* Remove outline code

* Add horizontal alignment and update the text edit font size

* Improve the text edit

* Don't activate tools while typing

* Format

* Give input priority to the text edit so the key X and shortcuts such as control-z work in the text edit

* Add style settings for bold and italic

* Fix text going blank when changing font

* Use `font.draw_multiline_string()`

* Change the move behavior of the text tool, add confirm and cancel buttons

* Compress images on undo/redo

* Fix text position
2024-11-19 01:20:34 +02:00
Emmanouil Papadeas f6beb4470e [skip ci] Bump version to v1.1-dev 2024-11-19 01:17:29 +02:00
Emmanouil Papadeas dd8bf5cc1b Release v1.0.5 2024-11-18 17:53:53 +02:00
Emmanouil Papadeas e2b6262560 Update translators in AboutDialog 2024-11-18 17:50:19 +02:00
Emmanouil Papadeas b548ad2337
New Crowdin updates (#1127) 2024-11-18 17:47:27 +02:00
Variable 5ee7566cb4 formatting and a bugfix 2024-10-26 08:41:48 +05:00
Variable aba08cbc37 linting 2024-10-26 08:09:25 +05:00
Variable df8df9d72b
Merge branch 'Orama-Interactive:master' into grids 2024-10-26 07:58:27 +05:00
Variable fb826995ca removed some left over stuff 2024-10-15 17:22:25 +05:00
Variable d34c7739fb formatting 2024-10-15 17:18:28 +05:00
Variable 8990ff2816 fixed a bug 2024-10-15 16:59:22 +05:00
Variable 6a60050bd3 Fixed more stuff 2024-10-15 16:39:51 +05:00
Variable 8b12eac231 Allow upto 10 grids 2024-10-15 14:13:26 +05:00
128 changed files with 11764 additions and 1336 deletions

View file

@ -7,7 +7,7 @@ on:
env:
GODOT_VERSION: 4.3
EXPORT_NAME: Pixelorama
TAG: v1.0.4
TAG: v1.0.5
BUTLER_API_KEY: ${{ secrets.BUTLER_API_KEY }}
jobs:

View file

@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). All the dates are in YYYY-MM-DD format.
<br><br>
## [v1.0.5] - Unreleased
## [v1.0.5] - 2024-11-18
This update has been brought to you by the contributions of:
Fayez Akhtar ([@Variable-ind](https://github.com/Variable-ind))

View file

@ -44,6 +44,7 @@
</screenshots>
<content_rating type="oars-1.1"/>
<releases>
<release version="1.0.5" date="2024-11-18"/>
<release version="1.0.4" date="2024-10-25"/>
<release version="1.0.3" date="2024-09-13"/>
<release version="1.0.2" date="2024-08-21"/>

View file

@ -156,6 +156,18 @@ msgstr ""
msgid "Percentage"
msgstr ""
#. Found in the create new image dialog. Allows users to change the color mode of the new project, such as RGBA or indexed mode.
msgid "Color mode:"
msgstr ""
#. Found in the image menu. A submenu that allows users to change the color mode of the project, such as RGBA or indexed mode.
msgid "Color Mode"
msgstr ""
#. Found in the image menu, under the "Color Mode" submenu. Refers to the indexed color mode. See this wikipedia page for more information: https://en.wikipedia.org/wiki/Indexed_color
msgid "Indexed"
msgstr ""
#. Found in the image menu. Sets the size of the project to be the same as the size of the active selection.
msgid "Crop to Selection"
msgstr ""
@ -1492,6 +1504,11 @@ msgid "Ellipse Tool\n\n"
"Hold %s to displace the shape's origin"
msgstr ""
msgid "Text\n\n"
"%s for left mouse button\n"
"%s for right mouse button"
msgstr ""
msgid "Rectangle"
msgstr ""
@ -2003,6 +2020,33 @@ msgstr ""
msgid "Intersection of selections"
msgstr ""
#. Refers to the style of something, such as the style of a text, meaning whether it's regular, bold, italic, etc.
msgid "Style:"
msgstr ""
#. Refers to the text. Regular means that the text is not bold or italic.
msgid "Regular"
msgstr ""
#. Refers to text that is bold.
msgid "Bold"
msgstr ""
#. Refers to text that is italic.
msgid "Italic"
msgstr ""
#. Refers to text that is bold and italic.
msgid "Bold Italic"
msgstr ""
#. https://en.wikipedia.org/wiki/Anti-aliasing
msgid "Antialiasing"
msgstr ""
msgid "Grayscale"
msgstr ""
msgid "Mirroring"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Afrikaans\n"
"Language: af_ZA\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "Goed"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Arabic\n"
"Language: ar_SA\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "حسنا"
@ -216,6 +216,43 @@ msgstr "مسح"
msgid "Invert"
msgstr "عكس"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "العرض الرمادي"
@ -241,19 +278,16 @@ msgstr "وضع البلاط"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1891,6 +1925,10 @@ msgstr "ملء الشكل"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2834,6 +2872,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Belarusian\n"
"Language: be_BY\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Скінуць"
msgid "Invert"
msgstr "Інвертаваць"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,21 +278,18 @@ msgstr "Бясшоўны рэжым"
msgid "Tile Mode Offsets"
msgstr "Зрух бясшоўнага рэжыму"
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
msgstr "Тайлавая маска"
msgid "Reset"
msgstr "Скід"
@ -1886,6 +1920,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2829,6 +2867,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Bulgarian\n"
"Language: bg_BG\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Catalan\n"
"Language: ca_ES\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "D'acord"
@ -216,6 +216,43 @@ msgstr "Neteja"
msgid "Invert"
msgstr "Invertir"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Mode Tile"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1925,6 +1959,10 @@ msgstr "Omple la forma"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Omple la forma dibuixada amb un color, en comptes de dibuixar una forma buida"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Color del pinzell de"
@ -2869,6 +2907,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Czech\n"
"Language: cs_CZ\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Zrušit"
msgid "Invert"
msgstr "Invertovat"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Pohled s odstíny šedi"
@ -241,19 +278,16 @@ msgstr "Dlaždicový režim"
msgid "Tile Mode Offsets"
msgstr "Odsazení dlaždicového režimu"
msgid "X-basis x:"
msgstr "X na bázi X:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "Y na bázi X:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "X na bázi Y:"
msgid "Y-basis y:"
msgstr "Y na bázi Y:"
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1937,6 +1971,10 @@ msgstr "Vyplnit tvar"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Vyplní nakreslený tvar barvou, jinak zůstane tvar dutý"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Barva štětce z"
@ -2884,6 +2922,10 @@ msgstr "Seřadit podle saturace"
msgid "Sort by value"
msgstr "Seřadit podle hodnoty"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Seřadit podle červené"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Welsh\n"
"Language: cy_GB\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Danish\n"
"Language: da_DK\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Ryd"
msgid "Invert"
msgstr "Invertér"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Gråtonevisning"
@ -241,20 +278,17 @@ msgstr "Felt-tilstand"
msgid "Tile Mode Offsets"
msgstr "Tile Mode Offsets"
msgid "X-basis x:"
msgstr "X-grundlag x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "X-grundlag y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "Y-grundlag x:"
msgid "Y-basis y:"
msgstr "Y-grundlag y:"
msgid "Tile Mask"
msgstr "Flise maske"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "Nulstil"
@ -1924,6 +1958,10 @@ msgstr "Udfyld Form"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Penselfarve fra"
@ -2867,6 +2905,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: German\n"
"Language: de_DE\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -218,6 +218,43 @@ msgstr "Leeren"
msgid "Invert"
msgstr "Invertieren"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Graustufen-Ansicht"
@ -235,7 +272,7 @@ msgstr "Einstellungen"
#. An option in the View menu. When selected, the canvas is being placed on the center of the screen.
msgid "Center Canvas"
msgstr ""
msgstr "Canvas zentrieren"
msgid "Tile Mode"
msgstr "Kachelmodus"
@ -243,20 +280,17 @@ msgstr "Kachelmodus"
msgid "Tile Mode Offsets"
msgstr "Tile-Modus Offsets"
msgid "X-basis x:"
msgstr "X-Basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "X-Basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "Y-Basis x:"
msgid "Y-basis y:"
msgstr "Y-Basis y:"
msgid "Tile Mask"
msgstr "Tile-Maske"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "Zurücksetzen"
@ -849,7 +883,7 @@ msgstr "Bildschirmmaße:"
#. Refers to the font of a text.
msgid "Font:"
msgstr ""
msgstr "Schriftart:"
#. Found in the preferences, under the interface section. Allows users to set the size of the font, ie the text.
msgid "Font size:"
@ -919,12 +953,13 @@ msgstr "Hintergrundfarbe:"
#. Found in the preferences, under the Tools category.
msgid "Share options between the left and the right tools"
msgstr ""
msgstr "Optionen zwischen dem linken und dem rechten Werkzeug teilen"
#. Found in the preferences, under the Tools category. Tooltip of the "Share options between the left and the right tools" preference.
msgid "If this is enabled, options will be synced between the left and the right tool.\n"
"For example, both tools will share the same brush size, and changing it on one tool will instantly change on the other."
msgstr ""
msgstr "Wenn diese Option aktiviert ist, werden die Optionen zwischen dem linken und dem rechten Werkzeug synchronisiert.\n"
"Zum Beispiel teilen daraufhin beide Werkzeuge die gleiche Pinselgröße, und sobald diese bei einem Werkzeug geändert wird, ändert sie sich auch bei dem anderem."
msgid "Left tool color:"
msgstr "Farbe des linken Werkzeugs:"
@ -1937,6 +1972,10 @@ msgstr "Füllform"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Füllt die gezeichnete Form mit Farbe, anstatt eine hohle Form zu zeichnen"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Pinselfarbe von"
@ -2054,11 +2093,11 @@ msgstr "Aktiviere vertikal gespiegelte Zeichnung"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to canvas center"
msgstr ""
msgstr "In Canvas-Mitte verschieben"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to view center"
msgstr ""
msgstr "In die Mitte verschieben"
msgid "Current frame:"
msgstr "Aktueller Frame"
@ -2076,10 +2115,10 @@ msgid "Go to the previous frame"
msgstr "Zum vorherigen Frame gehen"
msgid "Play the animation backwards"
msgstr ""
msgstr "Animation rückwärts abspielen"
msgid "Play the animation forward"
msgstr ""
msgstr "Animation vorwärts abspielen"
msgid "Go to the next frame"
msgstr "Gehe zum nächsten Frame"
@ -2584,23 +2623,23 @@ msgstr "Eine Standard-Hintergrundfarbe eines neuen Bildes"
#. Found in the preferences, under the Reset category.
msgid "Reset all options available in the Preferences"
msgstr ""
msgstr "Alle in den Einstellungen verfügbaren Optionen zurücksetzen"
#. Found in the preferences, under the Reset category.
msgid "Reset timeline options"
msgstr ""
msgstr "Timeline-Optionen zurücksetzen"
#. Found in the preferences, under the Reset category.
msgid "Reset all tool options"
msgstr ""
msgstr "Alle Werkzeugoptionen zurücksetzen"
#. Found in the preferences, under the Reset category.
msgid "Remove all extensions"
msgstr ""
msgstr "Alle Erweiterungen entfernen"
#. Found in the preferences, under the Reset category.
msgid "Clear the recently opened file list"
msgstr ""
msgstr "Löschen der zuletzt geöffneten Dateiliste"
msgid "Lock aspect ratio"
msgstr "Seitenverhältnis sperren"
@ -2771,19 +2810,19 @@ msgstr "Die Zeichen, die den Dateinamen und die Frame-Nummer trennen"
#. Found in the export dialog. It is an option that removes the transparent area around non-transparent pixels of the exported images.
msgid "Trim images"
msgstr ""
msgstr "Bilder zuschneiden"
#. Found in the export dialog. Tooltip of the "trim images" option.
msgid "Trims the exported images to their visible portion, considering each pixel with a non-zero alpha channel as visible."
msgstr ""
msgstr "Schneiden Sie die exportierten Bilder in ihre sichtbaren Teile, unter Betrachtung jedes Pixel mit einem nicht-null Alphakanal als sichtbar."
#. Found in the export dialog. It is an option that allows users to only export the portions of the images that are within the selected area.
msgid "Clip image content to selection"
msgstr ""
msgstr "Bildinhalt auf Auswahl zuschneiden"
#. Found in the export dialog. Tooltip of the "clip image content to selection" option.
msgid "Only export content that is within the bounds of a selected area."
msgstr ""
msgstr "Nur Inhalte exportieren, die innerhalb der Grenzen eines ausgewählten Bereichs liegen."
msgid "Close"
msgstr "Schließen"
@ -2883,6 +2922,10 @@ msgstr "Nach Sättigung sortieren"
msgid "Sort by value"
msgstr "Nach Wert sortieren"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Nach Rot sortieren"
@ -3132,7 +3175,7 @@ msgstr "Text:"
#. Refers to the depth of something, such as the depth of a 3D object.
msgid "Depth:"
msgstr ""
msgstr "Tiefe:"
#. Found in the tool options of the 3D Shape Edit tool, under the Mesh category if a Text object is selected. Refers to the size of one pixel's width on the text to scale it in 3D.
msgid "Pixel size:"
@ -3146,7 +3189,7 @@ msgid "Horizontal alignment:"
msgstr "Horizontale Ausrichtung:"
msgid "Vertical alignment:"
msgstr ""
msgstr "Vertikale Ausrichtung:"
msgid "Left"
msgstr "Links"
@ -3156,7 +3199,7 @@ msgstr "Rechts"
#. Refers to the vertical space between lines in a text.
msgid "Line spacing:"
msgstr ""
msgstr "Zeilenabstand:"
#. Found in the tool options of the 3D Shape Edit tool, under the Light category if a light is selected. Refers to the energy of the light. The more energy, the brighter it shines.
msgid "Energy:"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Greek\n"
"Language: el_GR\n"
"PO-Revision-Date: 2024-10-17 17:12\n"
"PO-Revision-Date: 2024-11-15 18:59\n"
msgid "OK"
msgstr "Εντάξει"
@ -218,6 +218,43 @@ msgstr "Εκκαθάριση"
msgid "Invert"
msgstr "Αντιστροφή"
msgid "Modify"
msgstr "Τροποποίηση"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Επέκταση"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Επέκταση επιλογής"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Συρρίκνωση"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Συρρίκνωση επιλογής"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Περίγραμμα"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Περίγραμμα επιλογής"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Ρόμβος"
msgid "Circle"
msgstr "Κύκλος"
msgid "Square"
msgstr "Τετράγωνο"
msgid "Grayscale View"
msgstr "Προβολή σε κλίμακα γκρι"
@ -243,20 +280,17 @@ msgstr "Λειτουργία μοτίβου"
msgid "Tile Mode Offsets"
msgstr "Μετατόπιση λειτουργίας μοτίβου"
msgid "X-basis x:"
msgstr "Χ-βάση x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "Βάση Χ:"
msgid "X-basis y:"
msgstr "Χ-βάση y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Βάση Υ:"
msgid "Y-basis x:"
msgstr "Y-βάση x:"
msgid "Y-basis y:"
msgstr "Y-βάση y:"
msgid "Tile Mask"
msgstr "Μάσκα μοτίβου"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Μάσκα:"
msgid "Reset"
msgstr "Επαναφορά"
@ -1939,6 +1973,10 @@ msgstr "Γέμισμα Σχήματος"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Γεμίζει το σχεδιασμένο σχήμα με χρώμα, αντί να σχεδιαστεί ένα άδειο σχήμα"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Πυκνότητα:"
msgid "Brush color from"
msgstr "Χρώμα πινέλου από"
@ -2886,6 +2924,10 @@ msgstr "Ταξινόμηση κατά κορεσμού"
msgid "Sort by value"
msgstr "Ταξινόμηση κατά τιμής"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "Ταξινόμηση κατά φωτεινότητα"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Ταξινόμηση κατά κόκκινου"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Pirate English\n"
"Language: en_PT\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Esperanto\n"
"Language: eo_UY\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "Bone"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Kahela reĝimo"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1877,6 +1911,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2820,6 +2858,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Spanish\n"
"Language: es_ES\n"
"PO-Revision-Date: 2024-10-19 18:46\n"
"PO-Revision-Date: 2024-11-18 03:30\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Limpiar"
msgid "Invert"
msgstr "Invertir"
msgid "Modify"
msgstr "Modificar"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Expandir"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Expandir selección"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Encoger"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Encoger selección"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Borde"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Selección de borde"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Diamante"
msgid "Circle"
msgstr "Círculo"
msgid "Square"
msgstr "Cuadrado"
msgid "Grayscale View"
msgstr "Ver en escala de grises"
@ -241,20 +278,17 @@ msgstr "Modo mosaico"
msgid "Tile Mode Offsets"
msgstr "Desplazamiento del modo mosaico"
msgid "X-basis x:"
msgstr "X de la base X:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "Base X:"
msgid "X-basis y:"
msgstr "Y de la base X:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Base Y:"
msgid "Y-basis x:"
msgstr "X de la base Y:"
msgid "Y-basis y:"
msgstr "Y de la base Y:"
msgid "Tile Mask"
msgstr "Máscara de mosaicos"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Máscara:"
msgid "Reset"
msgstr "Reiniciar"
@ -1934,6 +1968,10 @@ msgstr "Rellena forma"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Rellena de color la forma dibujada, en lugar de dibujar una forma hueca"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Densidad:"
msgid "Brush color from"
msgstr "Color de pincel de"
@ -2881,6 +2919,10 @@ msgstr "Ordenar por saturación"
msgid "Sort by value"
msgstr "Ordenar por valor"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "Ordenar por luminosidad"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Ordenar por rojo"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Estonian\n"
"Language: et_EE\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Finnish\n"
"Language: fi_FI\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Filipino\n"
"Language: fil_PH\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: French\n"
"Language: fr_FR\n"
"PO-Revision-Date: 2024-10-24 18:36\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -217,6 +217,43 @@ msgstr "Effacer"
msgid "Invert"
msgstr "Inverser"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Affichage en niveaux de gris"
@ -242,20 +279,17 @@ msgstr "Mode tuile"
msgid "Tile Mode Offsets"
msgstr "Mode Tuiles Décalées"
msgid "X-basis x:"
msgstr "X-base x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "X-base y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "Y-base x:"
msgid "Y-basis y:"
msgstr "Y-base y:"
msgid "Tile Mask"
msgstr "Masque de Tuile"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "Réinitialiser"
@ -1929,6 +1963,10 @@ msgstr "Forme de remplissage"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Remplit la forme avec de la couleur au lieu de ne dessiner que le contour"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Couleur de la brosse depuis"
@ -2876,6 +2914,10 @@ msgstr "Trier par saturation"
msgid "Sort by value"
msgstr "Trier par valeur"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Trier par rouge"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Irish\n"
"Language: ga_IE\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Ancient Greek\n"
"Language: grc\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "Ἐντάξει"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Hebrew\n"
"Language: he_IL\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "אישור"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr "היפוך"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "מצב אריח"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1880,6 +1914,10 @@ msgstr "מילוי צורה"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "ממלא את הצורה המצוירת בצבע, במקום לצייר צורה חלולה"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "צבע מברשת מ"
@ -2824,6 +2862,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Hindi\n"
"Language: hi_IN\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "ठीक है"
@ -216,6 +216,43 @@ msgstr "साफ करें"
msgid "Invert"
msgstr "उल्टा"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Croatian\n"
"Language: hr_HR\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Hungarian\n"
"Language: hu_HU\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "Ok"
@ -216,6 +216,43 @@ msgstr "Törlés"
msgid "Invert"
msgstr "Invertálás"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Csempe mód"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1886,6 +1920,10 @@ msgstr "Alakzat kitöltése"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Ecset színből"
@ -2831,6 +2869,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Indonesian\n"
"Language: id_ID\n"
"PO-Revision-Date: 2024-10-18 20:11\n"
"PO-Revision-Date: 2024-11-17 13:41\n"
msgid "OK"
msgstr "Oke"
@ -218,6 +218,43 @@ msgstr "Kosongkan"
msgid "Invert"
msgstr "Terbalikkan"
msgid "Modify"
msgstr "Ubah"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Lebarkan"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Lebarkan Seleksi"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Susutkan"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Susutkan Seleksi"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Tepian"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Seleksi Tepian"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Wajik"
msgid "Circle"
msgstr "Lingkaran"
msgid "Square"
msgstr "Persegi"
msgid "Grayscale View"
msgstr "Tampilan Skala Kelabu"
@ -243,20 +280,17 @@ msgstr "Mode Petak"
msgid "Tile Mode Offsets"
msgstr "Offset Mode Petak"
msgid "X-basis x:"
msgstr "X berdasar-x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "Dasar-X:"
msgid "X-basis y:"
msgstr "Y berdasar-x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Dasar-Y:"
msgid "Y-basis x:"
msgstr "X berdasar-y:"
msgid "Y-basis y:"
msgstr "Y berdasar-y:"
msgid "Tile Mask"
msgstr "Mask Petak"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Masking:"
msgid "Reset"
msgstr "Atur ulang"
@ -1939,6 +1973,10 @@ msgstr "Warnai Bentuk"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Mewarnai isi bentuk yang digambar dan tidak menggambar bentuk berongga"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Kerapatan:"
msgid "Brush color from"
msgstr "Warna kuas dari"
@ -2886,6 +2924,10 @@ msgstr "Urut sesuai saturasi"
msgid "Sort by value"
msgstr "Urut sesuai nilai"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "Urut sesuai muda warna"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Urut sesuai merah"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Icelandic\n"
"Language: is_IS\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Italian\n"
"Language: it_IT\n"
"PO-Revision-Date: 2024-10-17 15:11\n"
"PO-Revision-Date: 2024-11-15 18:59\n"
msgid "OK"
msgstr "OK"
@ -218,6 +218,43 @@ msgstr "Cancella"
msgid "Invert"
msgstr "Inverti"
msgid "Modify"
msgstr "Modifica"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Espandi"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Espandi Selezione"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Riduci"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Riduci La Selezione"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Corníce"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Selezione Bordo"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Diamante"
msgid "Circle"
msgstr "Cerchio"
msgid "Square"
msgstr "Quadrato"
msgid "Grayscale View"
msgstr "Visualizzazione Scala Di Grigio"
@ -243,20 +280,17 @@ msgstr "Modalità Tile"
msgid "Tile Mode Offsets"
msgstr "Scostamenti Modalità Piastrelle"
msgid "X-basis x:"
msgstr "X-base x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "Base X:"
msgid "X-basis y:"
msgstr "X base y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Base Y:"
msgid "Y-basis x:"
msgstr "Y base x:"
msgid "Y-basis y:"
msgstr "Y-base y:"
msgid "Tile Mask"
msgstr "Maschera Piastrelle"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Maschera:"
msgid "Reset"
msgstr "Azzera"
@ -1939,6 +1973,10 @@ msgstr "Riempi Forma"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Riempie la forma disegnata con il colore, invece di disegnare una forma cava"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Densità:"
msgid "Brush color from"
msgstr "Colore del pennello da"
@ -2886,6 +2924,10 @@ msgstr "Ordina per saturazione"
msgid "Sort by value"
msgstr "Ordina per valore"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "Ordina per luminosità"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Ordina per rosso"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Japanese\n"
"Language: ja_JP\n"
"PO-Revision-Date: 2024-10-17 16:15\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "OK"
@ -218,6 +218,43 @@ msgstr "削除"
msgid "Invert"
msgstr "反転"
msgid "Modify"
msgstr "修正"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "拡張"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "選択範囲を拡張"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "縮小"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "選択範囲を縮小"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "境界線"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "境界線の選択"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "ひし形"
msgid "Circle"
msgstr "円"
msgid "Square"
msgstr "正方形"
msgid "Grayscale View"
msgstr "グレースケール表示"
@ -243,20 +280,17 @@ msgstr "タイルモード"
msgid "Tile Mode Offsets"
msgstr "タイルモードのオフセット"
msgid "X-basis x:"
msgstr "X基底 x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "X基底:"
msgid "X-basis y:"
msgstr "X基底 y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Y基底:"
msgid "Y-basis x:"
msgstr "Y基底 x:"
msgid "Y-basis y:"
msgstr "Y基底 y:"
msgid "Tile Mask"
msgstr "タイルマスク"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "マスキング:"
msgid "Reset"
msgstr "初期化"
@ -1939,6 +1973,10 @@ msgstr "図形の塗りつぶし"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "中が空の図形を描くのではなく、描画した図形を色で塗りつぶします"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "密度:"
msgid "Brush color from"
msgstr "ブラシの色"
@ -2886,6 +2924,10 @@ msgstr "彩度でソート"
msgid "Sort by value"
msgstr "値でソート"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "軽さで並び替え"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "赤でソート"
@ -3135,7 +3177,7 @@ msgstr "テキスト:"
#. Refers to the depth of something, such as the depth of a 3D object.
msgid "Depth:"
msgstr ""
msgstr "深さ:"
#. Found in the tool options of the 3D Shape Edit tool, under the Mesh category if a Text object is selected. Refers to the size of one pixel's width on the text to scale it in 3D.
msgid "Pixel size:"
@ -3149,7 +3191,7 @@ msgid "Horizontal alignment:"
msgstr "水平方向:"
msgid "Vertical alignment:"
msgstr ""
msgstr "垂直揃え:"
msgid "Left"
msgstr "左"

3330
Translations/kk_KZ.po Normal file

File diff suppressed because it is too large Load diff

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Korean\n"
"Language: ko_KR\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "예"
@ -216,6 +216,43 @@ msgstr "초기화"
msgid "Invert"
msgstr "반전"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "흑백 뷰"
@ -241,19 +278,16 @@ msgstr "타일 모드"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1923,6 +1957,10 @@ msgstr "도형 채우기"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "빈 도형을 그리는 대신 도형을 색상으로 채우고 그립니다."
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "브러시 색상을 ~에서"
@ -2868,6 +2906,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Latin\n"
"Language: la_LA\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Lithuanian\n"
"Language: lt_LT\n"
"PO-Revision-Date: 2024-10-17 14:10\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Latvian\n"
"Language: lv_LV\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "Labi"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Flīžu režīms"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1884,6 +1918,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Otas krāsa no"
@ -2828,6 +2866,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

3330
Translations/mi_NZ.po Normal file

File diff suppressed because it is too large Load diff

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Macedonian\n"
"Language: mk_MK\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Malayalam\n"
"Language: ml_IN\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "ഓക്കേ"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Marathi\n"
"Language: mr_IN\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Malay\n"
"Language: ms_MY\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Norwegian Bokmal\n"
"Language: nb_NO\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Nullstill"
msgid "Invert"
msgstr "Inverter"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Flismodus"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1922,6 +1956,10 @@ msgstr "Fyll Form"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Fyller den tegnede formen med farge i stedet for å tegne en hul form"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Børstefarge fra"
@ -2868,6 +2906,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Dutch\n"
"Language: nl_NL\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "Oké"
@ -216,6 +216,43 @@ msgstr "Wissen"
msgid "Invert"
msgstr "Omkeren"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Tegelmodus"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Polish\n"
"Language: pl_PL\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "OK"
@ -218,6 +218,43 @@ msgstr "Usuń zaznaczenie"
msgid "Invert"
msgstr "Odwróć zaznaczenie"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Czarno-biały widok"
@ -243,20 +280,17 @@ msgstr "Tryb kafelkowy"
msgid "Tile Mode Offsets"
msgstr "Przesunięcia trybu kafelkowego"
msgid "X-basis x:"
msgstr "Baza X.x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "Baza X.y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "Baza Y.x:"
msgid "Y-basis y:"
msgstr "Baza Y.y:"
msgid "Tile Mask"
msgstr "Maska kafelków"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "Zresetuj"
@ -1936,6 +1970,10 @@ msgstr "Wypełnij kształt"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Wypełnia narysowany kształt kolorem, zamiast rysować same obramowanie"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Nadpisywanie koloru pędzla"
@ -2883,6 +2921,10 @@ msgstr "Sortuj według nasycenia"
msgid "Sort by value"
msgstr "Sortuj według wartości"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Sortuj według koloru czerwonego"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Portuguese, Brazilian\n"
"Language: pt_BR\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "OK"
@ -218,6 +218,43 @@ msgstr "Limpar"
msgid "Invert"
msgstr "Inverter"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Visualização em tons de cinza"
@ -235,7 +272,7 @@ msgstr "Preferências"
#. An option in the View menu. When selected, the canvas is being placed on the center of the screen.
msgid "Center Canvas"
msgstr ""
msgstr "Centralizar Tela"
msgid "Tile Mode"
msgstr "Modo de Tile"
@ -243,20 +280,17 @@ msgstr "Modo de Tile"
msgid "Tile Mode Offsets"
msgstr "Deslocamentos do Modo de Tile"
msgid "X-basis x:"
msgstr "X-base x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "X-base y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "Y-base x:"
msgid "Y-basis y:"
msgstr "Y-base y:"
msgid "Tile Mask"
msgstr "Máscara de Tile"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "Redefinir"
@ -850,7 +884,7 @@ msgstr "Mostrar escala:"
#. Refers to the font of a text.
msgid "Font:"
msgstr ""
msgstr "Fonte:"
#. Found in the preferences, under the interface section. Allows users to set the size of the font, ie the text.
msgid "Font size:"
@ -920,12 +954,13 @@ msgstr "Cor de fundo:"
#. Found in the preferences, under the Tools category.
msgid "Share options between the left and the right tools"
msgstr ""
msgstr "Compartilhar opções entre as ferramentas esquerda e direita"
#. Found in the preferences, under the Tools category. Tooltip of the "Share options between the left and the right tools" preference.
msgid "If this is enabled, options will be synced between the left and the right tool.\n"
"For example, both tools will share the same brush size, and changing it on one tool will instantly change on the other."
msgstr ""
msgstr "Se estiver ativado, as opções vão se manter sincronizadas entre as ferramentas esquerda e direita.\n"
"Por exemplo, ambas as ferramentas terão o mesmo tamanho de pincel, e alterá-lo em uma delas também irá mudá-lo na outra."
msgid "Left tool color:"
msgstr "Cor da ferramenta esquerda:"
@ -1938,6 +1973,10 @@ msgstr "Preencher Forma"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Preenche a forma desenhada com cor, em vez de desenhar uma forma oca"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Cor de pincel do"
@ -2055,11 +2094,11 @@ msgstr "Ativar desenho com espelhamento vertical"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to canvas center"
msgstr ""
msgstr "Mover para o centro da imagem"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to view center"
msgstr ""
msgstr "Mover para o centro da visão"
msgid "Current frame:"
msgstr "Quadro atual:"
@ -2077,10 +2116,10 @@ msgid "Go to the previous frame"
msgstr "Ir para o quadro anterior"
msgid "Play the animation backwards"
msgstr ""
msgstr "Reproduzir animação de trás para frente"
msgid "Play the animation forward"
msgstr ""
msgstr "Reproduzir animação"
msgid "Go to the next frame"
msgstr "Ir para o próximo quadro"
@ -2585,23 +2624,23 @@ msgstr "Cor de fundo padrão de uma nova imagem"
#. Found in the preferences, under the Reset category.
msgid "Reset all options available in the Preferences"
msgstr ""
msgstr "Redefinir todas as opções disponíveis nas Preferências"
#. Found in the preferences, under the Reset category.
msgid "Reset timeline options"
msgstr ""
msgstr "Redefinir opções da linha do tempo"
#. Found in the preferences, under the Reset category.
msgid "Reset all tool options"
msgstr ""
msgstr "Redefinir todas as opções de ferramenta"
#. Found in the preferences, under the Reset category.
msgid "Remove all extensions"
msgstr ""
msgstr "Remover todas as extensões"
#. Found in the preferences, under the Reset category.
msgid "Clear the recently opened file list"
msgstr ""
msgstr "Limpar a lista de arquivos abertos recentemente"
msgid "Lock aspect ratio"
msgstr "Fixar proporção"
@ -2780,11 +2819,11 @@ msgstr "Corta as imagens exportadas para sua parte visível, considerando cada p
#. Found in the export dialog. It is an option that allows users to only export the portions of the images that are within the selected area.
msgid "Clip image content to selection"
msgstr ""
msgstr "Cortar conteúdo da imagem para a seleção"
#. Found in the export dialog. Tooltip of the "clip image content to selection" option.
msgid "Only export content that is within the bounds of a selected area."
msgstr ""
msgstr "Exportar apenas o conteúdo que está dentro dos limites da área selecionada."
msgid "Close"
msgstr "Fechar"
@ -2885,6 +2924,10 @@ msgstr "Ordenar por saturação"
msgid "Sort by value"
msgstr "Ordenar por valor"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Ordenar pelo vermelho"
@ -3133,7 +3176,7 @@ msgstr "Texto:"
#. Refers to the depth of something, such as the depth of a 3D object.
msgid "Depth:"
msgstr ""
msgstr "Profundidade:"
#. Found in the tool options of the 3D Shape Edit tool, under the Mesh category if a Text object is selected. Refers to the size of one pixel's width on the text to scale it in 3D.
msgid "Pixel size:"
@ -3147,7 +3190,7 @@ msgid "Horizontal alignment:"
msgstr "Alinhamento horizontal:"
msgid "Vertical alignment:"
msgstr ""
msgstr "Alinhamento vertical:"
msgid "Left"
msgstr "Esquerda"
@ -3157,7 +3200,7 @@ msgstr "Direita"
#. Refers to the vertical space between lines in a text.
msgid "Line spacing:"
msgstr ""
msgstr "Espaçamento entre linhas:"
#. Found in the tool options of the 3D Shape Edit tool, under the Light category if a light is selected. Refers to the energy of the light. The more energy, the brighter it shines.
msgid "Energy:"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Portuguese\n"
"Language: pt_PT\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Limpar"
msgid "Invert"
msgstr "Inverter"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Visualização em escala de cinzentos"
@ -241,21 +278,18 @@ msgstr "Modo de Azuleijo"
msgid "Tile Mode Offsets"
msgstr "Desvios do Modo Mosaico"
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
msgstr "Máscara de mosaico"
msgid "Reset"
msgstr "Repor"
@ -1917,6 +1951,10 @@ msgstr "Preencher forma"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Preenche forma com cor, ao invés de desenhar uma forma vazia"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Cor de pincel de"
@ -2864,6 +2902,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Romanian\n"
"Language: ro_RO\n"
"PO-Revision-Date: 2024-10-22 10:34\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr "Ștergere"
msgid "Invert"
msgstr "Inversare"
msgid "Modify"
msgstr "Modificare"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Extindere"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Extindere selecție"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Micșorare"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Micșorare selecție"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Margine"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Selecție margine"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Diamant"
msgid "Circle"
msgstr "Cerc"
msgid "Square"
msgstr "Pătrat"
msgid "Grayscale View"
msgstr "Vizualizare în tonuri de gri"
@ -241,20 +278,17 @@ msgstr "Mod mozaic"
msgid "Tile Mode Offsets"
msgstr "Decalaje mod mozaic"
msgid "X-basis x:"
msgstr "Bază X x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "Bază X:"
msgid "X-basis y:"
msgstr "Bază X y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Bază Y:"
msgid "Y-basis x:"
msgstr "Bază Y x:"
msgid "Y-basis y:"
msgstr "Bază Y y:"
msgid "Tile Mask"
msgstr "Mască mozaic"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Mascare:"
msgid "Reset"
msgstr "Resetare"
@ -1937,6 +1971,10 @@ msgstr "Umplere formă"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "În locul desenării unei forme goale, forma desenată este umplută cu culoare"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Densitate:"
msgid "Brush color from"
msgstr "Culoarea pensulei de la"
@ -2884,6 +2922,10 @@ msgstr "Sortare după saturație"
msgid "Sort by value"
msgstr "Sortează după valoare"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Sortare după roșu"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Russian\n"
"Language: ru_RU\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-16 20:23\n"
msgid "OK"
msgstr "OK"
@ -101,7 +101,8 @@ msgstr "Включать смешанные изображения"
msgid "If enabled, the final blended images are also being stored in the pxo, for each frame.\n"
"This makes the pxo file larger and is useful for importing by third-party software\n"
"or CLI exporting. Loading pxo files in Pixelorama does not need this option to be enabled."
msgstr ""
msgstr "Если эта функция включена, смешанные изображения также сохраняются в .pxo для каждого кадра. Это увеличивает размер файла .pxo и полезно для импорта сторонними программами\n"
"или экспорта через CLI. Для загрузки файлов .pxo в Pixelorama, включение этой опции не требуется."
msgid "Import"
msgstr "Импортировать"
@ -216,6 +217,43 @@ msgstr "Очистить"
msgid "Invert"
msgstr "Инвертировать"
msgid "Modify"
msgstr "Изменить"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Раскрыть"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Раскрыть выбранное"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Сжать"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Сжать выделенное"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Граница"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Выбор границы"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Ромб"
msgid "Circle"
msgstr "Круг"
msgid "Square"
msgstr "Квадрат"
msgid "Grayscale View"
msgstr "Вид в оттенках серого"
@ -233,7 +271,7 @@ msgstr "Настройки"
#. An option in the View menu. When selected, the canvas is being placed on the center of the screen.
msgid "Center Canvas"
msgstr ""
msgstr "Центрировать холст"
msgid "Tile Mode"
msgstr "Режим тайла"
@ -241,20 +279,17 @@ msgstr "Режим тайла"
msgid "Tile Mode Offsets"
msgstr "Сдвиг в бесшовном режиме"
msgid "X-basis x:"
msgstr "X для X-базиса:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "Ось Х:"
msgid "X-basis y:"
msgstr "Y для X-базиса:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Ось Y:"
msgid "Y-basis x:"
msgstr "X для Y-базиса:"
msgid "Y-basis y:"
msgstr "Y для Y-базиса:"
msgid "Tile Mask"
msgstr "Тайловая маска"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Маскирование:"
msgid "Reset"
msgstr "Сброс"
@ -266,7 +301,7 @@ msgid "Reset Mask"
msgstr "Сбросить маску"
msgid "Window Opacity"
msgstr "Непрозрачность окна"
msgstr "Прозрачность окна"
msgid "Window opacity does not work on fullscreen mode."
msgstr "Прозрачность окна не работает в полноэкранном режиме."
@ -346,7 +381,7 @@ msgstr "Показать направляющие"
#. Found under the View menu.
msgid "Show Mouse Guides"
msgstr "Показывать направляющие курсора"
msgstr "Показать направляющие курсора"
#. Found under the View menu. When enabled, non-destructive layer effects will be visible on the canvas.
msgid "Display Layer Effects"
@ -564,7 +599,7 @@ msgstr "Изменить размер:"
#. Found in the export dialog, when exporting a jpeg file. Refers to the quality of the exported file.
msgid "Quality:"
msgstr ""
msgstr "Качество:"
msgid "Cancel Export"
msgstr "Отменить экспорт"
@ -696,7 +731,7 @@ msgstr "Изображение BMP"
#. Found in the "Open" file dialog. Searches "Radiance HDR" files only. (Note that "Radiance HDR" is a file type and is better untranslated)
msgid "Radiance HDR Image"
msgstr ""
msgstr "Изображение HDR Radiance"
#. Found in the "Open" file dialog. Searches JPEG files only. (Note that JPEG is a file type and should remain untranslated)
msgid "JPEG Image"
@ -848,7 +883,7 @@ msgstr "Масштаб интерфейса:"
#. Refers to the font of a text.
msgid "Font:"
msgstr ""
msgstr "Шрифт:"
#. Found in the preferences, under the interface section. Allows users to set the size of the font, ie the text.
msgid "Font size:"
@ -918,12 +953,13 @@ msgstr "Цвет фона:"
#. Found in the preferences, under the Tools category.
msgid "Share options between the left and the right tools"
msgstr ""
msgstr "Разделяет параметры между левыми и правыми инструментами"
#. Found in the preferences, under the Tools category. Tooltip of the "Share options between the left and the right tools" preference.
msgid "If this is enabled, options will be synced between the left and the right tool.\n"
"For example, both tools will share the same brush size, and changing it on one tool will instantly change on the other."
msgstr ""
msgstr "Если эта опция включена, параметры будут синхронизированы между левым и правым инструментом.\n"
"Например, оба инструмента будут использовать один и тот же размер кисти, и его изменение в одном инструменте мгновенно отразится на другом."
msgid "Left tool color:"
msgstr "Цвет левого инструмента:"
@ -996,23 +1032,23 @@ msgstr "Цвет тени:"
#. An image effect. https://en.wikipedia.org/wiki/Gaussian_blur
msgid "Gaussian Blur"
msgstr ""
msgstr "Размытие по Гауссу"
#. The type of the Gaussian blur, an image effect.
msgid "Blur type:"
msgstr ""
msgstr "Тип размытия:"
#. The applied amount of Gaussian blur, an image effect.
msgid "Blur amount:"
msgstr ""
msgstr "Количество размытия:"
#. The applied radius of Gaussian blur, an image effect.
msgid "Blur radius:"
msgstr ""
msgstr "Радиус размытия:"
#. The applied direction of Gaussian blur, an image effect.
msgid "Blur direction:"
msgstr ""
msgstr "Направление размытия:"
msgid "Gradient"
msgstr "Градиент"
@ -1075,7 +1111,7 @@ msgstr "Угол:"
#. An image effect. Adjusts the hue, saturation and value of the colors of an image. See Pixelorama's documentation page for more information: https://www.oramainteractive.com/Pixelorama-Docs/user_manual/image_effects
msgid "Adjust Hue/Saturation/Value"
msgstr "Изменить Оттенок/Насыщенность/Яркость"
msgstr "Изменить оттенок/насыщенность/яркость"
#. HSV stands for Hue, Saturation & Value.
msgid "Adjust HSV"
@ -1123,7 +1159,7 @@ msgstr "Цвет плитки:"
#. Refers to the factor (how much) a color tints an image.
msgid "Tint effect factor:"
msgstr ""
msgstr "Параметр эффекта тонировки:"
msgid "Apply"
msgstr "Применить"
@ -1554,7 +1590,7 @@ msgstr "Выберите цвет на экране."
#. Tooltip of the color text field found in the color picker panel that lets users change the color by hex code or english name ("red" cannot be translated).
msgid "Enter a hex code (\"#ff0000\") or named color (\"red\")."
msgstr ""
msgstr "Введите шестнадцатеричный код (\"#ff0000\") или название цвета (\"красный\")."
#. Tooltip of the button found in the color picker panel that lets users change the shape of the color picker.
msgid "Select a picker shape."
@ -1566,15 +1602,15 @@ msgstr "Настройки цвета"
#. Tooltip of the button with three dots found under color options in the color picker panel that lets users change the mode of the color picker/sliders.
msgid "Select a picker mode."
msgstr ""
msgstr "Выбрать режим пикера."
#. Checkbox found in the menu of the button with three dots found under color options in the color picker panel.
msgid "Colorized Sliders"
msgstr ""
msgstr "Цветные ползунки"
#. Shows saved colors in certain color picker menus.
msgid "Swatches"
msgstr ""
msgstr "Образцы"
#. Found under color options in the color picker panel.
msgid "Recent Colors"
@ -1779,7 +1815,7 @@ msgstr "Постоянно обновлять"
#. Found in the preferences, hint of the "Update continuously" option.
msgid "If this is toggled on, the application will redraw the screen continuously, even while it's not used. Turning this off helps lower CPU and GPU usage when idle."
msgstr ""
msgstr "Если включено, приложение будет перерисовывать экран постоянно, даже если он не используется. Отключение этого режима поможет снизить нагрузку на процессор и GPU."
#. An option found in the preferences, under the Performance section.
msgid "Enable window transparency"
@ -1933,6 +1969,10 @@ msgstr "Заполнить фигуру"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Заполняет нарисованную фигуру цветом, вместо того, чтобы нарисовать пустую фигуру"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Плотность:"
msgid "Brush color from"
msgstr "Цвет кисти из"
@ -2050,11 +2090,11 @@ msgstr "Режим рисования с вертикальным зеркали
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to canvas center"
msgstr ""
msgstr "Переместить в центр холста"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to view center"
msgstr ""
msgstr "Переместить в центр"
msgid "Current frame:"
msgstr "Текущий кадр:"
@ -2072,10 +2112,10 @@ msgid "Go to the previous frame"
msgstr "На предыдущий кадр"
msgid "Play the animation backwards"
msgstr ""
msgstr "Воспроизвести анимацию назад"
msgid "Play the animation forward"
msgstr ""
msgstr "Воспроизвести анимацию вперед"
msgid "Go to the next frame"
msgstr "На следующий кадр"
@ -2354,7 +2394,7 @@ msgid "Luminosity"
msgstr "Яркость"
msgid "Opacity:"
msgstr "Непрозрачность:"
msgstr "Прозрачность:"
msgid "Tile mode opacity:"
msgstr "Режим прозрачности тайла:"
@ -2580,23 +2620,23 @@ msgstr "Цвет фона по умолчанию для нового изобр
#. Found in the preferences, under the Reset category.
msgid "Reset all options available in the Preferences"
msgstr ""
msgstr "Сбросить все параметры, доступные в настройках"
#. Found in the preferences, under the Reset category.
msgid "Reset timeline options"
msgstr ""
msgstr "Сброс настроек шкалы времени"
#. Found in the preferences, under the Reset category.
msgid "Reset all tool options"
msgstr ""
msgstr "Сбросить параметры всех инструментов"
#. Found in the preferences, under the Reset category.
msgid "Remove all extensions"
msgstr ""
msgstr "Удалить все расширения"
#. Found in the preferences, under the Reset category.
msgid "Clear the recently opened file list"
msgstr ""
msgstr "Очистить список недавно открытых файлов"
msgid "Lock aspect ratio"
msgstr "Заблокировать соотношение сторон"
@ -2767,19 +2807,19 @@ msgstr "Символы, разделяющие имя файла и номер
#. Found in the export dialog. It is an option that removes the transparent area around non-transparent pixels of the exported images.
msgid "Trim images"
msgstr ""
msgstr "Обрезать изображения"
#. Found in the export dialog. Tooltip of the "trim images" option.
msgid "Trims the exported images to their visible portion, considering each pixel with a non-zero alpha channel as visible."
msgstr ""
msgstr "Обрезает экспортированные изображения по видимой части, принимая во внимание каждый пиксел с каналом альфа ненуля как видимый."
#. Found in the export dialog. It is an option that allows users to only export the portions of the images that are within the selected area.
msgid "Clip image content to selection"
msgstr ""
msgstr "Выбор содержимого изображения"
#. Found in the export dialog. Tooltip of the "clip image content to selection" option.
msgid "Only export content that is within the bounds of a selected area."
msgstr ""
msgstr "Экспортировать только содержимое, находящееся в пределах выбранной области."
msgid "Close"
msgstr "Закрыть"
@ -2880,6 +2920,10 @@ msgstr "Отсортировать по насыщенности"
msgid "Sort by value"
msgstr "Отсортировать по значению"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "Сортировать по светлости"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Отсортировать по красному"
@ -3128,7 +3172,7 @@ msgstr "Текст:"
#. Refers to the depth of something, such as the depth of a 3D object.
msgid "Depth:"
msgstr ""
msgstr "Глубина:"
#. Found in the tool options of the 3D Shape Edit tool, under the Mesh category if a Text object is selected. Refers to the size of one pixel's width on the text to scale it in 3D.
msgid "Pixel size:"
@ -3142,7 +3186,7 @@ msgid "Horizontal alignment:"
msgstr "Горизонтальное выравнивание:"
msgid "Vertical alignment:"
msgstr ""
msgstr "Вертикальное выравнивание:"
msgid "Left"
msgstr "Слева"
@ -3152,7 +3196,7 @@ msgstr "Справа"
#. Refers to the vertical space between lines in a text.
msgid "Line spacing:"
msgstr ""
msgstr "Интервал линии:"
#. Found in the tool options of the 3D Shape Edit tool, under the Light category if a light is selected. Refers to the energy of the light. The more energy, the brighter it shines.
msgid "Energy:"
@ -3259,12 +3303,13 @@ msgstr "Монохром"
#. Found in the Reference Images panel when no reference image has been imported.
msgid "When opening an image, it may be imported as a reference."
msgstr ""
msgstr "При открытии изображения он может быть импортирован в качестве референса."
#. Found in the Reference Images panel after a reference image has been imported.
msgid "Select an image below to change its properties.\n"
"Note that you cannot draw while a reference image is selected."
msgstr ""
msgstr "Выберите изображение ниже, чтобы изменить его свойства.\n"
"Обратите внимание, что нельзя рисовать, пока выбрано референсное изображение."
#. Removes the selected reference image.
msgid "Remove"
@ -3276,7 +3321,7 @@ msgstr "Удерживайте Shift, чтобы мгновенно удалит
#. Shown in the confirmation dialog for removing a reference image.
msgid "Are you sure you want to remove this reference image? It will not be deleted from your file system."
msgstr ""
msgstr "Вы уверены, что хотите удалить референсное изображение? Оно не будет удалено из вашей файловой системы."
#. Moves the reference image up in the list
msgid "Move the selected reference image to the right"
@ -3328,11 +3373,11 @@ msgstr "Фильтр"
#. Opacity of the selected reference image on the canvas.
msgid "Opacity"
msgstr "Непрозрачность"
msgstr "Прозрачность"
#. Color clamping of the selected reference image on the canvas.
msgid "Color Clamping"
msgstr ""
msgstr "Цветовая гамма"
#. Used in checkbuttons (like on/off switches) that enable/disable something.
msgid "Enabled"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Sinhala\n"
"Language: si_LK\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "හරි"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Slovak\n"
"Language: sk_SK\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Slovenian\n"
"Language: sl_SI\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Albanian\n"
"Language: sq_AL\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "Ne rregull"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Serbian (Cyrillic)\n"
"Language: sr_SP\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "ОК"
@ -216,6 +216,43 @@ msgstr "Брисати"
msgid "Invert"
msgstr "Обрнути"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "Бешавни режим"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Swedish\n"
"Language: sv_SE\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "Okej"
@ -216,6 +216,43 @@ msgstr "Rensa"
msgid "Invert"
msgstr "Invertera"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Gråskalevy"
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Swahili\n"
"Language: sw_KE\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Tamil\n"
"Language: ta_IN\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Thai\n"
"Language: th_TH\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Klingon\n"
"Language: tlh_AA\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr ""
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Turkish\n"
"Language: tr_TR\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 18:59\n"
msgid "OK"
msgstr "Tamam"
@ -218,6 +218,43 @@ msgstr "Temizle"
msgid "Invert"
msgstr "Ters Çevir"
msgid "Modify"
msgstr "Değiştir"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr "Genişlet"
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr "Seçimi Genişlet"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr "Küçült"
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr "Seçimi Daralt"
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr "Kenarlık"
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr "Kenarlık Seçimi"
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr "Karo"
msgid "Circle"
msgstr "Daire"
msgid "Square"
msgstr "Kare"
msgid "Grayscale View"
msgstr "Gri Tonlamalı Görünüm"
@ -235,7 +272,7 @@ msgstr "Tercihler"
#. An option in the View menu. When selected, the canvas is being placed on the center of the screen.
msgid "Center Canvas"
msgstr ""
msgstr "Tuvale Ortala"
msgid "Tile Mode"
msgstr "Döşeme Kipi"
@ -243,20 +280,17 @@ msgstr "Döşeme Kipi"
msgid "Tile Mode Offsets"
msgstr "Döşeme Kipi Uzaklıkları"
msgid "X-basis x:"
msgstr "X-tabanlı x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr "X-tabanlı:"
msgid "X-basis y:"
msgstr "Y-tabanlı y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr "Y-tabanlı:"
msgid "Y-basis x:"
msgstr "Y-tabanlı x:"
msgid "Y-basis y:"
msgstr "Y-tabanlı y:"
msgid "Tile Mask"
msgstr "Döşeme Maskesi"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr "Maskeleme:"
msgid "Reset"
msgstr "Sıfırla"
@ -850,7 +884,7 @@ msgstr "Ekran ölçeği:"
#. Refers to the font of a text.
msgid "Font:"
msgstr ""
msgstr "Yazı Tipi:"
#. Found in the preferences, under the interface section. Allows users to set the size of the font, ie the text.
msgid "Font size:"
@ -920,12 +954,13 @@ msgstr "Arkaplan rengi:"
#. Found in the preferences, under the Tools category.
msgid "Share options between the left and the right tools"
msgstr ""
msgstr "Sol ve sağ araçlar arasında seçenekleri paylaş"
#. Found in the preferences, under the Tools category. Tooltip of the "Share options between the left and the right tools" preference.
msgid "If this is enabled, options will be synced between the left and the right tool.\n"
"For example, both tools will share the same brush size, and changing it on one tool will instantly change on the other."
msgstr ""
msgstr "Etkinleştirilirse, seçenekler sol ve sağ araç arasında eşzamanlanır.\n"
"Örneğin, her iki araç da aynı fırça boyutunu paylaşır ve bir araçta değiştirildiğinde anında diğerinde de değişir."
msgid "Left tool color:"
msgstr "Sol araç rengi:"
@ -1938,6 +1973,10 @@ msgstr "Şekli Doldur"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "İçi boş bir şekil çizmek yerine çizilen şekli renkle doldurur"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr "Yoğunluk:"
msgid "Brush color from"
msgstr "Fırça rengini buradan"
@ -2780,11 +2819,11 @@ msgstr "Dışa aktarılan görüntüleri görünür kısımlarına kırpar, sıf
#. Found in the export dialog. It is an option that allows users to only export the portions of the images that are within the selected area.
msgid "Clip image content to selection"
msgstr ""
msgstr "Görüntü içeriğini seçime tuttur"
#. Found in the export dialog. Tooltip of the "clip image content to selection" option.
msgid "Only export content that is within the bounds of a selected area."
msgstr ""
msgstr "Yalnızca seçilen alanın sınırları içindeki içeriği dışa aktar."
msgid "Close"
msgstr "Kapat"
@ -2885,6 +2924,10 @@ msgstr "Doygunluğa göre sırala"
msgid "Sort by value"
msgstr "Değere göre sırala"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr "Aydınlığa göre sırala"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "Kırmızıya göre sırala"
@ -3134,7 +3177,7 @@ msgstr "Metin:"
#. Refers to the depth of something, such as the depth of a 3D object.
msgid "Depth:"
msgstr ""
msgstr "Derinlik:"
#. Found in the tool options of the 3D Shape Edit tool, under the Mesh category if a Text object is selected. Refers to the size of one pixel's width on the text to scale it in 3D.
msgid "Pixel size:"
@ -3148,7 +3191,7 @@ msgid "Horizontal alignment:"
msgstr "Yatay hizalama:"
msgid "Vertical alignment:"
msgstr ""
msgstr "Dikey hizalama:"
msgid "Left"
msgstr "Sol"
@ -3158,7 +3201,7 @@ msgstr "Sağ"
#. Refers to the vertical space between lines in a text.
msgid "Line spacing:"
msgstr ""
msgstr "Satır aralığı:"
#. Found in the tool options of the 3D Shape Edit tool, under the Light category if a light is selected. Refers to the energy of the light. The more energy, the brighter it shines.
msgid "Energy:"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Ukrainian\n"
"Language: uk_UA\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:30\n"
msgid "OK"
msgstr "Гаразд"
@ -218,6 +218,43 @@ msgstr "Очистити"
msgid "Invert"
msgstr "Інвертувати"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "Сірий режим перегляду"
@ -243,20 +280,17 @@ msgstr "Безшовний режим"
msgid "Tile Mode Offsets"
msgstr "Зміщення в безшовному режимі"
msgid "X-basis x:"
msgstr "X для X-базису:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "Y для X-базису:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "X для Y-базису:"
msgid "Y-basis y:"
msgstr "Y для Y-базису:"
msgid "Tile Mask"
msgstr "Тайлова маска"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "Скинути"
@ -566,7 +600,7 @@ msgstr "Змінити розмір:"
#. Found in the export dialog, when exporting a jpeg file. Refers to the quality of the exported file.
msgid "Quality:"
msgstr ""
msgstr "Якість:"
msgid "Cancel Export"
msgstr "Скасувати експорт"
@ -850,11 +884,11 @@ msgstr "Масштаб екрану:"
#. Refers to the font of a text.
msgid "Font:"
msgstr ""
msgstr "Шрифт:"
#. Found in the preferences, under the interface section. Allows users to set the size of the font, ie the text.
msgid "Font size:"
msgstr ""
msgstr "Розмір шрифту:"
msgid "Dim interface on dialog popup"
msgstr "Затемнити інтерфейс під діалоговими вікнами"
@ -1002,7 +1036,7 @@ msgstr ""
#. The type of the Gaussian blur, an image effect.
msgid "Blur type:"
msgstr ""
msgstr "Тип розмиття:"
#. The applied amount of Gaussian blur, an image effect.
msgid "Blur amount:"
@ -1010,11 +1044,11 @@ msgstr ""
#. The applied radius of Gaussian blur, an image effect.
msgid "Blur radius:"
msgstr ""
msgstr "Радіус розмиття:"
#. The applied direction of Gaussian blur, an image effect.
msgid "Blur direction:"
msgstr ""
msgstr "Напрямок розмиття:"
msgid "Gradient"
msgstr "Градієнт"
@ -1102,23 +1136,23 @@ msgstr ""
#. Refers to the brightness of the colors of an image.
msgid "Brightness:"
msgstr ""
msgstr "Яскравість:"
#. Refers to the contrast of the colors of an image.
msgid "Contrast:"
msgstr ""
msgstr "Контраст:"
#. Refers to the red value of the colors of an image.
msgid "Red value:"
msgstr ""
msgstr "Значення червоного:"
#. Refers to the green value of the colors of an image.
msgid "Green value:"
msgstr ""
msgstr "Значення зеленого:"
#. Refers to the blue value of the colors of an image.
msgid "Blue value:"
msgstr ""
msgstr "Значення синього:"
#. Refers to a color that tints an image.
msgid "Tint color:"
@ -1187,7 +1221,7 @@ msgstr "Про Pixelorama"
#. Found under the Help menu. When clicked, it opens the URL of Orama Interactive's patreon page.
msgid "Support Pixelorama's Development"
msgstr ""
msgstr "Підтримка розробки Pixelorama"
msgid "Pixelorama - Pixelate your dreams!"
msgstr "Pixelorama - пікселізуйте свої мрії!"
@ -1315,7 +1349,7 @@ msgstr "Білоруська"
#. Found in the About dialog.
msgid "Lead Developer"
msgstr ""
msgstr "Головний розробник"
#. Found in the About dialog.
msgid "UI Designer"
@ -1323,7 +1357,7 @@ msgstr "UI дизайнер"
#. Found in the About dialog. Refers to the people who have contributed code to the project.
msgid "Authors"
msgstr ""
msgstr "Автори"
msgid "Art by: %s"
msgstr "Художник: %s"
@ -1929,6 +1963,10 @@ msgstr "Залити фігуру"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "Заливає намальовану фігуру кольором замість того, щоб малювати лише контур"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "Колір пензля з"
@ -2876,6 +2914,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Vietnamese\n"
"Language: vi_VN\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "OK"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr ""
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1875,6 +1909,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr ""
@ -2818,6 +2856,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Chinese Simplified\n"
"Language: zh_CN\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "确定"
@ -218,6 +218,43 @@ msgstr "取消选中"
msgid "Invert"
msgstr "反向"
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr "灰度视图"
@ -235,7 +272,7 @@ msgstr "首选项"
#. An option in the View menu. When selected, the canvas is being placed on the center of the screen.
msgid "Center Canvas"
msgstr ""
msgstr "居中画布"
msgid "Tile Mode"
msgstr "平铺模式"
@ -243,20 +280,17 @@ msgstr "平铺模式"
msgid "Tile Mode Offsets"
msgstr "平铺模式偏移"
msgid "X-basis x:"
msgstr "X-基准 x"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
msgstr "X-基准 y"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr "Y-基准 x"
msgid "Y-basis y:"
msgstr "Y-基准 y"
msgid "Tile Mask"
msgstr "平铺蒙版"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
msgstr "重置"
@ -850,7 +884,7 @@ msgstr "显示比例:"
#. Refers to the font of a text.
msgid "Font:"
msgstr ""
msgstr "字体:"
#. Found in the preferences, under the interface section. Allows users to set the size of the font, ie the text.
msgid "Font size:"
@ -920,12 +954,13 @@ msgstr "背景颜色:"
#. Found in the preferences, under the Tools category.
msgid "Share options between the left and the right tools"
msgstr ""
msgstr "在左侧和右侧工具之间共享选项"
#. Found in the preferences, under the Tools category. Tooltip of the "Share options between the left and the right tools" preference.
msgid "If this is enabled, options will be synced between the left and the right tool.\n"
"For example, both tools will share the same brush size, and changing it on one tool will instantly change on the other."
msgstr ""
msgstr "如果启用此功能,左侧和右侧工具之间的选项将同步。\n"
"例如,两个工具将共享相同的画笔大小,并且在一个工具上更改它会立即在另一个工具上更改。"
msgid "Left tool color:"
msgstr "左侧工具颜色:"
@ -1937,6 +1972,10 @@ msgstr "填充形状"
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr "用颜色填充绘制的形状,而不是绘制空心形状"
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "画笔颜色从"
@ -2054,11 +2093,11 @@ msgstr "启用垂直镜像绘图"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to canvas center"
msgstr ""
msgstr "移动到画布中心"
#. Found in the global tool options, in the menu that appears next to each mirror button. It affects the position of a symmetry guide.
msgid "Move to view center"
msgstr ""
msgstr "移动到视图中心"
msgid "Current frame:"
msgstr "当前帧:"
@ -2076,10 +2115,10 @@ msgid "Go to the previous frame"
msgstr "转到上一帧"
msgid "Play the animation backwards"
msgstr ""
msgstr "向后播放动画"
msgid "Play the animation forward"
msgstr ""
msgstr "向前播放动画"
msgid "Go to the next frame"
msgstr "转到下一帧"
@ -2584,23 +2623,23 @@ msgstr "设置新建图像的背景颜色"
#. Found in the preferences, under the Reset category.
msgid "Reset all options available in the Preferences"
msgstr ""
msgstr "重置首选项中的所有可用选项"
#. Found in the preferences, under the Reset category.
msgid "Reset timeline options"
msgstr ""
msgstr "重置时间轴选项"
#. Found in the preferences, under the Reset category.
msgid "Reset all tool options"
msgstr ""
msgstr "重置所有工具选项"
#. Found in the preferences, under the Reset category.
msgid "Remove all extensions"
msgstr ""
msgstr "移除所有扩展"
#. Found in the preferences, under the Reset category.
msgid "Clear the recently opened file list"
msgstr ""
msgstr "清除最近打开的文件列表"
msgid "Lock aspect ratio"
msgstr "锁定长宽比"
@ -2779,11 +2818,11 @@ msgstr "将导出的图像变为可见部分,考虑到非零透明通道的每
#. Found in the export dialog. It is an option that allows users to only export the portions of the images that are within the selected area.
msgid "Clip image content to selection"
msgstr ""
msgstr "剪辑图像内容到选择"
#. Found in the export dialog. Tooltip of the "clip image content to selection" option.
msgid "Only export content that is within the bounds of a selected area."
msgstr ""
msgstr "仅导出在选定区域界限内的内容。"
msgid "Close"
msgstr "关闭"
@ -2884,6 +2923,10 @@ msgstr "按饱和度排序"
msgid "Sort by value"
msgstr "按值排序"
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr "按红色排序"
@ -3132,7 +3175,7 @@ msgstr "文本:"
#. Refers to the depth of something, such as the depth of a 3D object.
msgid "Depth:"
msgstr ""
msgstr "深度:"
#. Found in the tool options of the 3D Shape Edit tool, under the Mesh category if a Text object is selected. Refers to the size of one pixel's width on the text to scale it in 3D.
msgid "Pixel size:"
@ -3146,7 +3189,7 @@ msgid "Horizontal alignment:"
msgstr "水平对齐"
msgid "Vertical alignment:"
msgstr ""
msgstr "垂直对齐:"
msgid "Left"
msgstr "左"
@ -3156,7 +3199,7 @@ msgstr "右"
#. Refers to the vertical space between lines in a text.
msgid "Line spacing:"
msgstr ""
msgstr "行间距:"
#. Found in the tool options of the 3D Shape Edit tool, under the Light category if a light is selected. Refers to the energy of the light. The more energy, the brighter it shines.
msgid "Energy:"

View file

@ -10,7 +10,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Language-Team: Chinese Traditional\n"
"Language: zh_TW\n"
"PO-Revision-Date: 2024-10-17 14:11\n"
"PO-Revision-Date: 2024-11-15 17:31\n"
msgid "OK"
msgstr "確定"
@ -216,6 +216,43 @@ msgstr ""
msgid "Invert"
msgstr ""
msgid "Modify"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users expand the active selection.
msgid "Expand"
msgstr ""
#. Title of a window that lets users expand the active selection.
msgid "Expand Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users shrink the active selection.
msgid "Shrink"
msgstr ""
#. Title of a window that lets users shrink the active selection.
msgid "Shrink Selection"
msgstr ""
#. Found under the Select menu, in the Modify submenu. When selected, it shows a window that lets users create a border of the active selection.
msgid "Border"
msgstr ""
#. Title of a window that lets users create a border of the active selection.
msgid "Border Selection"
msgstr ""
#. Refers to a diamond-like shape.
msgid "Diamond"
msgstr ""
msgid "Circle"
msgstr ""
msgid "Square"
msgstr ""
msgid "Grayscale View"
msgstr ""
@ -241,19 +278,16 @@ msgstr "拼圖模式"
msgid "Tile Mode Offsets"
msgstr ""
msgid "X-basis x:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "X-basis:"
msgstr ""
msgid "X-basis y:"
#. Found under "Tile Mode Offsets". Basis is a linear algebra term. https://en.wikipedia.org/wiki/Basis_(linear_algebra)
msgid "Y-basis:"
msgstr ""
msgid "Y-basis x:"
msgstr ""
msgid "Y-basis y:"
msgstr ""
msgid "Tile Mask"
#. Found under "Tile Mode Offsets". It's a button that when pressed, enables masking for tile mode. Masking essentially limits drawing to the visible pixels of the image, thus preventing from drawing on transparent pixels.
msgid "Masking:"
msgstr ""
msgid "Reset"
@ -1885,6 +1919,10 @@ msgstr ""
msgid "Fills the drawn shape with color, instead of drawing a hollow shape"
msgstr ""
#. Found in the tool options of the Pencil, Eraser and Shading tools. It is a percentage of how dense the brush is. 100% density means that the brush gets completely drawn, anything less leaves gaps inside the brush, acting like a spray tool.
msgid "Density:"
msgstr ""
msgid "Brush color from"
msgstr "畫筆顏色"
@ -2829,6 +2867,10 @@ msgstr ""
msgid "Sort by value"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their OKHSL Lightness.
msgid "Sort by lightness"
msgstr ""
#. An option of the Sort palette button found in the palette panel. When selected, the colors of the palette are being sorted based on their red channel value.
msgid "Sort by red"
msgstr ""

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dn66bu1htli0i"
path="res://.godot/imported/text.png-e400a2b9b6a87e25638acb803c02cdbf.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/graphics/tools/cursors/text.png"
dest_files=["res://.godot/imported/text.png-e400a2b9b6a87e25638acb803c02cdbf.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 246 B

View file

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bwpucajlx84xt"
path="res://.godot/imported/text.png-627e4dab52ac32f8208bc01b5803fe72.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/graphics/tools/text.png"
dest_files=["res://.godot/imported/text.png-627e4dab52ac32f8208bc01b5803fe72.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View file

@ -83,8 +83,8 @@ application/modify_resources=true
application/icon="res://assets/graphics/icons/icon.ico"
application/console_wrapper_icon=""
application/icon_interpolation=4
application/file_version="1.0.5.0"
application/product_version="1.0.5.0"
application/file_version="1.1.0.0"
application/product_version="1.1.0.0"
application/company_name="Orama Interactive"
application/product_name="Pixelorama"
application/file_description="Pixelorama - Your free & open-source sprite editor"
@ -198,8 +198,8 @@ application/modify_resources=true
application/icon="res://assets/graphics/icons/icon.ico"
application/console_wrapper_icon=""
application/icon_interpolation=4
application/file_version="1.0.5.0"
application/product_version="1.0.5.0"
application/file_version="1.1.0.0"
application/product_version="1.1.0.0"
application/company_name="Orama Interactive"
application/product_name="Pixelorama"
application/file_description="Pixelorama - Your free & open-source sprite editor"
@ -402,8 +402,8 @@ application/icon_interpolation=4
application/bundle_identifier="com.orama-interactive.pixelorama"
application/signature=""
application/app_category="Graphics-design"
application/short_version="1.0.5"
application/version="1.0.5"
application/short_version="1.1.0"
application/version="1.1.0"
application/copyright="Orama Interactive and contributors 2019-present"
application/copyright_localized={}
application/min_macos_version="10.12"
@ -657,7 +657,7 @@ architectures/arm64-v8a=true
architectures/x86=false
architectures/x86_64=false
version/code=1
version/name="1.0.5"
version/name="1.1.0"
package/unique_name="com.orama_interactive.pixelorama"
package/name="Pixelorama"
package/signed=true

View file

@ -6,7 +6,7 @@
; Helper variables so that we don't change 20 instances of the version for every update
!define APPNAME "Pixelorama"
!define APPVERSION "v1.0.4"
!define APPVERSION "v1.0.5"
!define COMPANYNAME "Orama Interactive"

69
installer/po/kk-KZ.po Normal file
View file

@ -0,0 +1,69 @@
msgid ""
msgstr ""
"Project-Id-Version: pixelorama\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-07 04:44\n"
"PO-Revision-Date: 2024-11-15 13:41\n"
"Last-Translator: \n"
"Language-Team: Kazakh\n"
"Language: kk_KZ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Crowdin-Project: pixelorama\n"
"X-Crowdin-Project-ID: 385497\n"
"X-Crowdin-Language: kk\n"
"X-Crowdin-File: /master/installer/installer.pot\n"
"X-Crowdin-File-ID: 10\n"
#. SecInstall
#: ..\pixelorama.nsi:84
msgid "Install ${APPNAME}"
msgstr ""
#. SecStartmenu
#: ..\pixelorama.nsi:85
msgid "Create Start Menu shortcuts (optional)"
msgstr ""
#. SecDesktop
#: ..\pixelorama.nsi:86
msgid "Create shortcut on Desktop (optional)"
msgstr ""
#. un.SecUninstall
#: ..\pixelorama.nsi:87
msgid "Uninstall ${APPNAME} ${APPVERSION}"
msgstr ""
#. un.SecConfig
#: ..\pixelorama.nsi:88
msgid "Remove configuration files (optional)"
msgstr ""
#. DESC_SecInstall
#: ..\pixelorama.nsi:200
msgid "Installs ${APPNAME} ${APPVERSION}."
msgstr ""
#. DESC_SecStartmenu
#: ..\pixelorama.nsi:201
msgid "Creates Start Menu shortcuts for ${APPNAME}."
msgstr ""
#. DESC_SecDesktop
#: ..\pixelorama.nsi:202
msgid "Creates a Desktop shortcut for ${APPNAME}."
msgstr ""
#. DESC_un.SecUninstall
#: ..\pixelorama.nsi:203
msgid "Uninstalls ${APPNAME} ${APPVERSION} and removes all shortcuts."
msgstr ""
#. DESC_un.SecConfig
#: ..\pixelorama.nsi:204
msgid "Removes configuration files for ${APPNAME}."
msgstr ""

69
installer/po/mi-NZ.po Normal file
View file

@ -0,0 +1,69 @@
msgid ""
msgstr ""
"Project-Id-Version: pixelorama\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-05-07 04:44\n"
"PO-Revision-Date: 2024-11-15 13:41\n"
"Last-Translator: \n"
"Language-Team: Maori\n"
"Language: mi_NZ\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Crowdin-Project: pixelorama\n"
"X-Crowdin-Project-ID: 385497\n"
"X-Crowdin-Language: mi\n"
"X-Crowdin-File: /master/installer/installer.pot\n"
"X-Crowdin-File-ID: 10\n"
#. SecInstall
#: ..\pixelorama.nsi:84
msgid "Install ${APPNAME}"
msgstr ""
#. SecStartmenu
#: ..\pixelorama.nsi:85
msgid "Create Start Menu shortcuts (optional)"
msgstr ""
#. SecDesktop
#: ..\pixelorama.nsi:86
msgid "Create shortcut on Desktop (optional)"
msgstr ""
#. un.SecUninstall
#: ..\pixelorama.nsi:87
msgid "Uninstall ${APPNAME} ${APPVERSION}"
msgstr ""
#. un.SecConfig
#: ..\pixelorama.nsi:88
msgid "Remove configuration files (optional)"
msgstr ""
#. DESC_SecInstall
#: ..\pixelorama.nsi:200
msgid "Installs ${APPNAME} ${APPVERSION}."
msgstr ""
#. DESC_SecStartmenu
#: ..\pixelorama.nsi:201
msgid "Creates Start Menu shortcuts for ${APPNAME}."
msgstr ""
#. DESC_SecDesktop
#: ..\pixelorama.nsi:202
msgid "Creates a Desktop shortcut for ${APPNAME}."
msgstr ""
#. DESC_un.SecUninstall
#: ..\pixelorama.nsi:203
msgid "Uninstalls ${APPNAME} ${APPVERSION} and removes all shortcuts."
msgstr ""
#. DESC_un.SecConfig
#: ..\pixelorama.nsi:204
msgid "Removes configuration files for ${APPNAME}."
msgstr ""

View file

@ -12,7 +12,7 @@ config_version=5
config/name="Pixelorama"
config/description="Unleash your creativity with Pixelorama, a powerful and accessible open-source pixel art multitool. Whether you want to create sprites, tiles, animations, or just express yourself in the language of pixel art, this software will realize your pixel-perfect dreams with a vast toolbox of features."
config/version="v1.0.5-dev"
config/version="v1.1-dev"
run/main_scene="res://src/Main.tscn"
config/use_custom_user_dir=true
config/custom_user_dir_name="pixelorama"
@ -911,6 +911,16 @@ center_canvas={
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":true,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":67,"physical_keycode":0,"key_label":0,"unicode":67,"location":0,"echo":false,"script":null)
]
}
left_text_tool={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null)
]
}
right_text_tool={
"deadzone": 0.5,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":true,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null)
]
}
[input_devices]

View file

@ -217,7 +217,7 @@ func get_ellipse_points_filled(pos: Vector2i, size: Vector2i, thickness := 1) ->
func scale_3x(sprite: Image, tol := 0.196078) -> Image:
var scaled := Image.create(
sprite.get_width() * 3, sprite.get_height() * 3, false, Image.FORMAT_RGBA8
sprite.get_width() * 3, sprite.get_height() * 3, sprite.has_mipmaps(), sprite.get_format()
)
var width_minus_one := sprite.get_width() - 1
var height_minus_one := sprite.get_height() - 1
@ -509,6 +509,8 @@ func similar_colors(c1: Color, c2: Color, tol := 0.392157) -> bool:
func center(indices: Array) -> void:
var project := Global.current_project
Global.canvas.selection.transform_content_confirm()
var redo_data := {}
var undo_data := {}
project.undos += 1
project.undo_redo.create_action("Center Frames")
for frame in indices:
@ -528,15 +530,20 @@ func center(indices: Array) -> void:
for cel in project.frames[frame].cels:
if not cel is PixelCel:
continue
var sprite := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
sprite.blend_rect(cel.image, used_rect, offset)
Global.undo_redo_compress_images({cel.image: sprite.data}, {cel.image: cel.image.data})
var cel_image := (cel as PixelCel).get_image()
var tmp_centered := project.new_empty_image()
tmp_centered.blend_rect(cel.image, used_rect, offset)
var centered := ImageExtended.new()
centered.copy_from_custom(tmp_centered, cel_image.is_indexed)
centered.add_data_to_dictionary(redo_data, cel_image)
cel_image.add_data_to_dictionary(undo_data)
Global.undo_redo_compress_images(redo_data, undo_data)
project.undo_redo.add_undo_method(Global.undo_or_redo.bind(true))
project.undo_redo.add_do_method(Global.undo_or_redo.bind(false))
project.undo_redo.commit_action()
func scale_image(width: int, height: int, interpolation: int) -> void:
func scale_project(width: int, height: int, interpolation: int) -> void:
var redo_data := {}
var undo_data := {}
for f in Global.current_project.frames:
@ -544,30 +551,47 @@ func scale_image(width: int, height: int, interpolation: int) -> void:
var cel := f.cels[i]
if not cel is PixelCel:
continue
var sprite := Image.new()
sprite.copy_from(cel.get_image())
if interpolation == Interpolation.SCALE3X:
var times := Vector2i(
ceili(width / (3.0 * sprite.get_width())),
ceili(height / (3.0 * sprite.get_height()))
)
for _j in range(maxi(times.x, times.y)):
sprite.copy_from(scale_3x(sprite))
sprite.resize(width, height, Image.INTERPOLATE_NEAREST)
elif interpolation == Interpolation.CLEANEDGE:
var gen := ShaderImageEffect.new()
gen.generate_image(sprite, clean_edge_shader, {}, Vector2i(width, height))
elif interpolation == Interpolation.OMNISCALE and omniscale_shader:
var gen := ShaderImageEffect.new()
gen.generate_image(sprite, omniscale_shader, {}, Vector2i(width, height))
else:
sprite.resize(width, height, interpolation)
redo_data[cel.image] = sprite.data
undo_data[cel.image] = cel.image.data
var cel_image := (cel as PixelCel).get_image()
var sprite := _resize_image(cel_image, width, height, interpolation) as ImageExtended
sprite.add_data_to_dictionary(redo_data, cel_image)
cel_image.add_data_to_dictionary(undo_data)
general_do_and_undo_scale(width, height, redo_data, undo_data)
func _resize_image(
image: Image, width: int, height: int, interpolation: Image.Interpolation
) -> Image:
var new_image: Image
if image is ImageExtended:
new_image = ImageExtended.new()
new_image.is_indexed = image.is_indexed
new_image.copy_from(image)
new_image.select_palette("", false)
else:
new_image = Image.new()
new_image.copy_from(image)
if interpolation == Interpolation.SCALE3X:
var times := Vector2i(
ceili(width / (3.0 * new_image.get_width())),
ceili(height / (3.0 * new_image.get_height()))
)
for _j in range(maxi(times.x, times.y)):
new_image.copy_from(scale_3x(new_image))
new_image.resize(width, height, Image.INTERPOLATE_NEAREST)
elif interpolation == Interpolation.CLEANEDGE:
var gen := ShaderImageEffect.new()
gen.generate_image(new_image, clean_edge_shader, {}, Vector2i(width, height), false)
elif interpolation == Interpolation.OMNISCALE and omniscale_shader:
var gen := ShaderImageEffect.new()
gen.generate_image(new_image, omniscale_shader, {}, Vector2i(width, height), false)
else:
new_image.resize(width, height, interpolation)
if new_image is ImageExtended:
new_image.on_size_changed()
return new_image
## Sets the size of the project to be the same as the size of the active selection.
func crop_to_selection() -> void:
if not Global.current_project.has_selection:
@ -577,13 +601,13 @@ func crop_to_selection() -> void:
Global.canvas.selection.transform_content_confirm()
var rect: Rect2i = Global.canvas.selection.big_bounding_rectangle
# Loop through all the cels to crop them
for f in Global.current_project.frames:
for cel in f.cels:
if not cel is PixelCel:
continue
var sprite := cel.get_image().get_region(rect)
redo_data[cel.image] = sprite.data
undo_data[cel.image] = cel.image.data
for cel in Global.current_project.get_all_pixel_cels():
var cel_image := cel.get_image()
var tmp_cropped := cel_image.get_region(rect)
var cropped := ImageExtended.new()
cropped.copy_from_custom(tmp_cropped, cel_image.is_indexed)
cropped.add_data_to_dictionary(redo_data, cel_image)
cel_image.add_data_to_dictionary(undo_data)
general_do_and_undo_scale(rect.size.x, rect.size.y, redo_data, undo_data)
@ -615,13 +639,13 @@ func crop_to_content() -> void:
var redo_data := {}
var undo_data := {}
# Loop through all the cels to trim them
for f in Global.current_project.frames:
for cel in f.cels:
if not cel is PixelCel:
continue
var sprite := cel.get_image().get_region(used_rect)
redo_data[cel.image] = sprite.data
undo_data[cel.image] = cel.image.data
for cel in Global.current_project.get_all_pixel_cels():
var cel_image := cel.get_image()
var tmp_cropped := cel_image.get_region(used_rect)
var cropped := ImageExtended.new()
cropped.copy_from_custom(tmp_cropped, cel_image.is_indexed)
cropped.add_data_to_dictionary(redo_data, cel_image)
cel_image.add_data_to_dictionary(undo_data)
general_do_and_undo_scale(width, height, redo_data, undo_data)
@ -629,18 +653,17 @@ func crop_to_content() -> void:
func resize_canvas(width: int, height: int, offset_x: int, offset_y: int) -> void:
var redo_data := {}
var undo_data := {}
for f in Global.current_project.frames:
for cel in f.cels:
if not cel is PixelCel:
continue
var sprite := Image.create(width, height, false, Image.FORMAT_RGBA8)
sprite.blend_rect(
cel.get_image(),
Rect2i(Vector2i.ZERO, Global.current_project.size),
Vector2i(offset_x, offset_y)
for cel in Global.current_project.get_all_pixel_cels():
var cel_image := cel.get_image()
var resized := ImageExtended.create_custom(
width, height, cel_image.has_mipmaps(), cel_image.get_format(), cel_image.is_indexed
)
redo_data[cel.image] = sprite.data
undo_data[cel.image] = cel.image.data
resized.blend_rect(
cel_image, Rect2i(Vector2i.ZERO, cel_image.get_size()), Vector2i(offset_x, offset_y)
)
resized.convert_rgb_to_indexed()
resized.add_data_to_dictionary(redo_data, cel_image)
cel_image.add_data_to_dictionary(undo_data)
general_do_and_undo_scale(width, height, redo_data, undo_data)

View file

@ -161,7 +161,7 @@ func cache_blended_frames(project := Global.current_project) -> void:
blended_frames.clear()
var frames := _calculate_frames(project)
for frame in frames:
var image := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var image := project.new_empty_image()
_blend_layers(image, frame)
blended_frames[frame] = image
@ -208,7 +208,7 @@ func process_spritesheet(project := Global.current_project) -> void:
spritesheet_columns = temp
var width := project.size.x * spritesheet_columns
var height := project.size.y * spritesheet_rows
var whole_image := Image.create(width, height, false, Image.FORMAT_RGBA8)
var whole_image := Image.create(width, height, false, project.get_image_format())
var origin := Vector2i.ZERO
var hh := 0
var vv := 0
@ -287,10 +287,10 @@ func process_animation(project := Global.current_project) -> void:
ProcessedImage.new(image, project.frames.find(frame), duration)
)
else:
var image := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var image := project.new_empty_image()
image.copy_from(blended_frames[frame])
if erase_unselected_area and project.has_selection:
var crop := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var crop := project.new_empty_image()
var selection_image = project.selection_map.return_cropped_copy(project.size)
crop.blit_rect_mask(
image, selection_image, Rect2i(Vector2i.ZERO, image.get_size()), Vector2i.ZERO

View file

@ -46,6 +46,7 @@ enum WindowMenu { WINDOW_OPACITY, PANELS, LAYOUTS, MOVABLE_PANELS, ZEN_MODE, FUL
## Enumeration of items present in the Image Menu.
enum ImageMenu {
PROJECT_PROPERTIES,
COLOR_MODE,
RESIZE_CANVAS,
SCALE_IMAGE,
CROP_TO_SELECTION,
@ -178,10 +179,14 @@ var can_draw := true
var move_guides_on_canvas := true
var play_only_tags := true ## If [code]true[/code], animation plays only on frames of the same tag.
## (Intended to be used as getter only) Tells if the x-symmetry guide ( -- ) is visible.
## If true, the x symmetry guide ( -- ) is visible.
var show_x_symmetry_axis := false
## (Intended to be used as getter only) Tells if the y-symmetry guide ( | ) is visible.
## If true, the y symmetry guide ( | ) is visible.
var show_y_symmetry_axis := false
## If true, the x=y symmetry guide ( / ) is visible.
var show_x_y_symmetry_axis := false
## If true, the x==y symmetry guide ( \ ) is visible.
var show_x_minus_y_symmetry_axis := false
# Preferences
## Found in Preferences. If [code]true[/code], the last saved project will open on startup.
@ -332,55 +337,8 @@ var default_height := 64 ## Found in Preferences. The default height of startup
var default_fill_color := Color(0, 0, 0, 0)
## Found in Preferences. The distance to the guide or grig below which cursor snapping activates.
var snapping_distance := 32.0
## Found in Preferences. The grid type defined by [enum GridTypes] enum.
var grid_type := GridTypes.CARTESIAN:
set(value):
if value == grid_type:
return
grid_type = value
if is_instance_valid(canvas.grid):
canvas.grid.queue_redraw()
## Found in Preferences. The size of rectangular grid.
var grid_size := Vector2i(2, 2):
set(value):
if value == grid_size:
return
grid_size = value
if is_instance_valid(canvas.grid):
canvas.grid.queue_redraw()
## Found in Preferences. The size of isometric grid.
var isometric_grid_size := Vector2i(16, 8):
set(value):
if value == isometric_grid_size:
return
isometric_grid_size = value
if is_instance_valid(canvas.grid):
canvas.grid.queue_redraw()
## Found in Preferences. The grid offset from top-left corner of the canvas.
var grid_offset := Vector2i.ZERO:
set(value):
if value == grid_offset:
return
grid_offset = value
if is_instance_valid(canvas.grid):
canvas.grid.queue_redraw()
## Found in Preferences. If [code]true[/code], The grid draws over the area extended by
## tile-mode as well.
var grid_draw_over_tile_mode := false:
set(value):
if value == grid_draw_over_tile_mode:
return
grid_draw_over_tile_mode = value
if is_instance_valid(canvas.grid):
canvas.grid.queue_redraw()
## Found in Preferences. The color of grid.
var grid_color := Color.BLACK:
set(value):
if value == grid_color:
return
grid_color = value
if is_instance_valid(canvas.grid):
canvas.grid.queue_redraw()
## Contains dictionaries of individual grids.
var grids: Array[Grid] = []
## Found in Preferences. The minimum zoom after which pixel grid gets drawn if enabled.
var pixel_grid_show_at_zoom := 1500.0: # percentage
set(value):
@ -672,6 +630,62 @@ var cel_button_scene: PackedScene = load("res://src/UI/Timeline/CelButton.tscn")
@onready var error_dialog: AcceptDialog = control.find_child("ErrorDialog")
class Grid:
var grid_type := GridTypes.CARTESIAN:
set(value):
if value == grid_type:
return
grid_type = value
if is_instance_valid(Global.canvas.grid):
Global.canvas.grid.queue_redraw()
## Found in Preferences. The size of rectangular grid.
var grid_size := Vector2i(2, 2):
set(value):
if value == grid_size:
return
grid_size = value
if is_instance_valid(Global.canvas.grid):
Global.canvas.grid.queue_redraw()
## Found in Preferences. The size of isometric grid.
var isometric_grid_size := Vector2i(16, 8):
set(value):
if value == isometric_grid_size:
return
isometric_grid_size = value
if is_instance_valid(Global.canvas.grid):
Global.canvas.grid.queue_redraw()
## Found in Preferences. The grid offset from top-left corner of the canvas.
var grid_offset := Vector2i.ZERO:
set(value):
if value == grid_offset:
return
grid_offset = value
if is_instance_valid(Global.canvas.grid):
Global.canvas.grid.queue_redraw()
## Found in Preferences. If [code]true[/code], The grid draws over the area extended by
## tile-mode as well.
var grid_draw_over_tile_mode := false:
set(value):
if value == grid_draw_over_tile_mode:
return
grid_draw_over_tile_mode = value
if is_instance_valid(Global.canvas.grid):
Global.canvas.grid.queue_redraw()
## Found in Preferences. The color of grid.
var grid_color := Color.BLACK:
set(value):
if value == grid_color:
return
grid_color = value
if is_instance_valid(Global.canvas.grid):
Global.canvas.grid.queue_redraw()
func _init(properties := {}) -> void:
Global.grids.append(self)
for prop in properties.keys():
set(prop, properties[prop])
func _init() -> void:
# Load settings from the config file
config_cache.load(CONFIG_PATH)
@ -708,6 +722,8 @@ func _init() -> void:
func _ready() -> void:
# Initialize Grid
Grid.new() # gets auto added to grids array
_initialize_keychain()
default_width = config_cache.get_value("preferences", "default_width", default_width)
default_height = config_cache.get_value("preferences", "default_height", default_height)
@ -724,6 +740,10 @@ func _ready() -> void:
if get(pref) == null:
continue
var value = config_cache.get_value("preferences", pref)
if pref == "grids":
if value:
update_grids(value)
else:
set(pref, value)
if OS.is_sandboxed():
Global.use_native_file_dialogs = true
@ -731,6 +751,12 @@ func _ready() -> void:
project_switched.emit()
func update_grids(grids_data: Dictionary):
grids.clear()
for grid_idx in grids_data.size():
Grid.new(grids_data[grid_idx]) # gets auto added to grids array
func _initialize_keychain() -> void:
Keychain.config_file = config_cache
Keychain.actions = {
@ -1071,7 +1097,7 @@ func get_available_font_names() -> PackedStringArray:
func find_font_from_name(font_name: String) -> Font:
for font in loaded_fonts:
if font.get_font_name() == font_name:
return font
return font.duplicate()
for system_font_name in OS.get_system_fonts():
if system_font_name == font_name:
var system_font := SystemFont.new()
@ -1113,8 +1139,17 @@ func undo_redo_compress_images(
func undo_redo_draw_op(
image: Image, new_size: Vector2i, compressed_image_data: PackedByteArray, buffer_size: int
) -> void:
if image is ImageExtended and image.is_indexed:
# If using indexed mode,
# just convert the indices to RGB instead of setting the image data directly.
if image.get_size() != new_size:
image.crop(new_size.x, new_size.y)
image.convert_indexed_to_rgb()
else:
var decompressed := compressed_image_data.decompress(buffer_size)
image.set_data(new_size.x, new_size.y, image.has_mipmaps(), image.get_format(), decompressed)
image.set_data(
new_size.x, new_size.y, image.has_mipmaps(), image.get_format(), decompressed
)
## This method is used to write project setting overrides to the override.cfg file, located

View file

@ -150,7 +150,7 @@ func handle_loading_aimg(path: String, frames: Array) -> void:
if not frames_agree:
frame.duration = aimg_frame.duration * project.fps
var content := aimg_frame.content
content.convert(Image.FORMAT_RGBA8)
content.convert(project.get_image_format())
frame.cels.append(PixelCel.new(content, 1))
project.frames.append(frame)
@ -389,18 +389,23 @@ func save_pxo_file(
var frame_index := 1
for frame in project.frames:
if not autosave and include_blended:
var blended := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var blended := project.new_empty_image()
DrawingAlgos.blend_layers(blended, frame, Vector2i.ZERO, project)
zip_packer.start_file("image_data/final_images/%s" % frame_index)
zip_packer.write_file(blended.get_data())
zip_packer.close_file()
var cel_index := 1
for cel in frame.cels:
var cel_image := cel.get_image()
var cel_image := cel.get_image() as ImageExtended
if is_instance_valid(cel_image) and cel is PixelCel:
zip_packer.start_file("image_data/frames/%s/layer_%s" % [frame_index, cel_index])
zip_packer.write_file(cel_image.get_data())
zip_packer.close_file()
zip_packer.start_file(
"image_data/frames/%s/indices_layer_%s" % [frame_index, cel_index]
)
zip_packer.write_file(cel_image.indices_image.get_data())
zip_packer.close_file()
cel_index += 1
frame_index += 1
var brush_index := 0
@ -457,12 +462,13 @@ func save_pxo_file(
func open_image_as_new_tab(path: String, image: Image) -> void:
var project := Project.new([], path.get_file(), image.get_size())
project.layers.append(PixelLayer.new(project))
var layer := PixelLayer.new(project)
project.layers.append(layer)
Global.projects.append(project)
var frame := Frame.new()
image.convert(Image.FORMAT_RGBA8)
frame.cels.append(PixelCel.new(image, 1))
image.convert(project.get_image_format())
frame.cels.append(layer.new_cel_from_image(image))
project.frames.append(frame)
set_new_imported_tab(project, path)
@ -475,15 +481,18 @@ func open_image_as_spritesheet_tab_smart(
frame_size = image.get_size()
sliced_rects.append(Rect2i(Vector2i.ZERO, frame_size))
var project := Project.new([], path.get_file(), frame_size)
project.layers.append(PixelLayer.new(project))
var layer := PixelLayer.new(project)
project.layers.append(layer)
Global.projects.append(project)
for rect in sliced_rects:
var offset: Vector2 = (0.5 * (frame_size - rect.size)).floor()
var frame := Frame.new()
var cropped_image := Image.create(frame_size.x, frame_size.y, false, Image.FORMAT_RGBA8)
image.convert(Image.FORMAT_RGBA8)
var cropped_image := Image.create(
frame_size.x, frame_size.y, false, project.get_image_format()
)
image.convert(project.get_image_format())
cropped_image.blit_rect(image, rect, offset)
frame.cels.append(PixelCel.new(cropped_image, 1))
frame.cels.append(layer.new_cel_from_image(cropped_image))
project.frames.append(frame)
set_new_imported_tab(project, path)
@ -494,7 +503,8 @@ func open_image_as_spritesheet_tab(path: String, image: Image, horiz: int, vert:
var frame_width := image.get_size().x / horiz
var frame_height := image.get_size().y / vert
var project := Project.new([], path.get_file(), Vector2(frame_width, frame_height))
project.layers.append(PixelLayer.new(project))
var layer := PixelLayer.new(project)
project.layers.append(layer)
Global.projects.append(project)
for yy in range(vert):
for xx in range(horiz):
@ -503,8 +513,8 @@ func open_image_as_spritesheet_tab(path: String, image: Image, horiz: int, vert:
Rect2i(frame_width * xx, frame_height * yy, frame_width, frame_height)
)
project.size = cropped_image.get_size()
cropped_image.convert(Image.FORMAT_RGBA8)
frame.cels.append(PixelCel.new(cropped_image, 1))
cropped_image.convert(project.get_image_format())
frame.cels.append(layer.new_cel_from_image(cropped_image))
project.frames.append(frame)
set_new_imported_tab(project, path)
@ -562,12 +572,12 @@ func open_image_as_spritesheet_layer_smart(
if f >= start_frame and f < (start_frame + sliced_rects.size()):
# Slice spritesheet
var offset: Vector2 = (0.5 * (frame_size - sliced_rects[f - start_frame].size)).floor()
image.convert(Image.FORMAT_RGBA8)
image.convert(project.get_image_format())
var cropped_image := Image.create(
project_width, project_height, false, Image.FORMAT_RGBA8
project_width, project_height, false, project.get_image_format()
)
cropped_image.blit_rect(image, sliced_rects[f - start_frame], offset)
cels.append(PixelCel.new(cropped_image))
cels.append(layer.new_cel_from_image(cropped_image))
else:
cels.append(layer.new_empty_cel())
@ -644,16 +654,16 @@ func open_image_as_spritesheet_layer(
# Slice spritesheet
var xx := (f - start_frame) % horizontal
var yy := (f - start_frame) / horizontal
image.convert(Image.FORMAT_RGBA8)
image.convert(project.get_image_format())
var cropped_image := Image.create(
project_width, project_height, false, Image.FORMAT_RGBA8
project_width, project_height, false, project.get_image_format()
)
cropped_image.blit_rect(
image,
Rect2i(frame_width * xx, frame_height * yy, frame_width, frame_height),
Vector2i.ZERO
)
cels.append(PixelCel.new(cropped_image))
cels.append(layer.new_cel_from_image(cropped_image))
else:
cels.append(layer.new_empty_cel())
@ -687,12 +697,18 @@ func open_image_at_cel(image: Image, layer_index := 0, frame_index := 0) -> void
var cel := project.frames[frame_index].cels[layer_index]
if not cel is PixelCel:
return
image.convert(Image.FORMAT_RGBA8)
var cel_image := Image.create(project_width, project_height, false, Image.FORMAT_RGBA8)
cel_image.blit_rect(image, Rect2i(Vector2i.ZERO, image.get_size()), Vector2i.ZERO)
Global.undo_redo_compress_images(
{cel.image: cel_image.data}, {cel.image: cel.image.data}, project
image.convert(project.get_image_format())
var cel_image := (cel as PixelCel).get_image()
var new_cel_image := ImageExtended.create_custom(
project_width, project_height, false, project.get_image_format(), cel_image.is_indexed
)
new_cel_image.blit_rect(image, Rect2i(Vector2i.ZERO, image.get_size()), Vector2i.ZERO)
new_cel_image.convert_rgb_to_indexed()
var redo_data := {}
new_cel_image.add_data_to_dictionary(redo_data, cel_image)
var undo_data := {}
cel_image.add_data_to_dictionary(undo_data)
Global.undo_redo_compress_images(redo_data, undo_data, project)
project.undo_redo.add_do_property(project, "selected_cels", [])
project.undo_redo.add_do_method(project.change_cel.bind(frame_index, layer_index))
@ -716,11 +732,14 @@ func open_image_as_new_frame(
var frame := Frame.new()
for i in project.layers.size():
if i == layer_index:
image.convert(Image.FORMAT_RGBA8)
var cel_image := Image.create(project_width, project_height, false, Image.FORMAT_RGBA8)
var layer := project.layers[i]
if i == layer_index and layer is PixelLayer:
image.convert(project.get_image_format())
var cel_image := Image.create(
project_width, project_height, false, project.get_image_format()
)
cel_image.blit_rect(image, Rect2i(Vector2i.ZERO, image.get_size()), Vector2i.ZERO)
frame.cels.append(PixelCel.new(cel_image, 1))
frame.cels.append(layer.new_cel_from_image(cel_image))
else:
frame.cels.append(project.layers[i].new_empty_cel())
if not undo:
@ -753,10 +772,12 @@ func open_image_as_new_layer(image: Image, file_name: String, frame_index := 0)
Global.current_project.undo_redo.create_action("Add Layer")
for i in project.frames.size():
if i == frame_index:
image.convert(Image.FORMAT_RGBA8)
var cel_image := Image.create(project_width, project_height, false, Image.FORMAT_RGBA8)
image.convert(project.get_image_format())
var cel_image := Image.create(
project_width, project_height, false, project.get_image_format()
)
cel_image.blit_rect(image, Rect2i(Vector2i.ZERO, image.get_size()), Vector2i.ZERO)
cels.append(PixelCel.new(cel_image, 1))
cels.append(layer.new_cel_from_image(cel_image))
else:
cels.append(layer.new_empty_cel())

View file

@ -9,9 +9,14 @@ signal options_reset
enum Dynamics { NONE, PRESSURE, VELOCITY }
const XY_LINE := Vector2(-0.707107, 0.707107)
const X_MINUS_Y_LINE := Vector2(0.707107, 0.707107)
var picking_color_for := MOUSE_BUTTON_LEFT
var horizontal_mirror := false
var vertical_mirror := false
var diagonal_mirror := false
var diagonal_opposite_mirror := false
var pixel_perfect := false
var alpha_locked := false
@ -201,6 +206,15 @@ Hold %s to displace the shape's origin""",
["shape_perfect", "shape_center", "shape_displace"]
)
),
"Text":
Tool.new(
"Text",
"Text",
"text",
"res://src/Tools/UtilityTools/Text.tscn",
[Global.LayerTypes.PIXEL],
""
),
"3DShapeEdit":
Tool.new(
"3DShapeEdit",
@ -515,20 +529,48 @@ func get_mirrored_positions(
) -> Array[Vector2i]:
var positions: Array[Vector2i] = []
if horizontal_mirror:
var mirror_x := pos
mirror_x.x = project.x_symmetry_point - pos.x + offset
var mirror_x := calculate_mirror_horizontal(pos, project, offset)
positions.append(mirror_x)
if vertical_mirror:
var mirror_xy := mirror_x
mirror_xy.y = project.y_symmetry_point - pos.y + offset
positions.append(mirror_xy)
positions.append(calculate_mirror_vertical(mirror_x, project, offset))
else:
if diagonal_mirror:
positions.append(calculate_mirror_xy(mirror_x, project))
if diagonal_opposite_mirror:
positions.append(calculate_mirror_x_minus_y(mirror_x, project))
if vertical_mirror:
var mirror_y := pos
mirror_y.y = project.y_symmetry_point - pos.y + offset
var mirror_y := calculate_mirror_vertical(pos, project, offset)
positions.append(mirror_y)
if diagonal_mirror:
positions.append(calculate_mirror_xy(mirror_y, project))
if diagonal_opposite_mirror:
positions.append(calculate_mirror_x_minus_y(mirror_y, project))
if diagonal_mirror:
var mirror_diagonal := calculate_mirror_xy(pos, project)
positions.append(mirror_diagonal)
if not horizontal_mirror and not vertical_mirror:
positions.append(calculate_mirror_x_minus_y(mirror_diagonal, project))
if diagonal_opposite_mirror:
positions.append(calculate_mirror_x_minus_y(pos, project))
return positions
func calculate_mirror_horizontal(pos: Vector2i, project: Project, offset := 0) -> Vector2i:
return Vector2i(project.x_symmetry_point - pos.x + offset, pos.y)
func calculate_mirror_vertical(pos: Vector2i, project: Project, offset := 0) -> Vector2i:
return Vector2i(pos.x, project.y_symmetry_point - pos.y + offset)
func calculate_mirror_xy(pos: Vector2i, project: Project) -> Vector2i:
return Vector2i(Vector2(pos).reflect(XY_LINE).round()) + project.size - Vector2i.ONE
func calculate_mirror_x_minus_y(pos: Vector2i, _project: Project) -> Vector2i:
return Vector2i(Vector2(pos).reflect(X_MINUS_Y_LINE).round())
func set_button_size(button_size: int) -> void:
var size := Vector2(24, 24) if button_size == Global.ButtonSize.SMALL else Vector2(32, 32)
if not is_instance_valid(_tool_buttons):

View file

@ -10,9 +10,7 @@ func _init(_opacity := 1.0) -> void:
func get_image() -> Image:
var image := Image.create(
Global.current_project.size.x, Global.current_project.size.y, false, Image.FORMAT_RGBA8
)
var image := Global.current_project.new_empty_image()
return image

View file

@ -4,17 +4,17 @@ extends BaseCel
## The term "cel" comes from "celluloid" (https://en.wikipedia.org/wiki/Cel).
## This variable is where the image data of the cel are.
var image: Image:
var image: ImageExtended:
set = image_changed
func _init(_image := Image.new(), _opacity := 1.0) -> void:
func _init(_image: ImageExtended, _opacity := 1.0) -> void:
image_texture = ImageTexture.new()
image = _image # Set image and call setter
opacity = _opacity
func image_changed(value: Image) -> void:
func image_changed(value: ImageExtended) -> void:
image = value
if not image.is_empty() and is_instance_valid(image_texture):
image_texture.set_image(image)
@ -48,7 +48,7 @@ func copy_content():
return copy_image
func get_image() -> Image:
func get_image() -> ImageExtended:
return image

View file

@ -1,22 +1,19 @@
class_name Drawer
const NUMBER_OF_DRAWERS := 8
var pixel_perfect := false:
set(value):
pixel_perfect = value
if pixel_perfect:
drawers = pixel_perfect_drawers.duplicate()
else:
drawers = [simple_drawer, simple_drawer, simple_drawer, simple_drawer]
_create_simple_drawers()
var color_op := ColorOp.new()
var simple_drawer := SimpleDrawer.new()
var pixel_perfect_drawers: Array[PixelPerfectDrawer] = [
PixelPerfectDrawer.new(),
PixelPerfectDrawer.new(),
PixelPerfectDrawer.new(),
PixelPerfectDrawer.new()
]
var drawers := [simple_drawer, simple_drawer, simple_drawer, simple_drawer]
var pixel_perfect_drawers: Array[PixelPerfectDrawer] = []
var drawers := []
class ColorOp:
@ -27,12 +24,12 @@ class ColorOp:
class SimpleDrawer:
func set_pixel(image: Image, position: Vector2i, color: Color, op: ColorOp) -> void:
func set_pixel(image: ImageExtended, position: Vector2i, color: Color, op: ColorOp) -> void:
var color_old := image.get_pixelv(position)
var color_str := color.to_html()
var color_new := op.process(Color(color_str), color_old)
if not color_new.is_equal_approx(color_old):
image.set_pixelv(position, color_new)
image.set_pixelv_custom(position, color_new)
class PixelPerfectDrawer:
@ -43,11 +40,11 @@ class PixelPerfectDrawer:
func reset() -> void:
last_pixels = [null, null]
func set_pixel(image: Image, position: Vector2i, color: Color, op: ColorOp) -> void:
func set_pixel(image: ImageExtended, position: Vector2i, color: Color, op: ColorOp) -> void:
var color_old := image.get_pixelv(position)
var color_str := color.to_html()
last_pixels.push_back([position, color_old])
image.set_pixelv(position, op.process(Color(color_str), color_old))
image.set_pixelv_custom(position, op.process(Color(color_str), color_old))
var corner = last_pixels.pop_front()
var neighbour = last_pixels[0]
@ -56,10 +53,25 @@ class PixelPerfectDrawer:
return
if position - corner[0] in CORNERS and position - neighbour[0] in NEIGHBOURS:
image.set_pixel(neighbour[0].x, neighbour[0].y, neighbour[1])
image.set_pixel_custom(neighbour[0].x, neighbour[0].y, neighbour[1])
last_pixels[0] = corner
func _init() -> void:
drawers.resize(NUMBER_OF_DRAWERS)
pixel_perfect_drawers.resize(NUMBER_OF_DRAWERS)
for i in NUMBER_OF_DRAWERS:
drawers[i] = simple_drawer
pixel_perfect_drawers[i] = PixelPerfectDrawer.new()
func _create_simple_drawers() -> void:
drawers = []
drawers.resize(NUMBER_OF_DRAWERS)
for i in NUMBER_OF_DRAWERS:
drawers[i] = simple_drawer
func reset() -> void:
for drawer in pixel_perfect_drawers:
drawer.reset()
@ -72,7 +84,12 @@ func set_pixel(image: Image, position: Vector2i, color: Color, ignore_mirroring
SteamManager.set_achievement("ACH_FIRST_PIXEL")
if ignore_mirroring:
return
if not Tools.horizontal_mirror and not Tools.vertical_mirror:
if (
not Tools.horizontal_mirror
and not Tools.vertical_mirror
and not Tools.diagonal_mirror
and not Tools.diagonal_opposite_mirror
):
return
# Handle mirroring
var mirrored_positions := Tools.get_mirrored_positions(position, project)

View file

@ -170,12 +170,12 @@ func _get_undo_data(project: Project) -> Dictionary:
var data := {}
var images := _get_selected_draw_images(project)
for image in images:
data[image] = image.data
image.add_data_to_dictionary(data)
return data
func _get_selected_draw_images(project: Project) -> Array[Image]:
var images: Array[Image] = []
func _get_selected_draw_images(project: Project) -> Array[ImageExtended]:
var images: Array[ImageExtended] = []
if affect == SELECTED_CELS:
for cel_index in project.selected_cels:
var cel: BaseCel = project.frames[cel_index[0]].cels[cel_index[1]]

View file

@ -0,0 +1,176 @@
class_name ImageExtended
extends Image
## A custom [Image] class that implements support for indexed mode.
## Before implementing indexed mode, we just used the [Image] class.
## In indexed mode, each pixel is assigned to a number that references a palette color.
## This essentially means that the colors of the image are restricted to a specific palette,
## and they will automatically get updated when you make changes to that palette, or when
## you switch to a different one.
const TRANSPARENT := Color(0)
const SET_INDICES := preload("res://src/Shaders/SetIndices.gdshader")
const INDEXED_TO_RGB := preload("res://src/Shaders/IndexedToRGB.gdshader")
## If [code]true[/code], the image uses indexed mode.
var is_indexed := false
## The [Palette] the image is currently using for indexed mode.
var current_palette := Palettes.current_palette
## An [Image] that contains the index of each pixel of the main image for indexed mode.
## The indices are stored in the red channel of this image, by diving each index by 255.
## This means that there can be a maximum index size of 255. 0 means that the pixel is transparent.
var indices_image := Image.create_empty(1, 1, false, Image.FORMAT_R8)
## A [PackedColorArray] containing all of the colors of the [member current_palette].
var palette := PackedColorArray()
func _init() -> void:
indices_image.fill(TRANSPARENT)
Palettes.palette_selected.connect(select_palette)
## Equivalent of [method Image.create_empty], but returns [ImageExtended] instead.
## If [param _is_indexed] is [code]true[/code], the image that is being returned uses indexed mode.
static func create_custom(
width: int, height: int, mipmaps: bool, format: Image.Format, _is_indexed := false
) -> ImageExtended:
var new_image := ImageExtended.new()
new_image.crop(width, height)
if mipmaps:
new_image.generate_mipmaps()
new_image.convert(format)
new_image.fill(TRANSPARENT)
new_image.is_indexed = _is_indexed
if new_image.is_indexed:
new_image.resize_indices()
new_image.select_palette("", false)
return new_image
## Equivalent of [method Image.copy_from], but also handles the logic necessary for indexed mode.
## If [param _is_indexed] is [code]true[/code], the image is set to be using indexed mode.
func copy_from_custom(image: Image, indexed := is_indexed) -> void:
is_indexed = indexed
copy_from(image)
if is_indexed:
resize_indices()
select_palette("", false)
convert_rgb_to_indexed()
## Selects a new palette to use in indexed mode.
func select_palette(_name: String, convert_to_rgb := true) -> void:
current_palette = Palettes.current_palette
if not is_instance_valid(current_palette) or not is_indexed:
return
update_palette()
if not current_palette.data_changed.is_connected(update_palette):
current_palette.data_changed.connect(update_palette)
if not current_palette.data_changed.is_connected(convert_indexed_to_rgb):
current_palette.data_changed.connect(convert_indexed_to_rgb)
if convert_to_rgb:
convert_indexed_to_rgb()
## Updates [member palette] to contain the colors of [member current_palette].
func update_palette() -> void:
if palette.size() != current_palette.colors.size():
palette.resize(current_palette.colors.size())
for i in current_palette.colors:
palette[i] = current_palette.colors[i].color
## Displays the actual RGBA values of each pixel in the image from indexed mode.
func convert_indexed_to_rgb() -> void:
if not is_indexed:
return
var palette_image := Palettes.current_palette.convert_to_image()
var palette_texture := ImageTexture.create_from_image(palette_image)
var shader_image_effect := ShaderImageEffect.new()
var indices_texture := ImageTexture.create_from_image(indices_image)
var params := {"palette_texture": palette_texture, "indices_texture": indices_texture}
shader_image_effect.generate_image(self, INDEXED_TO_RGB, params, get_size(), false)
Global.canvas.queue_redraw()
## Automatically maps each color of the image's pixel to the closest color of the palette,
## by finding the palette color's index and storing it in [member indices_image].
func convert_rgb_to_indexed() -> void:
if not is_indexed:
return
var palette_image := Palettes.current_palette.convert_to_image()
var palette_texture := ImageTexture.create_from_image(palette_image)
var params := {
"palette_texture": palette_texture, "rgb_texture": ImageTexture.create_from_image(self)
}
var shader_image_effect := ShaderImageEffect.new()
shader_image_effect.generate_image(
indices_image, SET_INDICES, params, indices_image.get_size(), false
)
convert_indexed_to_rgb()
## Resizes indices and calls [method convert_rgb_to_indexed] when the image's size changes
## and indexed mode is enabled.
func on_size_changed() -> void:
if is_indexed:
resize_indices()
convert_rgb_to_indexed()
## Resizes [indices_image] to the image's size.
func resize_indices() -> void:
indices_image.crop(get_width(), get_height())
## Equivalent of [method Image.set_pixel_custom],
## but also handles the logic necessary for indexed mode.
func set_pixel_custom(x: int, y: int, color: Color) -> void:
set_pixelv_custom(Vector2i(x, y), color)
## Equivalent of [method Image.set_pixelv_custom],
## but also handles the logic necessary for indexed mode.
func set_pixelv_custom(point: Vector2i, color: Color) -> void:
var new_color := color
if is_indexed:
var color_to_fill := TRANSPARENT
var color_index := 0
if not color.is_equal_approx(TRANSPARENT):
if palette.has(color):
color_index = palette.find(color)
else: # Find the most similar color
var smaller_distance := color_distance(color, palette[0])
for i in palette.size():
var swatch := palette[i]
if is_zero_approx(swatch.a): # Skip transparent colors
continue
var dist := color_distance(color, swatch)
if dist < smaller_distance:
smaller_distance = dist
color_index = i
indices_image.set_pixelv(point, Color((color_index + 1) / 255.0, 0, 0, 0))
color_to_fill = palette[color_index]
new_color = color_to_fill
else:
indices_image.set_pixelv(point, TRANSPARENT)
new_color = TRANSPARENT
set_pixelv(point, new_color)
## Finds the distance between colors [param c1] and [param c2].
func color_distance(c1: Color, c2: Color) -> float:
var v1 := Vector4(c1.r, c1.g, c1.b, c1.a)
var v2 := Vector4(c2.r, c2.g, c2.b, c2.a)
return v2.distance_to(v1)
## Adds image data to a [param dict] [Dictionary]. Used for undo/redo.
func add_data_to_dictionary(dict: Dictionary, other_image: ImageExtended = null) -> void:
# The order matters! Setting self's data first would make undo/redo appear to work incorrectly.
if is_instance_valid(other_image):
dict[other_image.indices_image] = indices_image.data
dict[other_image] = data
else:
dict[indices_image] = indices_image.data
dict[self] = data

View file

@ -218,11 +218,16 @@ func link_cel(cel: BaseCel, link_set = null) -> void:
## This method is not destructive as it does NOT change the data of the image,
## it just returns a copy.
func display_effects(cel: BaseCel, image_override: Image = null) -> Image:
var image := Image.new()
var image := ImageExtended.new()
if is_instance_valid(image_override):
image.copy_from(image_override)
if image_override is ImageExtended:
image.is_indexed = image_override.is_indexed
image.copy_from_custom(image_override)
else:
image.copy_from(cel.get_image())
var cel_image := cel.get_image()
if cel_image is ImageExtended:
image.is_indexed = cel_image.is_indexed
image.copy_from_custom(cel_image)
if not effects_enabled:
return image
var image_size := image.get_size()

View file

@ -13,7 +13,9 @@ func _init(_project: Project, _name := "") -> void:
## Blends all of the images of children layer of the group layer into a single image.
func blend_children(frame: Frame, origin := Vector2i.ZERO, apply_effects := true) -> Image:
var image := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var image := ImageExtended.create_custom(
project.size.x, project.size.y, false, project.get_image_format(), project.is_indexed()
)
var children := get_children(false)
if children.size() <= 0:
return image
@ -66,7 +68,7 @@ func blend_children(frame: Frame, origin := Vector2i.ZERO, apply_effects := true
func _include_child_in_blending(
image: Image,
image: ImageExtended,
layer: BaseLayer,
frame: Frame,
textures: Array[Image],
@ -100,7 +102,7 @@ func _include_child_in_blending(
## Gets called recursively if the child group has children groups of its own,
## and they are also set to pass through mode.
func _blend_child_group(
image: Image,
image: ImageExtended,
layer: BaseLayer,
frame: Frame,
textures: Array[Image],

View file

@ -28,9 +28,19 @@ func get_layer_type() -> int:
func new_empty_cel() -> BaseCel:
var image := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var format := project.get_image_format()
var is_indexed := project.is_indexed()
var image := ImageExtended.create_custom(
project.size.x, project.size.y, false, format, is_indexed
)
return PixelCel.new(image)
func new_cel_from_image(image: Image) -> PixelCel:
var pixelorama_image := ImageExtended.new()
pixelorama_image.copy_from_custom(image, project.is_indexed())
return PixelCel.new(pixelorama_image)
func can_layer_get_drawn() -> bool:
return is_visible_in_hierarchy() && !is_locked_in_hierarchy()

View file

@ -9,6 +9,8 @@ signal about_to_deserialize(dict: Dictionary)
signal resized
signal timeline_updated
const INDEXED_MODE := Image.FORMAT_MAX + 1
var name := "":
set(value):
name = value
@ -21,6 +23,17 @@ var undo_redo := UndoRedo.new()
var tiles: Tiles
var undos := 0 ## The number of times we added undo properties
var can_undo := true
var color_mode: int = Image.FORMAT_RGBA8:
set(value):
if color_mode != value:
color_mode = value
for cel in get_all_pixel_cels():
var image := cel.get_image()
image.is_indexed = is_indexed()
if image.is_indexed:
image.resize_indices()
image.select_palette("", false)
image.convert_rgb_to_indexed()
var fill_color := Color(0)
var has_changed := false:
set(value):
@ -58,6 +71,8 @@ var x_symmetry_point: float
var y_symmetry_point: float
var x_symmetry_axis := SymmetryGuide.new()
var y_symmetry_axis := SymmetryGuide.new()
var diagonal_xy_symmetry_axis := SymmetryGuide.new()
var diagonal_x_minus_y_symmetry_axis := SymmetryGuide.new()
var selection_map := SelectionMap.new()
## This is useful for when the selection is outside of the canvas boundaries,
@ -98,17 +113,30 @@ func _init(_frames: Array[Frame] = [], _name := tr("untitled"), _size := Vector2
x_symmetry_point = size.x - 1
y_symmetry_point = size.y - 1
x_symmetry_axis.type = x_symmetry_axis.Types.HORIZONTAL
x_symmetry_axis.type = Guide.Types.HORIZONTAL
x_symmetry_axis.project = self
x_symmetry_axis.add_point(Vector2(-19999, y_symmetry_point / 2 + 0.5))
x_symmetry_axis.add_point(Vector2(19999, y_symmetry_point / 2 + 0.5))
Global.canvas.add_child(x_symmetry_axis)
y_symmetry_axis.type = y_symmetry_axis.Types.VERTICAL
y_symmetry_axis.type = Guide.Types.VERTICAL
y_symmetry_axis.project = self
y_symmetry_axis.add_point(Vector2(x_symmetry_point / 2 + 0.5, -19999))
y_symmetry_axis.add_point(Vector2(x_symmetry_point / 2 + 0.5, 19999))
Global.canvas.add_child(y_symmetry_axis)
diagonal_xy_symmetry_axis.type = Guide.Types.XY
diagonal_xy_symmetry_axis.project = self
diagonal_xy_symmetry_axis.add_point(Vector2(19999, -19999))
diagonal_xy_symmetry_axis.add_point(Vector2i(-19999, 19999) + size)
Global.canvas.add_child(diagonal_xy_symmetry_axis)
diagonal_x_minus_y_symmetry_axis.type = Guide.Types.X_MINUS_Y
diagonal_x_minus_y_symmetry_axis.project = self
diagonal_x_minus_y_symmetry_axis.add_point(Vector2(-19999, -19999))
diagonal_x_minus_y_symmetry_axis.add_point(Vector2(19999, 19999))
Global.canvas.add_child(diagonal_x_minus_y_symmetry_axis)
if OS.get_name() == "Web":
export_directory_path = "user://"
else:
@ -176,11 +204,26 @@ func new_empty_frame() -> Frame:
return frame
## Returns a new [Image] of size [member size] and format [method get_image_format].
func new_empty_image() -> Image:
return Image.create(size.x, size.y, false, get_image_format())
## Returns the currently selected [BaseCel].
func get_current_cel() -> BaseCel:
return frames[current_frame].cels[current_layer]
func get_image_format() -> Image.Format:
if color_mode == INDEXED_MODE:
return Image.FORMAT_RGBA8
return color_mode
func is_indexed() -> bool:
return color_mode == INDEXED_MODE
func selection_map_changed() -> void:
var image_texture: ImageTexture
has_selection = !selection_map.is_invisible()
@ -255,6 +298,7 @@ func serialize() -> Dictionary:
"pxo_version": ProjectSettings.get_setting("application/config/Pxo_Version"),
"size_x": size.x,
"size_y": size.y,
"color_mode": color_mode,
"tile_mode_x_basis_x": tiles.x_basis.x,
"tile_mode_x_basis_y": tiles.x_basis.y,
"tile_mode_y_basis_x": tiles.y_basis.x,
@ -288,6 +332,7 @@ func deserialize(dict: Dictionary, zip_reader: ZIPReader = null, file: FileAcces
size.y = dict.size_y
tiles.tile_size = size
selection_map.crop(size.x, size.y)
color_mode = dict.get("color_mode", color_mode)
if dict.has("tile_mode_x_basis_x") and dict.has("tile_mode_x_basis_y"):
tiles.x_basis.x = dict.tile_mode_x_basis_x
tiles.x_basis.y = dict.tile_mode_x_basis_y
@ -311,20 +356,33 @@ func deserialize(dict: Dictionary, zip_reader: ZIPReader = null, file: FileAcces
for cel in frame.cels:
match int(dict.layers[cel_i].get("type", Global.LayerTypes.PIXEL)):
Global.LayerTypes.PIXEL:
var image := Image.new()
var image: Image
var indices_data := PackedByteArray()
if is_instance_valid(zip_reader): # For pxo files saved in 1.0+
var image_data := zip_reader.read_file(
"image_data/frames/%s/layer_%s" % [frame_i + 1, cel_i + 1]
)
var path := "image_data/frames/%s/layer_%s" % [frame_i + 1, cel_i + 1]
var image_data := zip_reader.read_file(path)
image = Image.create_from_data(
size.x, size.y, false, Image.FORMAT_RGBA8, image_data
size.x, size.y, false, get_image_format(), image_data
)
var indices_path := (
"image_data/frames/%s/indices_layer_%s" % [frame_i + 1, cel_i + 1]
)
if zip_reader.file_exists(indices_path):
indices_data = zip_reader.read_file(indices_path)
elif is_instance_valid(file): # For pxo files saved in 0.x
var buffer := file.get_buffer(size.x * size.y * 4)
image = Image.create_from_data(
size.x, size.y, false, Image.FORMAT_RGBA8, buffer
size.x, size.y, false, get_image_format(), buffer
)
cels.append(PixelCel.new(image))
var pixelorama_image := ImageExtended.new()
pixelorama_image.is_indexed = is_indexed()
if not indices_data.is_empty() and is_indexed():
pixelorama_image.indices_image = Image.create_from_data(
size.x, size.y, false, Image.FORMAT_R8, indices_data
)
pixelorama_image.copy_from(image)
pixelorama_image.select_palette("", true)
cels.append(PixelCel.new(pixelorama_image))
Global.LayerTypes.GROUP:
cels.append(GroupCel.new())
Global.LayerTypes.THREE_D:
@ -559,6 +617,16 @@ func find_first_drawable_cel(frame := frames[current_frame]) -> BaseCel:
return result
## Returns an [Array] of type [PixelCel] containing all of the pixel cels of the project.
func get_all_pixel_cels() -> Array[PixelCel]:
var cels: Array[PixelCel]
for frame in frames:
for cel in frame.cels:
if cel is PixelCel:
cels.append(cel)
return cels
## Re-order layers to take each cel's z-index into account. If all z-indexes are 0,
## then the order of drawing is the same as the order of the layers itself.
func order_layers(frame_index := current_frame) -> void:

View file

@ -5,7 +5,9 @@ extends RefCounted
signal done
func generate_image(img: Image, shader: Shader, params: Dictionary, size: Vector2i) -> void:
func generate_image(
img: Image, shader: Shader, params: Dictionary, size: Vector2i, respect_indexed := true
) -> void:
# duplicate shader before modifying code to avoid affecting original resource
var resized_width := false
var resized_height := false
@ -60,4 +62,6 @@ func generate_image(img: Image, shader: Shader, params: Dictionary, size: Vector
img.crop(img.get_width() - 1, img.get_height())
if resized_height:
img.crop(img.get_width(), img.get_height() - 1)
if img is ImageExtended and respect_indexed:
img.convert_rgb_to_indexed()
done.emit()

View file

@ -199,6 +199,8 @@ func _ready() -> void:
func _input(event: InputEvent) -> void:
if event is InputEventKey and is_instance_valid(Global.main_viewport):
Global.main_viewport.get_child(0).push_input(event)
left_cursor.position = get_global_mouse_position() + Vector2(-32, 32)
right_cursor.position = get_global_mouse_position() + Vector2(32, 32)

View file

@ -0,0 +1,163 @@
extends GridContainer
var grid_preferences: Array[GridPreference] = [
GridPreference.new("grid_type", "GridType", "selected", Global.GridTypes.CARTESIAN),
GridPreference.new("grid_size", "GridSizeValue", "value", Vector2i(2, 2)),
GridPreference.new("isometric_grid_size", "IsometricGridSizeValue", "value", Vector2i(16, 8)),
GridPreference.new("grid_offset", "GridOffsetValue", "value", Vector2i.ZERO),
GridPreference.new("grid_draw_over_tile_mode", "GridDrawOverTileMode", "button_pressed", false),
GridPreference.new("grid_color", "GridColor", "color", Color.BLACK),
]
var grid_selected: int = 0:
set(key):
grid_selected = key
for child: BaseButton in grids_select_container.get_children():
if child.get_index() == grid_selected:
child.self_modulate = Color.WHITE
else:
child.self_modulate = Color.DIM_GRAY
var grids: Dictionary = Global.config_cache.get_value(
"preferences", "grids", {0: create_default_properties()}
)
if grids.has(key):
update_pref_ui(grids[key])
@onready var grids_select_container: HFlowContainer = $GridsSelectContainer
class GridPreference:
var prop_name: String
var node_path: String
var value_type: String
var default_value
func _init(
_prop_name: String,
_node_path: String,
_value_type: String,
_default_value = null,
_require_restart := false
) -> void:
prop_name = _prop_name
node_path = _node_path
value_type = _value_type
if _default_value != null:
default_value = _default_value
func _ready() -> void:
var grids = Global.config_cache.get_value(
"preferences", "grids", {0: create_default_properties()}
)
Global.config_cache.set_value("preferences", "grids", grids)
$GridsCount.value = grids.size()
if grids.size() == 1:
add_remove_select_button(0)
for pref in grid_preferences:
if not has_node(pref.node_path):
continue
var node := get_node(pref.node_path)
var restore_default_button := RestoreDefaultButton.new()
restore_default_button.pressed.connect(
_on_grid_pref_value_changed.bind(pref.default_value, pref, restore_default_button)
)
restore_default_button.setting_name = pref.prop_name
restore_default_button.value_type = pref.value_type
restore_default_button.default_value = pref.default_value
restore_default_button.node = node
var node_position := node.get_index()
node.get_parent().add_child(restore_default_button)
node.get_parent().move_child(restore_default_button, node_position)
match pref.value_type:
"button_pressed":
node.toggled.connect(_on_grid_pref_value_changed.bind(pref, restore_default_button))
"value":
node.value_changed.connect(
_on_grid_pref_value_changed.bind(pref, restore_default_button)
)
"color":
node.get_picker().presets_visible = false
node.color_changed.connect(
_on_grid_pref_value_changed.bind(pref, restore_default_button)
)
"selected":
node.item_selected.connect(
_on_grid_pref_value_changed.bind(pref, restore_default_button)
)
grid_selected = 0
func _on_grid_pref_value_changed(value, pref: GridPreference, button: RestoreDefaultButton) -> void:
var grids: Dictionary = Global.config_cache.get_value(
"preferences", "grids", {0: create_default_properties()}
)
if grids.has(grid_selected): # Failsafe (Always true)
var grid_info: Dictionary = grids[grid_selected]
var prop := pref.prop_name
grid_info[prop] = value
grids[grid_selected] = grid_info
Global.update_grids(grids)
var default_value = pref.default_value
var disable: bool = Global.grids[grid_selected].get(prop) == default_value
if typeof(value) == TYPE_COLOR:
disable = value.is_equal_approx(default_value)
disable_restore_default_button(button, disable)
Global.config_cache.set_value("preferences", "grids", grids)
func _on_grids_count_value_changed(value: float) -> void:
var grid_idx = int(value - 1)
var grids: Dictionary = Global.config_cache.get_value(
"preferences", "grids", {0: create_default_properties()}
)
if grid_idx >= grids_select_container.get_child_count():
for key in range(grids_select_container.get_child_count(), grid_idx + 1):
if not grids.has(key):
grids[key] = create_default_properties()
add_remove_select_button(key)
else:
for key: int in range(grid_idx + 1, grids.size()):
grids.erase(key)
add_remove_select_button(key, true)
Global.update_grids(grids)
Global.config_cache.set_value("preferences", "grids", grids)
func create_default_properties() -> Dictionary:
var grid_info = {}
for pref in grid_preferences:
grid_info[pref.prop_name] = pref.default_value
return grid_info
func disable_restore_default_button(button: RestoreDefaultButton, disable: bool) -> void:
button.disabled = disable
if disable:
button.mouse_default_cursor_shape = Control.CURSOR_ARROW
button.tooltip_text = ""
else:
button.mouse_default_cursor_shape = Control.CURSOR_POINTING_HAND
button.tooltip_text = "Restore default value"
func add_remove_select_button(grid_idx: int, remove := false):
if not remove:
var select_button = Button.new()
select_button.text = str(grid_idx)
grids_select_container.add_child(select_button)
select_button.pressed.connect(func(): grid_selected = grid_idx)
else:
if grid_idx < grids_select_container.get_child_count():
grids_select_container.get_child(grid_idx).queue_free()
grid_selected = min(grid_selected, grid_idx - 1)
func update_pref_ui(grid_data: Dictionary):
for pref in grid_preferences:
var key = pref.prop_name
if grid_data.has(key):
var node := get_node(pref.node_path)
node.set(pref.value_type, grid_data[key])

View file

@ -94,21 +94,6 @@ var preferences: Array[Preference] = [
Preference.new("smooth_zoom", "Canvas/ZoomOptions/SmoothZoom", "button_pressed", true),
Preference.new("integer_zoom", "Canvas/ZoomOptions/IntegerZoom", "button_pressed", false),
Preference.new("snapping_distance", "Canvas/SnappingOptions/DistanceValue", "value", 32.0),
Preference.new(
"grid_type", "Canvas/GridOptions/GridType", "selected", Global.GridTypes.CARTESIAN
),
Preference.new("grid_size", "Canvas/GridOptions/GridSizeValue", "value", Vector2i(2, 2)),
Preference.new(
"isometric_grid_size", "Canvas/GridOptions/IsometricGridSizeValue", "value", Vector2i(16, 8)
),
Preference.new("grid_offset", "Canvas/GridOptions/GridOffsetValue", "value", Vector2i.ZERO),
Preference.new(
"grid_draw_over_tile_mode",
"Canvas/GridOptions/GridDrawOverTileMode",
"button_pressed",
false
),
Preference.new("grid_color", "Canvas/GridOptions/GridColor", "color", Color.BLACK),
Preference.new(
"pixel_grid_show_at_zoom", "Canvas/PixelGridOptions/ShowAtZoom", "value", 1500.0
),

View file

@ -1,8 +1,10 @@
[gd_scene load_steps=9 format=3 uid="uid://b3hkjj3s6pe4x"]
[gd_scene load_steps=11 format=3 uid="uid://b3hkjj3s6pe4x"]
[ext_resource type="Script" path="res://src/Preferences/PreferencesDialog.gd" id="1"]
[ext_resource type="PackedScene" uid="uid://bq7ibhm0txl5p" path="res://addons/keychain/ShortcutEdit.tscn" id="3"]
[ext_resource type="Script" path="res://src/Preferences/ThemesPreferences.gd" id="3_nvl8k"]
[ext_resource type="Script" path="res://src/Preferences/GridPreferences.gd" id="4_76iff"]
[ext_resource type="PackedScene" uid="uid://yjhp0ssng2mp" path="res://src/UI/Nodes/ValueSlider.tscn" id="5_rlmsh"]
[ext_resource type="PackedScene" path="res://src/UI/Nodes/ValueSliderV2.tscn" id="7"]
[ext_resource type="Script" path="res://src/Preferences/ExtensionsPreferences.gd" id="7_8ume5"]
[ext_resource type="Script" path="res://src/UI/Nodes/ValueSlider.gd" id="8"]
@ -482,6 +484,30 @@ layout_mode = 2
theme_override_constants/h_separation = 4
theme_override_constants/v_separation = 4
columns = 3
script = ExtResource("4_76iff")
[node name="GridsCountLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"]
layout_mode = 2
text = "Grids Visible:"
[node name="Spacer" type="Control" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"]
layout_mode = 2
[node name="GridsCount" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions" instance=ExtResource("5_rlmsh")]
layout_mode = 2
min_value = 1.0
max_value = 10.0
value = 1.0
[node name="GridsSelectLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"]
layout_mode = 2
text = "Editing Grid:"
[node name="Spacer2" type="Control" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"]
layout_mode = 2
[node name="GridsSelectContainer" type="HFlowContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"]
layout_mode = 2
[node name="GridTypeLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"]
layout_mode = 2
@ -1478,6 +1504,7 @@ dialog_text = "Are you sure you want to reset the selected options? There will b
[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language/System Language" to="." method="_on_language_pressed" binds= [1]]
[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions/ShrinkContainer/ShrinkApplyButton" to="." method="_on_shrink_apply_button_pressed"]
[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions/FontSizeContainer/FontSizeApplyButton" to="." method="_on_font_size_apply_button_pressed"]
[connection signal="value_changed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions/GridsCount" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions" method="_on_grids_count_value_changed"]
[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/ExtensionsHeader/Explore" to="Store" method="_on_explore_pressed"]
[connection signal="empty_clicked" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/InstalledExtensions" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_InstalledExtensions_empty_clicked"]
[connection signal="item_selected" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/InstalledExtensions" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_InstalledExtensions_item_selected"]

View file

@ -3,6 +3,7 @@
shader_type canvas_item;
render_mode unshaded;
#include "res://src/Shaders/FindPaletteColorIndex.gdshaderinc"
uniform sampler2D palette_texture : filter_nearest;
uniform sampler2D selection : filter_nearest;
@ -10,18 +11,9 @@ vec4 swap_color(vec4 color) {
if (color.a <= 0.01) {
return color;
}
int color_index = 0;
int n_of_colors = textureSize(palette_texture, 0).x;
float smaller_distance = distance(color, texture(palette_texture, vec2(0.0)));
for (int i = 0; i <= n_of_colors; i++) {
vec2 uv = vec2(float(i) / float(n_of_colors), 0.0);
vec4 palette_color = texture(palette_texture, uv);
float dist = distance(color, palette_color);
if (dist < smaller_distance) {
smaller_distance = dist;
color_index = i;
}
}
int color_index = find_index(color, n_of_colors, palette_texture);
return texture(palette_texture, vec2(float(color_index) / float(n_of_colors), 0.0));
}

View file

@ -0,0 +1,14 @@
int find_index(vec4 color, int n_of_colors, sampler2D palette_texture) {
int color_index = 0;
float smaller_distance = distance(color, texture(palette_texture, vec2(0.0)));
for (int i = 0; i <= n_of_colors; i++) {
vec2 uv = vec2(float(i) / float(n_of_colors), 0.0);
vec4 palette_color = texture(palette_texture, uv);
float dist = distance(color, palette_color);
if (dist < smaller_distance) {
smaller_distance = dist;
color_index = i;
}
}
return color_index;
}

View file

@ -0,0 +1,28 @@
shader_type canvas_item;
render_mode unshaded;
const float EPSILON = 0.0001;
uniform sampler2D palette_texture : filter_nearest;
uniform sampler2D indices_texture : filter_nearest;
void fragment() {
float index = texture(indices_texture, UV).r;
if (index <= EPSILON) { // If index is zero, make it transparent
COLOR = vec4(0.0);
}
else {
float n_of_colors = float(textureSize(palette_texture, 0).x);
index -= 1.0 / 255.0;
float index_normalized = ((index * 255.0)) / n_of_colors;
if (index_normalized + EPSILON < 1.0) {
COLOR = texture(palette_texture, vec2(index_normalized + EPSILON, 0.0));
}
else {
// If index is bigger than the size of the palette, make it transparent.
// This happens when switching to a palette, where the previous palette was bigger
// than the newer one, and the current index is out of bounds of the new one.
COLOR = vec4(0.0);
}
}
}

View file

@ -0,0 +1,18 @@
shader_type canvas_item;
render_mode unshaded;
#include "res://src/Shaders/FindPaletteColorIndex.gdshaderinc"
uniform sampler2D rgb_texture : filter_nearest;
uniform sampler2D palette_texture : filter_nearest;
void fragment() {
vec4 color = texture(rgb_texture, UV);
if (color.a <= 0.01) {
COLOR.r = 0.0;
}
else {
int color_index = find_index(color, textureSize(palette_texture, 0).x, palette_texture);
COLOR.r = float(color_index + 1) / 255.0;
}
}

View file

@ -35,7 +35,7 @@ var _line_polylines := []
# Memorize some stuff when doing brush strokes
var _stroke_project: Project
var _stroke_images: Array[Image] = []
var _stroke_images: Array[ImageExtended] = []
var _is_mask_size_zero := true
var _circle_tool_shortcut: Array[Vector2i]
@ -730,8 +730,8 @@ func _get_undo_data() -> Dictionary:
for cel in cels:
if not cel is PixelCel:
continue
var image := cel.get_image()
data[image] = image.data
var image := (cel as PixelCel).get_image()
image.add_data_to_dictionary(data)
return data

View file

@ -159,16 +159,17 @@ func draw_move(pos: Vector2i) -> void:
else:
pos.x = _start_pos.x
if Input.is_action_pressed("transform_snap_grid"):
_offset = _offset.snapped(Global.grid_size)
_offset = _offset.snapped(Global.grids[0].grid_size)
var prev_pos: Vector2i = selection_node.big_bounding_rectangle.position
selection_node.big_bounding_rectangle.position = prev_pos.snapped(Global.grid_size)
selection_node.big_bounding_rectangle.position = prev_pos.snapped(Global.grids[0].grid_size)
selection_node.marching_ants_outline.offset += Vector2(
selection_node.big_bounding_rectangle.position - prev_pos
)
pos = pos.snapped(Global.grid_size)
var grid_offset := Global.grid_offset
pos = pos.snapped(Global.grids[0].grid_size)
var grid_offset := Global.grids[0].grid_offset
grid_offset = Vector2i(
fmod(grid_offset.x, Global.grid_size.x), fmod(grid_offset.y, Global.grid_size.y)
fmod(grid_offset.x, Global.grids[0].grid_size.x),
fmod(grid_offset.y, Global.grids[0].grid_size.y)
)
pos += grid_offset

View file

@ -168,16 +168,7 @@ func draw_preview() -> void:
if Rect2i(Vector2i.ZERO, image.get_size()).has_point(points[i]):
image.set_pixelv(points[i], Color.WHITE)
# Handle mirroring
if Tools.horizontal_mirror:
for point in mirror_array(points, true, false):
if Rect2i(Vector2i.ZERO, image.get_size()).has_point(point):
image.set_pixelv(point, Color.WHITE)
if Tools.vertical_mirror:
for point in mirror_array(points, true, true):
if Rect2i(Vector2i.ZERO, image.get_size()).has_point(point):
image.set_pixelv(point, Color.WHITE)
if Tools.vertical_mirror:
for point in mirror_array(points, false, true):
for point in mirror_array(points):
if Rect2i(Vector2i.ZERO, image.get_size()).has_point(point):
image.set_pixelv(point, Color.WHITE)
var texture := ImageTexture.create_from_image(image)

View file

@ -129,19 +129,20 @@ func draw_preview() -> void:
func snap_position(pos: Vector2) -> Vector2:
var snapping_distance := Global.snapping_distance / Global.camera.zoom.x
if Global.snap_to_rectangular_grid_boundary:
var grid_pos := pos.snapped(Global.grid_size)
grid_pos += Vector2(Global.grid_offset)
var grid_pos := pos.snapped(Global.grids[0].grid_size)
grid_pos += Vector2(Global.grids[0].grid_offset)
# keeping grid_pos as is would have been fine but this adds extra accuracy as to
# which snap point (from the list below) is closest to mouse and occupy THAT point
var t_l := grid_pos + Vector2(-Global.grid_size.x, -Global.grid_size.y)
var t_c := grid_pos + Vector2(0, -Global.grid_size.y) # t_c is for "top centre" and so on
var t_r := grid_pos + Vector2(Global.grid_size.x, -Global.grid_size.y)
var m_l := grid_pos + Vector2(-Global.grid_size.x, 0)
# t_l is for "top left" and so on
var t_l := grid_pos + Vector2(-Global.grids[0].grid_size.x, -Global.grids[0].grid_size.y)
var t_c := grid_pos + Vector2(0, -Global.grids[0].grid_size.y)
var t_r := grid_pos + Vector2(Global.grids[0].grid_size.x, -Global.grids[0].grid_size.y)
var m_l := grid_pos + Vector2(-Global.grids[0].grid_size.x, 0)
var m_c := grid_pos
var m_r := grid_pos + Vector2(Global.grid_size.x, 0)
var b_l := grid_pos + Vector2(-Global.grid_size.x, Global.grid_size.y)
var b_c := grid_pos + Vector2(0, Global.grid_size.y)
var b_r := grid_pos + Vector2(Global.grid_size)
var m_r := grid_pos + Vector2(Global.grids[0].grid_size.x, 0)
var b_l := grid_pos + Vector2(-Global.grids[0].grid_size.x, Global.grids[0].grid_size.y)
var b_c := grid_pos + Vector2(0, Global.grids[0].grid_size.y)
var b_r := grid_pos + Vector2(Global.grids[0].grid_size)
var vec_arr: PackedVector2Array = [t_l, t_c, t_r, m_l, m_c, m_r, b_l, b_c, b_r]
for vec in vec_arr:
if vec.distance_to(pos) < grid_pos.distance_to(pos):
@ -152,19 +153,22 @@ func snap_position(pos: Vector2) -> Vector2:
pos = grid_point.floor()
if Global.snap_to_rectangular_grid_center:
var grid_center := pos.snapped(Global.grid_size) + Vector2(Global.grid_size / 2)
grid_center += Vector2(Global.grid_offset)
var grid_center := (
pos.snapped(Global.grids[0].grid_size) + Vector2(Global.grids[0].grid_size / 2)
)
grid_center += Vector2(Global.grids[0].grid_offset)
# keeping grid_center as is would have been fine but this adds extra accuracy as to
# which snap point (from the list below) is closest to mouse and occupy THAT point
var t_l := grid_center + Vector2(-Global.grid_size.x, -Global.grid_size.y)
var t_c := grid_center + Vector2(0, -Global.grid_size.y) # t_c is for "top centre" and so on
var t_r := grid_center + Vector2(Global.grid_size.x, -Global.grid_size.y)
var m_l := grid_center + Vector2(-Global.grid_size.x, 0)
# t_l is for "top left" and so on
var t_l := grid_center + Vector2(-Global.grids[0].grid_size.x, -Global.grids[0].grid_size.y)
var t_c := grid_center + Vector2(0, -Global.grids[0].grid_size.y)
var t_r := grid_center + Vector2(Global.grids[0].grid_size.x, -Global.grids[0].grid_size.y)
var m_l := grid_center + Vector2(-Global.grids[0].grid_size.x, 0)
var m_c := grid_center
var m_r := grid_center + Vector2(Global.grid_size.x, 0)
var b_l := grid_center + Vector2(-Global.grid_size.x, Global.grid_size.y)
var b_c := grid_center + Vector2(0, Global.grid_size.y)
var b_r := grid_center + Vector2(Global.grid_size)
var m_r := grid_center + Vector2(Global.grids[0].grid_size.x, 0)
var b_l := grid_center + Vector2(-Global.grids[0].grid_size.x, Global.grids[0].grid_size.y)
var b_c := grid_center + Vector2(0, Global.grids[0].grid_size.y)
var b_r := grid_center + Vector2(Global.grids[0].grid_size)
var vec_arr := [t_l, t_c, t_r, m_l, m_c, m_r, b_l, b_c, b_r]
for vec in vec_arr:
if vec.distance_to(pos) < grid_center.distance_to(pos):
@ -205,18 +209,33 @@ func snap_position(pos: Vector2) -> Vector2:
return pos
func mirror_array(array: Array[Vector2i], h: bool, v: bool) -> Array[Vector2i]:
## Returns an array that mirrors each point of the [param array].
## An optional [param callable] can be passed, which gets called for each type of symmetry.
func mirror_array(array: Array[Vector2i], callable := func(_array): pass) -> Array[Vector2i]:
var new_array: Array[Vector2i] = []
var project := Global.current_project
if Tools.horizontal_mirror and Tools.vertical_mirror:
var hv_array: Array[Vector2i] = []
for point in array:
if h and v:
new_array.append(
Vector2i(project.x_symmetry_point - point.x, project.y_symmetry_point - point.y)
)
elif h:
new_array.append(Vector2i(project.x_symmetry_point - point.x, point.y))
elif v:
new_array.append(Vector2i(point.x, project.y_symmetry_point - point.y))
var mirror_x := Tools.calculate_mirror_horizontal(point, project)
hv_array.append(Tools.calculate_mirror_vertical(mirror_x, project))
if callable.is_valid():
callable.call(hv_array)
new_array += hv_array
if Tools.horizontal_mirror:
var h_array: Array[Vector2i] = []
for point in array:
h_array.append(Tools.calculate_mirror_horizontal(point, project))
if callable.is_valid():
callable.call(h_array)
new_array += h_array
if Tools.vertical_mirror:
var v_array: Array[Vector2i] = []
for point in array:
v_array.append(Tools.calculate_mirror_vertical(point, project))
if callable.is_valid():
callable.call(v_array)
new_array += v_array
return new_array
@ -299,12 +318,12 @@ func _get_draw_rect() -> Rect2i:
return Rect2i(Vector2i.ZERO, Global.current_project.size)
func _get_draw_image() -> Image:
func _get_draw_image() -> ImageExtended:
return Global.current_project.get_current_cel().get_image()
func _get_selected_draw_images() -> Array[Image]:
var images: Array[Image] = []
func _get_selected_draw_images() -> Array[ImageExtended]:
var images: Array[ImageExtended] = []
var project := Global.current_project
for cel_index in project.selected_cels:
var cel: BaseCel = project.frames[cel_index[0]].cels[cel_index[1]]

View file

@ -220,7 +220,7 @@ func fill_in_color(pos: Vector2i) -> void:
if project.has_selection:
selection = project.selection_map.return_cropped_copy(project.size)
else:
selection = Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
selection = project.new_empty_image()
selection.fill(Color(1, 1, 1, 1))
selection_tex = ImageTexture.create_from_image(selection)
@ -263,7 +263,7 @@ func fill_in_selection() -> void:
var images := _get_selected_draw_images()
if _fill_with == FillWith.COLOR or _pattern == null:
if project.has_selection:
var filler := Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
var filler := project.new_empty_image()
filler.fill(tool_slot.color)
var rect: Rect2i = Global.canvas.selection.big_bounding_rectangle
var selection_map_copy := project.selection_map.return_cropped_copy(project.size)
@ -284,7 +284,7 @@ func fill_in_selection() -> void:
if project.has_selection:
selection = project.selection_map.return_cropped_copy(project.size)
else:
selection = Image.create(project.size.x, project.size.y, false, Image.FORMAT_RGBA8)
selection = project.new_empty_image()
selection.fill(Color(1, 1, 1, 1))
selection_tex = ImageTexture.create_from_image(selection)
@ -461,7 +461,7 @@ func _compute_segments_for_image(
done = false
func _color_segments(image: Image) -> void:
func _color_segments(image: ImageExtended) -> void:
if _fill_with == FillWith.COLOR or _pattern == null:
# This is needed to ensure that the color used to fill is not wrong, due to float
# rounding issues.
@ -472,7 +472,7 @@ func _color_segments(image: Image) -> void:
var p := _allegro_image_segments[c]
for px in range(p.left_position, p.right_position + 1):
# We don't have to check again whether the point being processed is within the bounds
image.set_pixel(px, p.y, color)
image.set_pixel_custom(px, p.y, color)
else:
# shortcircuit tests for patternfills
var pattern_size := _pattern.image.get_size()
@ -484,11 +484,11 @@ func _color_segments(image: Image) -> void:
_set_pixel_pattern(image, px, p.y, pattern_size)
func _set_pixel_pattern(image: Image, x: int, y: int, pattern_size: Vector2i) -> void:
func _set_pixel_pattern(image: ImageExtended, x: int, y: int, pattern_size: Vector2i) -> void:
var px := (x + _offset_x) % pattern_size.x
var py := (y + _offset_y) % pattern_size.y
var pc := _pattern.image.get_pixel(px, py)
image.set_pixel(x, y, pc)
image.set_pixel_custom(x, y, pc)
func commit_undo() -> void:
@ -514,12 +514,12 @@ func _get_undo_data() -> Dictionary:
if Global.animation_timeline.animation_timer.is_stopped():
var images := _get_selected_draw_images()
for image in images:
data[image] = image.data
image.add_data_to_dictionary(data)
else:
for frame in Global.current_project.frames:
var cel := frame.cels[Global.current_project.current_layer]
if not cel is PixelCel:
continue
var image := cel.get_image()
data[image] = image.data
var image := (cel as PixelCel).get_image()
image.add_data_to_dictionary(data)
return data

Some files were not shown because too many files have changed in this diff Show more