diff --git a/3rdparty/README.md b/3rdparty/README.md
index 7964e9f29f..c196568a8c 100644
--- a/3rdparty/README.md
+++ b/3rdparty/README.md
@@ -1,239 +1,241 @@
= CMake external projects to build krita's dependencies on Linux, Windows or OSX =
If you need to build Krita's dependencies for the following reasons:
* you develop on Windows and aren't using Emerge
* you develop on OSX and aren't using Homebrew
* you want to build a generic, distro-agnostic version of Krita for Linux
* you develop on Linux, but some dependencies aren't available for your distribution
and you know what you're doing, you can use the following guide to build
the dependencies that Krita needs.
If you develop on Linux and your distribution has the dependencies available,
YOU DO NOT NEED THIS GUIDE AND YOU SHOULD STOP READING NOW
Otherwise you risk major confusion.
== Prerequisites ==
Note: on all operating systems the entire procedure is done in a terminal window.
1. git: https://git-scm.com/downloads. Make sure git is in your path
2. cmake 3.3.2: https://cmake.org/download/. Make sure cmake is in your path.
3. Make sure you have a compiler:
* Linux: gcc, minimum version 4.8
* OSX: clang, you need to install xcode for this
* Windows: mingw-w64 5.4 (by mingw-builds)
- 32-bit (x86) target: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/5.4.0/threads-posix/dwarf/
- 64-bit (x64) target: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.4.0/threads-posix/seh/
Make sure mingw's bin folder is in your path. It might be a good
idea to create a batch file which sets the path and start cmd.
MSVC is *not* supported at the moment.
4. If you compile Qt on Windows, you will also need Python: https://www.python.org. Make sure to have python.exe in your path.
== Setup your environment ==
== Prepare your directory layout ==
1. Make a toplevel build directory, say $HOME/dev or c:\dev. We'll refer to this directory as BUILDROOT. You can use a variable for this, on WINDOWS %BUILDROOT%, on OSX and Linux $BUILDROOT. You will have to replace BUILDROOT with $BUILDROOT or %BUILDROOT whenever you copy and paste a command, depending on your operating system.
2. Checkout krita in BUILDROOT
cd BUILDROOT
git clone git://anongit.kde.org/krita.git
3. Create the build directory
mkdir BUILDROOT/b
4. Create the downloads directory
mkdir BUILDROOT/d
5. Create the install directory
mkdir BUILDROOT/i
== Prepare the externals build ==
1. enter the BUILDROOT/b directory
-2. run cmake:
+
+2. The cmake command needs to point to your BUILDROOT like /dev/d, not c:\dev\d.
+
+ set PATH=BUILDROOT\i\bin\;BUILDROOT\i\lib;%PATH%
+ cmake ..\krita\3rdparty -DEXTERNALS_DOWNLOAD_DIR=/dev/d -DINSTALL_ROOT=/dev/i -G "MinGW Makefiles"
+
+3. run cmake:
* Linux:
export PATH=$BUILDROOT/i/bin
cmake ../krita/3rdparty \
-DINSTALL_ROOT=$BUILDROOT/i \
-DEXTERNALS_DOWNLOAD_DIR=$BUILDROOT/d \
-DCMAKE_INSTALL_PREFIX=BUILDROOT/i
* OSX:
export PATH=$BUILDROOT/i/bin
cmake ../krita/3rdparty/ \
-DCMAKE_INSTALL_PREFIX=$BUILDROOT/i \
-DEXTERNALS_DOWNLOAD_DIR=$BUILDROOT/d \
-DINSTALL_ROOT=$BUILDROOT/i
* Windows 32 bits:
TODO
* Windows 64 bits:
-Note that the cmake command needs to point to your BUILDROOT like /dev/d, not c:\dev\d.
-
- set PATH=BUILDROOT\i\bin\;BUILDROOT\i\lib;%PATH%
- cmake ..\krita\3rdparty -DEXTERNALS_DOWNLOAD_DIR=/dev/d -DINSTALL_ROOT=/dev/i -G "MinGW Makefiles"
-3. build the packages:
+4. build the packages:
With a judicious application of DEPENDS statements, it's possible to build it all in one go, but in my experience that fails always, so it's better to build the dependencies independently.
On Windows:
cmake --build . --config RelWithDebInfo --target ext_patch
cmake --build . --config RelWithDebInfo --target ext_png2ico
cmake --build . --config RelWithDebInfo --target ext_gettext
On all operating systems:
cmake --build . --config RelWithDebInfo --target ext_qt
cmake --build . --config RelWithDebInfo --target ext_zlib
cmake --build . --config RelWithDebInfo --target ext_boost
Note about boost: check if the headers are installed into i/include/boost, but not into i/include/boost-1.61/boost
cmake --build . --config RelWithDebInfo --target ext_eigen3
cmake --build . --config RelWithDebInfo --target ext_exiv2
cmake --build . --config RelWithDebInfo --target ext_fftw3
On Windows:
set FFTW_LIB_DIR=%BUILDROOT%\i\lib
dlltool.exe -k --output-lib %FFTW_LIB_DIR%\libfftw3-3.a --input-def %FFTW_LIB_DIR%\libfftw3-3.def
dlltool.exe -k --output-lib %FFTW_LIB_DIR%\libfftw3f-3.a --input-def %FFTW_LIB_DIR%\libfftw3f-3.def
dlltool.exe -k --output-lib %FFTW_LIB_DIR%\libfftw3l-3.a --input-def %FFTW_LIB_DIR%\libfftw3l-3.def
On all operating systems
cmake --build . --config RelWithDebInfo --target ext_ilmbase
cmake --build . --config RelWithDebInfo --target ext_jpeg
cmake --build . --config RelWithDebInfo --target ext_lcms2
cmake --build . --config RelWithDebInfo --target ext_ocio
cmake --build . --config RelWithDebInfo --target ext_openexr
Note for OSX:
On OSX, you need to first build openexr; that will fail; then you need to set the rpath for the two utilities correctly, then try to build openexr again.
install_name_tool -add_rpath $BUILD_ROOT/i/lib $BUILD_ROOT/b/ext_openexr/ext_openexr-prefix/src/ext_openexr-build/IlmImf/./b44ExpLogTable
install_name_tool -add_rpath $BUILD_ROOT/i/lib $BUILD_ROOT/b/ext_openexr/ext_openexr-prefix/src/ext_openexr-build/IlmImf/./dwaLookups
On All operating systems:
cmake --build . --config RelWithDebInfo --target ext_png
cmake --build . --config RelWithDebInfo --target ext_tiff
cmake --build . --config RelWithDebInfo --target ext_gsl
cmake --build . --config RelWithDebInfo --target ext_vc
cmake --build . --config RelWithDebInfo --target ext_libraw
On Windows
cmake --build . --config RelWithDebInfo --target ext_freetype
cmake --build . --config RelWithDebInfo --target ext_poppler
On Linux
cmake --build . --config RelWithDebInfo --target ext_kcrash
Everywhere else:
cmake --build . --config RelWithDebInfo --target ext_kwindowsystem
On Windows, if you want to include DrMingw for dumping backtrace on crash:
cmake --build . --config RelWithDebInfo --target ext_drmingw
Note: poppler should be buildable on Linux as well with a home-built freetype
and fontconfig, but I don't know how to make fontconfig find freetype, and on
Linux, fontconfig is needed for poppler. Poppler is needed for PDF import.
Note 2: libcurl still isn't available.
Note 3: if you want to build a release, you need to get the binary gettext
archives from files.kde.org/krita/build/dependencies:
http://files.kde.org/krita/build/dependencies/gettext0.19.8.1-iconv1.14-shared-32.zip
http://files.kde.org/krita/build/dependencies/gettext0.19.8.1-iconv1.14-shared-64.zip
Take care, these zips contain a libstdc++-6.dll that you don't want in your path when building.
== Build Krita ==
1. Make a krita build directory:
mkdir BUILDROOT/build
2. Enter the BUILDROOT/build
3. Run
On Windows
Depending on what you want to use, run this command for MSBuild:
cmake ..\krita -G "MinGW Makefiles" -DBoost_DEBUG=OFF -DBOOST_INCLUDEDIR=c:\dev\i\include -DBOOST_DEBUG=ON -DBOOST_ROOT=c:\dev\i -DBOOST_LIBRARYDIR=c:\dev\i\lib -DCMAKE_INSTALL_PREFIX=c:\dev\i -DCMAKE_PREFIX_PATH=c:\dev\i -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DHAVE_MEMORY_LEAK_TRACKER=OFF -Wno-dev -DDEFINE_NO_DEPRECATED=1
Or this to use jom (faster compiling, uses all cores, ships with QtCreator/pre-built Qt binaries):
cmake ..\krita -G "MinGW Makefiles" -DBoost_DEBUG=OFF -DBOOST_INCLUDEDIR=c:\dev\i\include -DBOOST_DEBUG=ON -DBOOST_ROOT=c:\dev\i -DBOOST_LIBRARYDIR=c:\dev\i\lib -DCMAKE_INSTALL_PREFIX=c:\dev\i -DCMAKE_PREFIX_PATH=c:\dev\i -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DHAVE_MEMORY_LEAK_TRACKER=OFF -Wno-dev -DDEFINE_NO_DEPRECATED=1
On Linux
cmake ../krita -DCMAKE_INSTALL_PREFIX=BUILDROOT/i -DDEFINE_NO_DEPRECATED=1 -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DCMAKE_BUILD_TYPE=RelWithDebInfobg
On OSX
cmake ../krita -DCMAKE_INSTALL_PREFIX=$BUILDROOT/i -DDEFINE_NO_DEPRECATED=1 -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DBUNDLE_INSTALL_DIR=$BUILDROOT/i/bin -DCMAKE_BUILD_TYPE=RelWithDebInfo
4. Run
On Linux and OSX
make
make install
On Windows
Either use MSBuild to build (-- /m tells msbuild to use all your cores):
cmake --build . --config RelWithDebInfo --target INSTALL -- /m
Or use jom which should be in a path similar to C:\Qt\Qt5.6.0\Tools\QtCreator\bin\jom.exe.
So, from the same folder, instead of running cmake run:
"C:\Qt\Qt5.6.0\Tools\QtCreator\bin\jom.exe" install
6. Run krita:
On Linux
BUILDROOT/i/bin/krita
On Windows
BUILDROOT\i\bin\krita.exe
On OSX
BUILDROOT/i/bin/krita.app/Contents/MacOS/krita
== Packaging a Windows Build ==
If you want to create a stripped down version of Krita to distribute, after building everything just copy the makepkg.bat file from the "windows" folder inside krita root source folder to BUILDROOT and run it.
That will copy the necessary files into the specified folder and leave behind developer related files, so the resulting folder will be a smaller install folder.
== Common Issues ==
- On Windows, if you get a 'mspdb140.dll' missing alert window, it means you did not run the bat file. Make sure to include the quotes in the command:
"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat"
- On Windows, if you get an error about Qt5Core.dll missing/not found or nmake exit with an error that mention QT_PLUGIN_PATH, you have to copy a couple of dlls in the Qt build directory, look for the N.B. in the Qt instructions at the start of the Readme.
- If you receive an error while compiling about "missing QtCore5.cmake", or something similar, check to make sure qmake is in your PATH. Restart your command line after any changes are made.
diff --git a/krita/data/kritarc b/krita/data/kritarc
index e4685bffb3..599c527b78 100644
--- a/krita/data/kritarc
+++ b/krita/data/kritarc
@@ -1,469 +1,469 @@
ArtColorSel.ColorSpace=0
ArtColorSel.InversedSaturation=false
ArtColorSel.Light=0.5
ArtColorSel.LightPieces=19
ArtColorSel.NumRings=11
ArtColorSel.RelativeLight=false
ArtColorSel.RingAngles=0,0,0,0,0,0,0,0,0,0,0
ArtColorSel.RingPieces=12
ArtColorSel.SelColorA=1
ArtColorSel.SelColorH=0
ArtColorSel.SelColorS=0
ArtColorSel.SelColorX=0.5
BackgroundColorForNewImage=255,255,255
BackgroundOpacityForNewImage=255
BackgroundStyleForNewImage=0
Krita/Ocio/OcioColorManagementMode=0
Krita/Ocio/OcioLockColorVisualRepresentation=false
Krita/Ocio/UseOcio=false
LastBackGroundColor=\n\n \n\n
LastForeGroundColor=\n\n \n\n
LastPreset=Basic_circle
LastPreset_-1=Basic_circle
LineSmoothingDelayDistance=50
LineSmoothingDistance=50
LineSmoothingFinishStabilizedCurve=true
LineSmoothingStabilizeSensors=true
LineSmoothingTailAggressiveness=0.14999999999999999
LineSmoothingType=1
LineSmoothingUseDelayDistance=true
NumberOfLayersForNewImage=2
PaintopPopupDetached=false
SpecificColorSelector/ShowColorSpaceSelector=false
baseLength=50
colorDepthDef=U8
colorModelDef=RGBA
colorProfileDef=sRGB-elle-V2-srgbtrc.icc
favoritePresetsTag=demo
globalSnapBoundingBox=false
globalSnapExtension=false
globalSnapImageBounds=true
globalSnapImageCenter=true
globalSnapIntersection=false
globalSnapNode=false
globalSnapOrthogonal=false
gridmaincolor=99,99,99
gridmainstyle=0
gridsubdivisioncolor=150,150,150
gridsubdivisionstyle=1
guidesColor=99,99,99
guidesLineStyle=0
imageHeightDef=1200
imageResolutionDef=300
imageWidthDef=1600
levelOfDetailEnabled=true
numberOfOnionSkins=10
oninSkinTintColorForward=0,255,0
onionSkinOpacity_-1=173
onionSkinOpacity_-10=22
onionSkinOpacity_-2=163
onionSkinOpacity_-3=147
onionSkinOpacity_-4=127
onionSkinOpacity_-5=107
onionSkinOpacity_-6=84
onionSkinOpacity_-7=63
onionSkinOpacity_-8=48
onionSkinOpacity_-9=33
onionSkinOpacity_0=175
onionSkinOpacity_1=173
onionSkinOpacity_10=22
onionSkinOpacity_2=163
onionSkinOpacity_3=147
onionSkinOpacity_4=127
onionSkinOpacity_5=107
onionSkinOpacity_6=84
onionSkinOpacity_7=63
onionSkinOpacity_8=48
onionSkinOpacity_9=33
onionSkinState_-1=true
onionSkinState_-10=false
onionSkinState_-2=true
onionSkinState_-3=false
onionSkinState_-4=false
onionSkinState_-5=false
onionSkinState_-6=false
onionSkinState_-7=false
onionSkinState_-8=false
onionSkinState_-9=false
onionSkinState_0=true
onionSkinState_1=true
onionSkinState_10=false
onionSkinState_2=true
onionSkinState_3=false
onionSkinState_4=false
onionSkinState_5=false
onionSkinState_6=false
onionSkinState_7=false
onionSkinState_8=false
onionSkinState_9=false
onionSkinTintColorBackward=255,0,0
onionSkinTintFactor=191
presethistory=Basic_tip_default
showAdditionalOnionSkinsSettings=true
toolbarslider_1=opacity
toolbarslider_2=size
toolbarslider_3=flow
+favoriteCompositeOps=normal,erase,multiply,burn,darken,add,dodge,screen,overlay,soft_light_svg,luminize,lighten,saturation,color
[advancedColorSelector]
allowHorizontalLayout=true
colorSelectorConfiguration=3|0|5|0
commonColorsAlignment=false
commonColorsAutoUpdate=false
commonColorsCount=12
commonColorsHeight=16
commonColorsNumCols=1
commonColorsNumRows=1
commonColorsScrolling=false
commonColorsShow=true
commonColorsWidth=16
customColorSpaceDepthID=U8
customColorSpaceModel=RGBA
customColorSpaceProfile=sRGB built-in
lastUsedColorsAlignment=true
lastUsedColorsCount=20
lastUsedColorsHeight=16
lastUsedColorsNumCols=1
lastUsedColorsNumRows=1
lastUsedColorsScrolling=true
lastUsedColorsShow=true
lastUsedColorsWidth=16
minimalShadeSelectorAsGradient=true
minimalShadeSelectorLineConfig=0|0.2|0|0|0|0|0;1|0|1|1|0|0|0;2|0|-1|1|0|0|0;
minimalShadeSelectorLineHeight=10
minimalShadeSelectorPatchCount=10
popupOnMouseClick=true
popupOnMouseOver=false
shadeSelectorHideable=false
shadeSelectorType=Minimal
shadeSelectorUpdateOnBackground=true
shadeSelectorUpdateOnForeground=true
shadeSelectorUpdateOnLeftClick=false
shadeSelectorUpdateOnRightClick=false
useCustomColorSpace=false
zoomSize=280
[DockWidget sharedtooldocker]
TabbedMode=false
[KisToolTransform]
filterId=Bicubic
[MainWindow]
Height 1080=720
Width 1920=1256
ko_geometry=AdnQywACAAAAAAE6AAAAtAAABikAAAOkAAABPgAAANEAAAYlAAADoAAAAAAAAAAAB4A=
ko_windowstate=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TQBpAHgAZQByAAAAAAD/////AAAAkQD////7AAAADgBIAGkAcwB0AG8AcgB5AAAAA5AAAAC0AAAAWgD////7AAAATgBLAHIAaQB0AGEARgBpAGwAbAAvAEsAaQBzAFQAbwBvAGwARwByAGEAZABpAGUAbgB0ACAAbwBwAHQAaQBvAG4AIAB3AGkAZABnAGUAdAAAAAQoAAAAHAAAAAAAAAAA+wAAAEYASwByAGkAdABhAEYAaQBsAGwALwBLAGkAcwBUAG8AbwBsAEYAaQBsAGwAIABvAHAAdABpAG8AbgAgAHcAaQBkAGcAZQB0AAAAA1AAAAAcAAAAAAAAAAD7AAAANgBLAHIAaQB0AGEAUwBoAGEAcABlAC8ASwBpAHMAVABvAG8AbABSAGUAYwB0AGEAbgBnAGwAZQAAAAMFAAAAZwAAAAAAAAAA+wAAACIAQwBvAG0AcABvAHMAaQB0AGkAbwBuAEQAbwBjAGsAZQByAAAAAAD/////AAAAegD////7AAAAKgBBAHIAdABpAHMAdABpAGMAQwBvAGwAbwByAFMAZQBsAGUAYwB0AG8AcgAAAAAA/////wAAAHgA////+wAAABoAUABhAHQAdABlAHIAbgBEAG8AYwBrAGUAcgAAAALZAAABSQAAAT8A////+wAAABoAVABhAHMAawBzAGUAdABEAG8AYwBrAGUAcgAAAAAA/////wAAAHoA////+wAAACgAUwBuAGEAcABHAHUAaQBkAGUAIABQAHIAbwBwAGUAcgB0AGkAZQBzAAAAAAD/////AAAAAAAAAAD7AAAAOABUAGUAeAB0AEQAbwBjAHUAbQBlAG4AdABJAG4AcwBwAGUAYwB0AGkAbwBuAEQAbwBjAGsAZQByAgAABJoAAAIVAAABKgAAAK77AAAAEgBMAHUAdABEAG8AYwBrAGUAcgAAAAAA/////wAAATkA////+wAAABwATwB2AGUAcgB2AGkAZQB3AEQAbwBjAGsAZQByAAAAAAD/////AAAASAD////7AAAAGgBQAGEAbABlAHQAdABlAEQAbwBjAGsAZQByAAAAAAD/////AAAAPwD////7AAAAGgBQAHIAZQBzAGUAdABIAGkAcwB0AG8AcgB5AAAAAAD/////AAAAWgD////7AAAAFABHAHIAaQBkAEQAbwBjAGsAZQByAAAAAAD/////AAABLgD////7AAAAHgBIAGkAcwB0AG8AZwByAGEAbQBEAG8AYwBrAGUAcgAAAAAA/////wAAAEgA////+wAAACoAQQBuAGkAbQBhAHQAaQBvAG4AQwB1AHIAdgBlAHMARABvAGMAawBlAHIAAAAAAP////8AAAB5AP///wAAAAIAAAeAAAAAvPwBAAAAAfsAAAAaAFQAbwBvAGwAQgBhAHIARABvAGMAawBlAHIAAAAAAP////8AAAAAAAAAAAAAAAMAAAAAAAAAAPwBAAAABPsAAAAcAEYAbABpAHAAYgBvAG8AawBEAG8AYwBrAGUAcgAAAAAA/////wAAAAAAAAAA+wAAAB4AQQBuAGkAbQBhAHQAaQBvAG4ARABvAGMAawBlAHIAAAAAAP////8AAAELAP////sAAAAgAE8AbgBpAG8AbgBTAGsAaQBuAHMARABvAGMAawBlAHIAAAAAAP////8AAAEtAP////sAAAAcAFQAaQBtAGUAbABpAG4AZQBEAG8AYwBrAGUAcgAAAAAA/////wAAAH0A////AAADhAAAAnYAAAAEAAAABAAAAAgAAAAI/AAAAAEAAAACAAAAAgAAABYAbQBhAGkAbgBUAG8AbwBsAEIAYQByAAAAAAD/////AAAAAAAAAAAAAAAeAEIAcgB1AHMAaABlAHMAQQBuAGQAUwB0AHUAZgBmAQAAAAD/////AAAAAAAAAAA=
[advancedColorSelector]
gamma=2.2000000000000002
hidePopupOnClickCheck=false
hsxSettingType=0
lumaB=0.0722
lumaG=0.71519999999999995
lumaR=0.21260000000000001
onDockerResize=0
shadeMyPaintType=HSV
zoomSelectorOptions=0
[calligra]
ColorSpaceExtensionsPlugins=\\0
ColorSpaceExtensionsPluginsDisabled=
ColorSpacePlugins=\\0
ColorSpacePluginsDisabled=
DockerPlugins=\\0
DockerPluginsDisabled=textdocumentinspection
FlakePlugins=,
ShapePlugins=,
ToolsBlacklist=CreatePathTool,KoPencilTool,ConnectionTool,KarbonFilterEffectsTool
ToolPlugins=,,
ToolPluginsDisabled=
[KoShapeCollection]
QuickShapes=ArtisticText,TextShapeID,EllipseShape,RectangleShape
[colorhotkeys]
steps_blueyellow=10
steps_hue=36
steps_lightness=10
steps_redgreen=10
steps_saturation=10
[crashprevention]
CreatingCanvas=false
[hsxColorSlider]
hsiH=false
hsiI=false
hsiS=false
hslH=true
hslL=true
hslS=true
hsvH=false
hsvS=false
hsvV=false
hsyH=false
hsyS=false
hsyY=false
[krita]
State=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TQBpAHgAZQByAAAAAAD/////AAAAkQD////7AAAADgBIAGkAcwB0AG8AcgB5AAAAA5AAAAC0AAAAWgD////7AAAATgBLAHIAaQB0AGEARgBpAGwAbAAvAEsAaQBzAFQAbwBvAGwARwByAGEAZABpAGUAbgB0ACAAbwBwAHQAaQBvAG4AIAB3AGkAZABnAGUAdAAAAAQoAAAAHAAAAAAAAAAA+wAAAEYASwByAGkAdABhAEYAaQBsAGwALwBLAGkAcwBUAG8AbwBsAEYAaQBsAGwAIABvAHAAdABpAG8AbgAgAHcAaQBkAGcAZQB0AAAAA1AAAAAcAAAAAAAAAAD7AAAANgBLAHIAaQB0AGEAUwBoAGEAcABlAC8ASwBpAHMAVABvAG8AbABSAGUAYwB0AGEAbgBnAGwAZQAAAAMFAAAAZwAAAAAAAAAA+wAAACIAQwBvAG0AcABvAHMAaQB0AGkAbwBuAEQAbwBjAGsAZQByAAAAAAD/////AAAAegD////7AAAAKgBBAHIAdABpAHMAdABpAGMAQwBvAGwAbwByAFMAZQBsAGUAYwB0AG8AcgAAAAAA/////wAAAHgA////+wAAABoAUABhAHQAdABlAHIAbgBEAG8AYwBrAGUAcgAAAALZAAABSQAAAT8A////+wAAABoAVABhAHMAawBzAGUAdABEAG8AYwBrAGUAcgAAAAAA/////wAAAHoA////+wAAACgAUwBuAGEAcABHAHUAaQBkAGUAIABQAHIAbwBwAGUAcgB0AGkAZQBzAAAAAAD/////AAAAAAAAAAD7AAAAOABUAGUAeAB0AEQAbwBjAHUAbQBlAG4AdABJAG4AcwBwAGUAYwB0AGkAbwBuAEQAbwBjAGsAZQByAgAABJoAAAIVAAABKgAAAK77AAAAEgBMAHUAdABEAG8AYwBrAGUAcgAAAAAA/////wAAATkA////+wAAABwATwB2AGUAcgB2AGkAZQB3AEQAbwBjAGsAZQByAAAAAAD/////AAAASAD////7AAAAGgBQAGEAbABlAHQAdABlAEQAbwBjAGsAZQByAAAAAAD/////AAAAPwD////7AAAAGgBQAHIAZQBzAGUAdABIAGkAcwB0AG8AcgB5AAAAAAD/////AAAAWgD////7AAAAFABHAHIAaQBkAEQAbwBjAGsAZQByAAAAAAD/////AAABLgD////7AAAAHgBIAGkAcwB0AG8AZwByAGEAbQBEAG8AYwBrAGUAcgAAAAAA/////wAAAEgA////+wAAACoAQQBuAGkAbQBhAHQAaQBvAG4AQwB1AHIAdgBlAHMARABvAGMAawBlAHIAAAAAAP////8AAAB5AP///wAAAAIAAAeAAAAAvPwBAAAAAfsAAAAaAFQAbwBvAGwAQgBhAHIARABvAGMAawBlAHIAAAAAAP////8AAAAAAAAAAAAAAAMAAAAAAAAAAPwBAAAABPsAAAAcAEYAbABpAHAAYgBvAG8AawBEAG8AYwBrAGUAcgAAAAAA/////wAAAAAAAAAA+wAAAB4AQQBuAGkAbQBhAHQAaQBvAG4ARABvAGMAawBlAHIAAAAAAP////8AAAELAP////sAAAAgAE8AbgBpAG8AbgBTAGsAaQBuAHMARABvAGMAawBlAHIAAAAAAP////8AAAEtAP////sAAAAcAFQAaQBtAGUAbABpAG4AZQBEAG8AYwBrAGUAcgAAAAAA/////wAAAH0A////AAADhAAAAnYAAAAEAAAABAAAAAgAAAAI/AAAAAEAAAACAAAAAgAAABYAbQBhAGkAbgBUAG8AbwBsAEIAYQByAAAAAAD/////AAAAAAAAAAAAAAAeAEIAcgB1AHMAaABlAHMAQQBuAGQAUwB0AHUAZgBmAQAAAAD/////AAAAAAAAAAA=
ToolBarsMovable=Disabled
[krita][DockWidget AnimationCurvesDocker]
Collapsed=false
DockArea=2
Locked=false
height=421
width=448
xPosition=0
yPosition=0
[krita][DockWidget AnimationDocker]
Collapsed=false
DockArea=8
Locked=false
height=160
width=280
xPosition=0
yPosition=0
[krita][DockWidget ArtisticColorSelector]
Collapsed=false
DockArea=2
Locked=false
height=294
width=337
xPosition=0
yPosition=0
[krita][DockWidget ChannelDocker]
Collapsed=false
DockArea=2
Locked=false
height=30
width=100
xPosition=0
yPosition=0
[krita][DockWidget ColorSelectorNg]
Collapsed=false
DockArea=2
Locked=false
height=176
width=281
xPosition=0
yPosition=20
[krita][DockWidget ColorSlider]
Collapsed=false
DockArea=2
Locked=false
height=460
width=640
xPosition=0
yPosition=20
[krita][DockWidget CompositionDocker]
Collapsed=false
DockArea=2
Locked=false
height=300
width=400
xPosition=0
yPosition=0
[krita][DockWidget DigitalMixer]
Collapsed=false
DockArea=2
Locked=false
height=30
width=100
xPosition=0
yPosition=0
[krita][DockWidget GridDocker]
Collapsed=false
DockArea=2
Locked=false
height=342
width=441
xPosition=0
yPosition=0
[krita][DockWidget HistogramDocker]
Collapsed=false
DockArea=2
Locked=false
height=91
width=281
xPosition=0
yPosition=20
[krita][DockWidget History]
Collapsed=false
DockArea=2
Locked=false
height=460
width=640
xPosition=0
yPosition=20
[krita][DockWidget ImageDocker]
Collapsed=false
DockArea=2
Locked=false
height=300
width=399
xPosition=0
yPosition=0
[krita][DockWidget KisLayerBox]
DockArea=2
Locked=false
height=358
width=281
xPosition=0
yPosition=20
[krita][DockWidget LutDocker]
Collapsed=false
DockArea=2
Locked=false
height=286
width=357
xPosition=0
yPosition=0
[krita][DockWidget OnionSkinsDocker]
Collapsed=false
DockArea=8
Locked=false
height=210
width=356
xPosition=0
yPosition=0
[krita][DockWidget OverviewDocker]
Collapsed=false
DockArea=2
Locked=false
height=30
width=100
xPosition=0
yPosition=0
[krita][DockWidget PaletteDocker]
Collapsed=false
DockArea=2
Locked=false
height=219
width=256
xPosition=0
yPosition=0
[krita][DockWidget PatternDocker]
Collapsed=false
DockArea=2
Locked=false
height=30
width=100
xPosition=0
yPosition=0
[krita][DockWidget PresetDocker]
Collapsed=false
DockArea=2
Locked=false
height=460
width=640
xPosition=0
yPosition=20
[krita][DockWidget PresetHistory]
Collapsed=false
DockArea=2
Locked=false
height=30
width=100
xPosition=0
yPosition=0
[krita][DockWidget Shape Properties]
DockArea=2
Locked=false
height=480
width=640
xPosition=0
yPosition=0
[krita][DockWidget ShapeCollectionDocker]
Collapsed=false
DockArea=2
Locked=false
height=0
width=0
xPosition=0
yPosition=20
[krita][DockWidget SmallColorSelector]
DockArea=2
Locked=false
height=460
width=640
xPosition=0
yPosition=20
[krita][DockWidget SpecificColorSelector]
DockArea=2
Locked=false
height=460
width=640
xPosition=0
yPosition=20
[krita][DockWidget TasksetDocker]
Collapsed=false
DockArea=2
Locked=false
height=300
width=400
xPosition=0
yPosition=0
[krita][DockWidget TimelineDocker]
Collapsed=false
DockArea=8
Locked=false
height=30
width=100
xPosition=0
yPosition=0
[krita][DockWidget ToolBox]
DockArea=1
Locked=false
height=610
width=63
xPosition=0
yPosition=20
[krita][DockWidget sharedtooldocker]
Collapsed=false
DockArea=2
Locked=false
height=460
width=640
xPosition=0
yPosition=20
[krita][Toolbar mainToolBar]
ToolButtonStyle=IconOnly
[TemplateChooserDialog]
ShowCustomDocumentWidgetByDefault=true
LastReturnType=Custom Document
[theme]
Theme=Krita dark
-favoriteCompositeOps=normal,erase,multiply,burn,darken,add,dodge,screen,overlay,soft_light_svg,luminize,lighten,saturation,color
diff --git a/krita/data/templates/.gitignore b/krita/data/templates/.gitignore
new file mode 100644
index 0000000000..baf566cbea
--- /dev/null
+++ b/krita/data/templates/.gitignore
@@ -0,0 +1,26 @@
+*.trace
+build
+qtcreator-build
+*.kdev4
+*~
+.kateconfig
+CMakeLists.txt.user*
+*.autosave
+*.swp
+.gdb_history
+.kdev_include_paths
+*.config
+*.creator
+*.creator.user
+*.files
+*.includes
+.DS_Store
+*.kate-swap
+.idea
+GTAGS
+GPATH
+GRTAGS
+GSYMS
+BROWSE
+*.kate-swp
+
diff --git a/krita/data/templates/animation/.directory b/krita/data/templates/animation/.directory
new file mode 100644
index 0000000000..548f3e2cbe
--- /dev/null
+++ b/krita/data/templates/animation/.directory
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Name=Animation Templates
+Name[ca]=Plantilles d'animació
+Name[en_GB]=Animation Templates
+Name[it]=Modelli di animazioni
+Name[nl]=Animatiesjablonen
+Name[pl]=Szablony animacji
+Name[pt]=Modelos de Animações
+Name[uk]=Шаблони анімацій
+Name[x-test]=xxAnimation Templatesxx
+X-KDE-DefaultTab=true
diff --git a/krita/data/templates/animation/Anim-Jp-EN.desktop b/krita/data/templates/animation/Anim-Jp-EN.desktop
index 0833bf71bb..5734b9c4e3 100644
--- a/krita/data/templates/animation/Anim-Jp-EN.desktop
+++ b/krita/data/templates/animation/Anim-Jp-EN.desktop
@@ -1,21 +1,22 @@
[Desktop Entry]
Type=Link
URL=.source/Anim-Jp-EN.kra
Icon=template_animation
Name=Animation-Japanese-En
Name[ca]=Animació-Japonès-EN
Name[ca@valencia]=Animació-Japonés-EN
Name[de]=Animation-Japanisch-En
Name[en_GB]=Animation-Japanese-En
Name[es]=Animación-Japonés-En
Name[et]=Animation-Japanese-En
Name[it]=Animazione-Giapponese-EN
Name[ja]=日本式アニメ(英語版)
Name[nl]=Animatie-Japans-En
Name[pl]=Animacja-Japońska-En
Name[pt]=Animação-Japonês-EN
Name[ru]=Анимация-японская-англ
Name[sk]=Animation-Japanese-En
Name[sv]=Animering-japanska-en
Name[uk]=Японська анімація (англійською)
Name[x-test]=xxAnimation-Japanese-Enxx
+Name[zh_CN]=日本动画 (英式)
diff --git a/krita/data/templates/animation/Anim-Jp-JP.desktop b/krita/data/templates/animation/Anim-Jp-JP.desktop
index cb80183fd9..4a773fea09 100644
--- a/krita/data/templates/animation/Anim-Jp-JP.desktop
+++ b/krita/data/templates/animation/Anim-Jp-JP.desktop
@@ -1,21 +1,22 @@
[Desktop Entry]
Type=Link
URL=.source/Anim-Jp-JP.kra
Icon=template_animation
Name=Animation-Japanese-JP
Name[ca]=Animació-Japonès-JP
Name[ca@valencia]=Animació-Japonés-JP
Name[de]=Animation-Japanisch-JP
Name[en_GB]=Animation-Japanese-JP
Name[es]=Animación-Japonés-JP
Name[et]=Animation-Japanese-JP
Name[it]=Animazione-Giapponese-JP
Name[ja]=日本式アニメ(日本語版)
Name[nl]=Animatie-Japans-JP
Name[pl]=Animacja-Japońska-JP
Name[pt]=Animação-Japonês-JP
Name[ru]=Анимация-японская-японск
Name[sk]=Animation-Japanese-JP
Name[sv]=Animering-japanska-jp
Name[uk]=Японська анімація (японською)
Name[x-test]=xxAnimation-Japanese-JPxx
+Name[zh_CN]=日本动画 (日式)
diff --git a/krita/data/templates/animation/CMakeLists.txt b/krita/data/templates/animation/CMakeLists.txt
index 5f1622220b..5f0bda58a0 100644
--- a/krita/data/templates/animation/CMakeLists.txt
+++ b/krita/data/templates/animation/CMakeLists.txt
@@ -1,15 +1,17 @@
install( FILES
-template_animation.png
+light_template_animation.png
+dark_template_animation.png
DESTINATION
${DATA_INSTALL_DIR}/krita/pics
)
install( FILES
Anim-Jp-EN.kra
Anim-Jp-JP.kra
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/animation/.source)
install( FILES
+ .directory
Anim-Jp-EN.desktop
Anim-Jp-JP.desktop
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/animation)
diff --git a/krita/data/templates/animation/dark_template_animation.png b/krita/data/templates/animation/dark_template_animation.png
new file mode 100644
index 0000000000..f2787afd6e
Binary files /dev/null and b/krita/data/templates/animation/dark_template_animation.png differ
diff --git a/krita/data/templates/animation/light_template_animation.png b/krita/data/templates/animation/light_template_animation.png
new file mode 100644
index 0000000000..8689dd626c
Binary files /dev/null and b/krita/data/templates/animation/light_template_animation.png differ
diff --git a/krita/data/templates/animation/template_animation.png b/krita/data/templates/animation/template_animation.png
deleted file mode 100644
index 1c359f732f..0000000000
Binary files a/krita/data/templates/animation/template_animation.png and /dev/null differ
diff --git a/krita/data/templates/animation/template_animation.svg b/krita/data/templates/animation/template_animation.svg
index 4f19375fb8..c4ee907436 100644
--- a/krita/data/templates/animation/template_animation.svg
+++ b/krita/data/templates/animation/template_animation.svg
@@ -1,167 +1,152 @@
+
+
diff --git a/krita/data/templates/comics/.directory b/krita/data/templates/comics/.directory
index f94fde0611..b41f413754 100644
--- a/krita/data/templates/comics/.directory
+++ b/krita/data/templates/comics/.directory
@@ -1,39 +1,40 @@
[Desktop Entry]
Name=Comic Templates
Name[bs]=Predlošci stripova
Name[ca]=Plantilles per a còmics
Name[ca@valencia]=Plantilles per a còmics
Name[cs]=Šablony komixů
Name[da]=Tegneserieskabeloner
Name[de]=Comic-Vorlagen
Name[el]=Πρότυπα κόμικ
Name[en_GB]=Comic Templates
Name[es]=Plantillas de cómic
Name[et]=Koomiksimallid
Name[eu]=Komiki-txantiloiak
Name[fi]=Sarjakuvapohjat
Name[fr]=Modèles de bandes dessinées
Name[gl]=Modelos de banda deseñada
Name[hu]=Képregénysablonok
Name[ia]=Patronos de Comic
Name[it]=Modelli di fumetti
Name[ja]=コミックテンプレート
Name[kk]=Комикс үлгілері
Name[ko]=만화 서식
Name[lt]=Komiksų šablonai
Name[nb]=Tegneseriemaler
Name[nds]=Comic-Vörlagen
Name[nl]=Stripverhaalsjabloon
Name[pl]=Szablony komiksów
Name[pt]=Modelos de Banda Desenhada
Name[pt_BR]=Modelos de quadrinhos
Name[ru]=Шаблоны комиксов
Name[sk]=Komixové šablóny
Name[sl]=Predloge za stripe
Name[sv]=Seriemallar
Name[tr]=Çizgi Roman Şablonu
Name[uk]=Шаблони коміксів
Name[wa]=Modeles di bindes d' imådjes
Name[x-test]=xxComic Templatesxx
+Name[zh_CN]=漫画模板
Name[zh_TW]=漫畫樣本
X-KDE-DefaultTab=true
diff --git a/krita/data/templates/comics/BD-EuroTemplate.desktop b/krita/data/templates/comics/BD-EuroTemplate.desktop
index 023d1c4faf..04f0f9c6ae 100644
--- a/krita/data/templates/comics/BD-EuroTemplate.desktop
+++ b/krita/data/templates/comics/BD-EuroTemplate.desktop
@@ -1,71 +1,73 @@
[Desktop Entry]
Type=Link
URL=.source/BD-EuroTemplate.kra
Icon=template_comics_empty
Name=European BD template
Name[bs]=Evropski BD predložak
Name[ca]=Plantilla europea BD
Name[ca@valencia]=Plantilla europea BD
Name[da]=Europæisk BD-skabelon
Name[de]=Europäische „Bande Dessinée (BD)“-Vorlage
Name[el]=Ευρωπαϊκό BD πρότυπο
Name[en_GB]=European BD template
Name[es]=plantilla de cómic europeo
Name[et]=Euroopa BD mall
Name[eu]=Europako BD-txantiloia
Name[fi]=Eurooppalainen BD-pohja
Name[fr]=Modèle européen de bandes dessinées
Name[gl]=Formato europeo (2×4 viñetas)
Name[hu]=Európai BD sablon
Name[it]=Modello MD europeo
Name[ja]=バンドデシネテンプレート
Name[kk]=Еуропалық BD үлгісі
Name[lt]=Europos DB šablonas
Name[nb]=Europeisk BD-mal
Name[nds]=Europääsch BD-Vörlaag
Name[nl]=Europees BD-sjabloon
Name[pl]=Europejski szablon BD
Name[pt]=Modelo de BD Europeia
Name[pt_BR]=Modelo Europeu BD
Name[ru]=Шаблон в европейском стиле (BD)
Name[sk]=Európska BD šablóna
Name[sl]=Evropska predloga BD
Name[sv]=Europeisk BD-mall
Name[tr]=Avrupa BD Şablonu
Name[uk]=Європейський шаблон BD
Name[wa]=Modele di binde d' imådje a l' uropeyinne
Name[x-test]=xxEuropean BD templatexx
+Name[zh_CN]=欧洲 BD 模板
Name[zh_TW]=歐式 BD 樣本
Comment=template for European BD-style comics
Comment[bs]=predložak za evropske BD stripove
Comment[ca]=plantilla per a còmics d'estil BD europeu
Comment[ca@valencia]=plantilla per a còmics d'estil BD europeu
Comment[da]=Skabelon til tegneserier i europæisk BD-stil
Comment[de]=Vorlage für Comics im europäischen „Bande Dessinée“-Stil
Comment[el]=πρότυπο για Ευρωπαϊκά BD-style κόμικς
Comment[en_GB]=template for European BD-style comics
Comment[es]=plantilla para cómics de estilo europeo
Comment[et]=Euroopa BD-stiilis koomiksi mall
Comment[eu]=Europako BD estiloko komikietarako txantiloia
Comment[fi]=Eurooppalaisen BD-tyylin sarjakuvan pohja
Comment[fr]=Modèle européen de bandes dessinées
Comment[gl]=Páxina de banda deseñada de formato europeo, con 2×4 viñetas regulares.
Comment[hu]=sablon az európai BD-stílusú képregényekhez
Comment[it]=modello per fumetti in stile BD europeo
Comment[ja]=バンドデシネ式コミック用テンプレート
Comment[kk]=Еуропалық BD-стильдегі комикс үлгісі
Comment[nb]=mal for europeiske tegneserier i BD-stil
Comment[nds]=BD-Vörlaag för europääsche Comics
Comment[nl]=sjabloon voor Europese strips in BD-stijl
Comment[pl]=szablon dla Europejskiego stylu komików BD
Comment[pt]=modelo de banda desenhada do estilo Europeu
Comment[pt_BR]=Modelo de quadrinhos no estilo Europeu BD
Comment[ru]=Шаблон комиксов в европейском стиле (BD)
Comment[sk]=šablóna pre európske BD komixy
Comment[sl]=predloga za stripe v evropskem slogu BD
Comment[sv]=seriemall med europeisk BD-stil
Comment[uk]=шаблон для європейських коміксів у стилі BD
Comment[wa]=Modele po les bindes d' imådje al môde uropeyinne
Comment[x-test]=xxtemplate for European BD-style comicsxx
+Comment[zh_CN]=欧洲 BD 式漫画模板
Comment[zh_TW]=歐式 BD-樣式漫畫的樣本
X-Krita-Version=28
diff --git a/krita/data/templates/comics/CMakeLists.txt b/krita/data/templates/comics/CMakeLists.txt
index 19003d6953..004aa59c3a 100644
--- a/krita/data/templates/comics/CMakeLists.txt
+++ b/krita/data/templates/comics/CMakeLists.txt
@@ -1,20 +1,21 @@
install( FILES
-template_comics_empty.png
+light_template_comics_empty.png
+dark_template_comics_empty.png
DESTINATION
${DATA_INSTALL_DIR}/krita/pics
)
install( FILES
a4_waffle_grid.kra
BD-EuroTemplate.kra
Comics-USTemplate.kra
Manga-JpTemplate.kra
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/comics/.source)
install( FILES
.directory
a4_waffle_grid.desktop
BD-EuroTemplate.desktop
Comics-USTemplate.desktop
Manga-JpTemplate.desktop
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/comics)
diff --git a/krita/data/templates/comics/Comics-USTemplate.desktop b/krita/data/templates/comics/Comics-USTemplate.desktop
index 8d9ddb5037..561e281151 100644
--- a/krita/data/templates/comics/Comics-USTemplate.desktop
+++ b/krita/data/templates/comics/Comics-USTemplate.desktop
@@ -1,74 +1,76 @@
[Desktop Entry]
Type=Link
URL=.source/Comics-USTemplate.kra
Icon=template_comics_empty
Name=US-style comics template
Name[bs]=Američki strip predložak
Name[ca]=plantilla de còmics d'estil americà
Name[ca@valencia]=plantilla de còmics d'estil americà
Name[cs]=Šablona komixu v americkém stylu
Name[da]=Tegneserieskabelon i amerikansk stil
Name[de]=US-Design-Comicvorlage
Name[el]=Πρότυπο κόμικς US-style
Name[en_GB]=US-style comics template
Name[es]=plantilla de cómic de estilo estadounidense
Name[et]=USA stiilis koomiksi mall
Name[eu]=AEBko estiloko komiki-txantiloia
Name[fi]=Yhdysvaltalaistyylinen sarjakuvapohja
Name[fr]=Modèle US de bande dessinée
Name[gl]=Formato estadounidense (2×3 viñetas)
Name[hu]=US-stílusú képregénysablon
Name[it]=Modello per fumetti in stile americano
Name[ja]=アメリカ式コミックテンプレート
Name[kk]=АҚШ-стильді комикс үлгісі
Name[ko]=미국식 만화 서식
Name[lt]=JAV stiliaus komiksų šablonas
Name[nb]=Tegneseriemal i USA-stil
Name[nds]=Amerikaansch Comicvörlaag
Name[nl]=sjabloon voor strips in US-stijl
Name[pl]=Szablon komiksów Amerykańskiego stylu
Name[pt]=Modelo de banda desenhada dos EUA
Name[pt_BR]=Modelo de quadrinhos no estilo americano
Name[ru]=Шаблон в американском стиле
Name[sk]=šablóna pre americké komixy
Name[sl]=Predloga za stripe v ameriškem slogu
Name[sv]=Seriemall med amerikansk stil
Name[uk]=Шаблон коміксів у американському стилі
Name[wa]=Modele comics a l' amerikinnes
Name[x-test]=xxUS-style comics templatexx
+Name[zh_CN]=美式漫画模板
Name[zh_TW]=美式漫畫樣本
Comment=template for US-style comics
Comment[bs]=predložak za stripove američkog stila
Comment[ca]=plantilla per a còmics d'estil americà
Comment[ca@valencia]=plantilla per a còmics d'estil americà
Comment[cs]=šablona pro komiksy v americkém stylu
Comment[da]=skabelon til tegneserier i amerikansk stil
Comment[de]=Vorlage für Comics im US-Stil
Comment[el]=πρότυπο για US-style κόμικς
Comment[en_GB]=template for US-style comics
Comment[es]=plantilla para cómics de estilo estadounidense
Comment[et]=USA stiilis koomiksi mall
Comment[eu]=AEBko estiloko komikietarako txantiloia
Comment[fi]=yhdysvaltalaistyylisen sarjakuvan pohja
Comment[fr]=Modèle US de bandes dessinées
Comment[gl]=Páxina de banda deseñada de formato estadounidense, con 2×3 viñetas regulares.
Comment[hu]=sablon a US-stílusú képregényekhez
Comment[it]=modello per fumetti in stile americano
Comment[ja]=アメリカ式コミック用テンプレート
Comment[kk]=АҚШ-стильдегі комикс үлгісі
Comment[ko]=미국식 만화 서식
Comment[nb]=mal for tegneserier i US-stil
Comment[nds]=Vörlaag för amerikaansche Comics
Comment[nl]=sjabloon voor strips in US-stijl
Comment[pl]=szablon dla Amerykańskiego stylu komiksów
Comment[pt]=modelo de banda desenhada do estilo dos EUA
Comment[pt_BR]=Modelo de quadrinhos no estilo americano
Comment[ru]=Шаблон комиксов в американском стиле
Comment[sk]=šablóna pre americké komixy
Comment[sl]=predloga za stripe v ameriškem slogu
Comment[sv]=seriemall med amerikansk stil
Comment[uk]=шаблон для коміксів у американському стилі
Comment[wa]=Modele di bindes d' imådje al môde des comics amerikins
Comment[x-test]=xxtemplate for US-style comicsxx
+Comment[zh_CN]=美式漫画模板
Comment[zh_TW]=美式漫畫樣本
X-Krita-Version=28
diff --git a/krita/data/templates/comics/Manga-JpTemplate.desktop b/krita/data/templates/comics/Manga-JpTemplate.desktop
index 9c0111d60b..d17ebb58af 100644
--- a/krita/data/templates/comics/Manga-JpTemplate.desktop
+++ b/krita/data/templates/comics/Manga-JpTemplate.desktop
@@ -1,77 +1,79 @@
[Desktop Entry]
Type=Link
URL=.source/Manga-JpTemplate.kra
Icon=template_comics_empty
Name=Manga template
Name[bs]=Manga predložak
Name[ca]=Plantilla per a manga
Name[ca@valencia]=Plantilla per a manga
Name[cs]=Šablona Mangy
Name[da]=Manga-skabelon
Name[de]=Manga-Vorlage
Name[el]=Πρότυπο μάνγκα
Name[en_GB]=Manga template
Name[es]=Plantilla manga
Name[et]=Manga mall
Name[eu]=Manga-txantiloia
Name[fi]=Mangapohja
Name[fr]=Modèle de Manga
Name[gl]=Formato Manga
Name[hu]=Manga sablon
Name[ia]=Patrono de Manga
Name[it]=Modello manga
Name[ja]=漫画テンプレート
Name[kk]=Үлгіні басқару
Name[ko]=일본식 만화 서식
Name[lt]=Manga šablonas
Name[nb]=Manga-mal
Name[nds]=Manga-Vörlaag
Name[nl]=Manga-sjabloon
Name[pl]=Szablon Mangi
Name[pt]=Modelo Manga
Name[pt_BR]=Modelo de mangá
Name[ru]=Шаблон манги
Name[sk]=Manga šablóna
Name[sl]=Predloga Manga
Name[sv]=Manga-mall
Name[tr]=Manga şablonu
Name[uk]=Шаблон манґи
Name[wa]=Modele di manga
Name[x-test]=xxManga templatexx
+Name[zh_CN]=漫画模板
Name[zh_TW]=連環漫畫樣本
Comment=template for Japanese Manga-style comics
Comment[bs]=predložak za japanske Manga stripove
Comment[ca]=plantilla per a còmics d'estil manga japonès
Comment[ca@valencia]=plantilla per a còmics d'estil manga japonés
Comment[cs]=šablona pro japonské komiksy ve stylu Manga
Comment[da]=skabelon til tegneserier i japansk Manga-stil
Comment[de]=Vorlage für Comics im Stil japanischer Mangas
Comment[el]=Πρότυπο για Ιαπωνικά μάνγκα κόμικς
Comment[en_GB]=template for Japanese Manga-style comics
Comment[es]=plantilla para cómics de estilo manga japonés
Comment[et]=Jaapani manga-stiilis koomiksi mall
Comment[eu]=Japoniako Manga estiloko komikietarako txantiloia
Comment[fi]=japanilaisen mangatyylisen sarjakuvan pohja
Comment[fr]=Modèle de mangas japonais
Comment[gl]=Páxina de banda deseñada de formato Manga, con 2×3 viñetas non regulares.
Comment[hu]=sablon a japán Manga-stílusú képregényekhez
Comment[it]=modello per fumetti in stile manga giapponese
Comment[ja]=日本式漫画用テンプレート
Comment[kk]=Жапондық манга-стильдегі комикс үлгісі
Comment[ko]=일본식 만화 서식
Comment[nb]=mal for japanske tegneserier i Manga-stil
Comment[nds]=Vörlaag för japaansche Manga-Comics
Comment[nl]=sjabloon voor strips in Japanse Manga-stijl
Comment[pl]=szablon dla Japońskiego stylu komiksów Mangi
Comment[pt]=modelo de banda desenhada Manga do estilo Japonês
Comment[pt_BR]=Modelo de quadrinhos no estilo mangá japonês
Comment[ru]=Шаблон комиксов в японском стиле манга
Comment[sk]=šablóna pre japonské manga komixy
Comment[sl]=predloge za stripe v japonskem slogu Manga
Comment[sv]=seriemall med japansk Manga-stil
Comment[tr]=Japon Manga çizgi romanları için şablon
Comment[uk]=шаблон японських коміксів у стилі манґа
Comment[wa]=Modele di bindes d' imådje al môde des mangas djaponès
Comment[x-test]=xxtemplate for Japanese Manga-style comicsxx
+Comment[zh_CN]=日式漫画模板
Comment[zh_TW]=日式連環漫畫冊樣式的樣本
X-Krita-Version=28
diff --git a/krita/data/templates/comics/a4_waffle_grid.desktop b/krita/data/templates/comics/a4_waffle_grid.desktop
index f01bc068e7..1ebaea23e9 100644
--- a/krita/data/templates/comics/a4_waffle_grid.desktop
+++ b/krita/data/templates/comics/a4_waffle_grid.desktop
@@ -1,63 +1,65 @@
[Desktop Entry]
Type=Link
URL=.source/a4_waffle_grid.kra
Icon=template_comics_empty
Name=waffle-iron grid
Name[bs]=mreža sječenog željeza
Name[ca]=graella de ferro
Name[ca@valencia]=graella de ferro
Name[da]=vaffeljernsgitter
Name[de]=Waffeleisengitter
Name[el]=waffle-iron κάνναβος
Name[en_GB]=waffle-iron grid
Name[es]=rejilla de hierro para gofres
Name[et]=Vahvlimasina ruudustik
Name[eu]=gofreetarako burdinazko sareta
Name[fr]=Grille en métal-gaufré
Name[gl]=Grade de 3×5 viñetas
Name[it]=Griglia a wafer
Name[ja]=格子状コマ
Name[kk]=торлы көзді
Name[nb]=vaffeljern-rutenett
Name[nds]=Wafeliesengadder
Name[nl]=wafelijzer-raster
Name[pl]=siatka gofrownicy
Name[pt]=grelha de ferro para 'waffles'
Name[pt_BR]=Grade de ferro vazia
Name[ru]=Страница с ячейками
Name[sk]=vaflovo-železná mriežka
Name[sv]=våffelmönster
Name[uk]=сітка з комірками
Name[wa]=grile di fier a wåfes
Name[x-test]=xxwaffle-iron gridxx
+Name[zh_CN]=华夫铁网格
Name[zh_TW]=鐵模式格線
Comment=300 dpi, A4 waffle-iron grid comic page with ink and color layers
Comment[bs]=300 dpi, A4 mreža sječenog željeza stranica stripa s slojevima za tintu i bojemreža sječenog željeza
Comment[ca]=300 ppp, pàgina de còmic amb graella de ferro amb capes de tinta i color
Comment[ca@valencia]=300 ppp, pàgina de còmic amb graella de ferro amb capes de tinta i color
Comment[da]=300 dpi, A4 tegneserieside i vaffeljernsgitter med blæk og farvelag
Comment[de]=Comicseite mit Waffeleisengitter-Muster, Tinten- und Farbebenen. Format A4, Auflösung 300 dpi.
Comment[el]=300 dpi, σελίδα κόμικ A4 με waffle-iron κάνναβο και στρώματα μελάνης και χρώματος
Comment[en_GB]=300 dpi, A4 waffle-iron grid comic page with ink and colour layers
Comment[es]=página de cómic con rejilla de hierro para gofres de tamaño A4, a 300 ppp, con tinta y capas de colores
Comment[et]=300 DPI A4 vahvlimasina ruudustikuga koomiksilehekülg tindi- ja värvikihiga
Comment[eu]=Gofreetarako burdinazko sareta duen 300 dpi-ko A4 komiki-orria, tinta- eta kolore-geruzaduna
Comment[fr]=Page de bande dessinée avec Grille en métal-gaufré de 300 dpi, A4 avec encre et calques colorés
Comment[gl]=Páxina de banda deseñada en A4 a 300 dpi con 3×5 viñetas regulares e capas de tinta e cor.
Comment[it]=Pagina di fumetti con griglia a wafer a 300 dpi, A4, con livelli per inchiostro e colore
Comment[ja]=300 dpi A4 サイズの、ペン入れレイヤーと彩色レイヤーを備えた格子状コマテンプレート
Comment[kk]=300 н/д A4 торлы көзді парақтағы комикс
Comment[nb]=300 dpi, A4 tegneserieside med vaffeljern-rutenett, med tusj- og fargelag
Comment[nds]=300 dpi, A4 Wafeliesengadder-Comicsiet mit Dint un Klöörlagen.
Comment[nl]=300 dpi, A4 wafelijzer-raster strippagina met inkt en kleurlagen
Comment[pl]=300 dpi, strona A4 siatki gofrownicy z warstwami tuszu i koloru
Comment[pt]=banda desenhada A4, em grelha de 'waffle' a 300 ppp, com camadas de cores e de pinturas
Comment[pt_BR]=Página de quadrinhos A4, em grade de ferro a 300 ppp, com camadas de cores e de pinturas
Comment[ru]=300 dpi, страница комикса в формате A4 с ячейками и слоями контуров и цветов
Comment[sk]=300 dpi, A4 vaflovo železná mriežka komiksovej strany s atramentom a farebnými vrstvami
Comment[sv]=300 punkter/tum, A4 våffelmönstrad seriesida med bläck- och färglager
Comment[uk]=300 т/д, сторінка коміксу у форматі A4 з комірками та шарами контурів та кольорів
Comment[wa]=Pådje A4 di binde d' imådjes avou on discôpaedje come ene grile di fier a wåfes avou des coûtches d' intche eyet d' coleurs.
Comment[x-test]=xx300 dpi, A4 waffle-iron grid comic page with ink and color layersxx
+Comment[zh_CN]=300 DPI,A4 尺寸华夫铁网格漫画页,带有墨水和色彩图层
Comment[zh_TW]=300 dpi,A4 大小的烘餅鐵模狀的格線,有墨水與顏色圖層
X-Krita-Version=28
diff --git a/krita/data/templates/comics/dark_template_comics_empty.png b/krita/data/templates/comics/dark_template_comics_empty.png
new file mode 100644
index 0000000000..3693020d64
Binary files /dev/null and b/krita/data/templates/comics/dark_template_comics_empty.png differ
diff --git a/krita/data/templates/comics/light_template_comics_empty.png b/krita/data/templates/comics/light_template_comics_empty.png
new file mode 100644
index 0000000000..5addefd334
Binary files /dev/null and b/krita/data/templates/comics/light_template_comics_empty.png differ
diff --git a/krita/data/templates/comics/template_comics_empty.png b/krita/data/templates/comics/template_comics_empty.png
deleted file mode 100644
index cbe95d6071..0000000000
Binary files a/krita/data/templates/comics/template_comics_empty.png and /dev/null differ
diff --git a/krita/data/templates/comics/template_comics_empty.svg b/krita/data/templates/comics/template_comics_empty.svg
index 246af13ec2..762f97057d 100644
--- a/krita/data/templates/comics/template_comics_empty.svg
+++ b/krita/data/templates/comics/template_comics_empty.svg
@@ -1,154 +1,136 @@
-
+
+ style="display:inline">
\ No newline at end of file
diff --git a/krita/data/templates/design/.directory b/krita/data/templates/design/.directory
index 22d779d0e5..6c05f34ad3 100644
--- a/krita/data/templates/design/.directory
+++ b/krita/data/templates/design/.directory
@@ -1,36 +1,37 @@
[Desktop Entry]
Name=Design Templates
Name[bs]=Predlošci dizajna
Name[ca]=Plantilles de disseny
Name[ca@valencia]=Plantilles de disseny
Name[cs]=Návrhové šablony
Name[da]=Designskabeloner
Name[de]=Design-Vorlagen
Name[el]=Πρότυπα σχεδίασης
Name[en_GB]=Design Templates
Name[es]=Plantillas de diseño
Name[et]=Disainmallid
Name[eu]=Diseinu-txantiloiak
Name[fi]=Suunnittelupohjat
Name[fr]=Modèles design
Name[gl]=Modelos de deseño
Name[hu]=Tervező sablonok
Name[ia]=Patronos de dessigno
Name[it]=Modelli di stile
Name[ja]=デザインテンプレート
Name[kk]=Пішім үлгілері
Name[ko]=디자인 서식
Name[lt]=Dizaino šablonai
Name[nb]=Designmaler
Name[nl]=Design-sjablonen
Name[pl]=Szablony projekcyjne
Name[pt]=Modelos de Desenho
Name[pt_BR]=Modelos de design
Name[ru]=Шаблоны для дизайна
Name[sk]=Šablóny dizajnu
Name[sl]=Oblikovalske predloge
Name[sv]=Designmallar
Name[tr]=Tasarım Şablonları
Name[uk]=Шаблони компонування
Name[x-test]=xxDesign Templatesxx
+Name[zh_CN]=设计模板
X-KDE-DefaultTab=true
diff --git a/krita/data/templates/design/CMakeLists.txt b/krita/data/templates/design/CMakeLists.txt
index f8c2441970..ccb704fe7d 100644
--- a/krita/data/templates/design/CMakeLists.txt
+++ b/krita/data/templates/design/CMakeLists.txt
@@ -1,28 +1,34 @@
install( FILES
-template_DIN_A3_landscape.png
-template_DIN_A4_portrait.png
-template_ratio_1610.png
-template_ratio_2391.png
-template_ratio_43.png
-template_web_design.png
+light_template_DIN_A3_landscape.png
+dark_template_DIN_A3_landscape.png
+light_template_DIN_A4_portrait.png
+dark_template_DIN_A4_portrait.png
+light_template_ratio_1610.png
+dark_template_ratio_1610.png
+light_template_ratio_2391.png
+dark_template_ratio_2391.png
+light_template_ratio_43.png
+dark_template_ratio_43.png
+light_template_web_design.png
+dark_template_web_design.png
DESTINATION
${DATA_INSTALL_DIR}/krita/pics)
install( FILES
Designcinema16_10_2484x1200_96dpiRGB_8bit_.kra
Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.kra
DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.kra
DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.kra
Designscreen4_3_2250x1680_96dpiRGB_8bit_.kra
web_design.kra
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/design/.source)
install( FILES
.directory
Designcinema16_10_2484x1200_96dpiRGB_8bit_.desktop
Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.desktop
DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.desktop
DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.desktop
Designscreen4_3_2250x1680_96dpiRGB_8bit_.desktop
web_design.desktop
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/design)
diff --git a/krita/data/templates/design/Designcinema16_10_2484x1200_96dpiRGB_8bit_.desktop b/krita/data/templates/design/Designcinema16_10_2484x1200_96dpiRGB_8bit_.desktop
index 8b3989b2c0..cd29469811 100644
--- a/krita/data/templates/design/Designcinema16_10_2484x1200_96dpiRGB_8bit_.desktop
+++ b/krita/data/templates/design/Designcinema16_10_2484x1200_96dpiRGB_8bit_.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_ratio_1610
Name=Design cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[bs]=Design cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[ca]=Disseny de cine 16:10 [ 2484x1200 / 96ppp RGB / 8bit ]
Name[ca@valencia]=Disseny de cine 16:10 [ 2484x1200 / 96ppp RGB / 8bit ]
Name[cs]=Návrh kino 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[da]=Design-cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[de]=Design-Kino 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[el]=Design cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[en_GB]=Design cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[es]=Diseño de cine 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[et]=Disainkino 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[eu]=Zinema-diseinua 16:10 [2484 x 1200, 96 dpi GBU, 8 bit]
Name[fr]=style cinéma 16:10 [ 2484x1200, 96dpi RGB, 8bit ]
Name[gl]=Deseño de cine 16:10 (2484×1200, 96 dpi RGB, 8 bits)
Name[hu]=Tervező mozi 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[it]=Stile cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[ja]=映画 16:10 [ 2484x1200、96dpi RGB、8 ビット ]
Name[kk]=Кино пішімі 106:1 [ 2484x1200 , 96 н/д RGB , 8бит ]
Name[nb]=Designkino 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[nl]=Design cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[pl]=Kino projekcyjne 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[pt]=Desenho de cinema 16:10 [ 2484x1200 , 96ppp RGB , 8-bits ]
Name[pt_BR]=Design de cinema 16:10 [ 2484x1200, 96dpi RGB, 8bits ]
Name[ru]=Дизайн кино 16:10 [ 2484x1200 , 96dpi RGB , 8 бит ]
Name[sk]=Design cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[sv]=Design film 16:10 [ 2484x1200, 96 punkter/tum RGB, 8 bitar ]
Name[tr]=Sineme tasarla 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]
Name[uk]=Компонування кіноекрана 16:10 [2484⨯1200, 96 т./д., RGB, 8 бітів]
Name[x-test]=xxDesign cinema 16:10 [ 2484x1200 , 96dpi RGB , 8bit ]xx
+Name[zh_CN]=设计影院 16:10 [ 2484x1200 像素, 96dpi RGB , 8 位 ]
Type=Link
URL[$e]=.source/Designcinema16_10_2484x1200_96dpiRGB_8bit_.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/design/Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.desktop b/krita/data/templates/design/Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.desktop
index dd29e63fd3..427cca26ab 100644
--- a/krita/data/templates/design/Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.desktop
+++ b/krita/data/templates/design/Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_ratio_2391
Name=Design cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[bs]=Design cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[ca]=Disseny de cine 2.39:1 [ 2484x1040 / 96ppp RGB / 8bit ]
Name[ca@valencia]=Disseny de cine 2.39:1 [ 2484x1040 / 96ppp RGB / 8bit ]
Name[cs]=Návrh kino 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[da]=Design-cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[de]=Design-Kino 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[el]=Design cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[en_GB]=Design cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[es]=Diseño de cine 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[et]=Disainkino 2,39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[eu]=Zinema-diseinua 2.39:1 [2484 x 1040, 96 dpi GBU, 8 bit]
Name[fr]=style cinéma 2.39:1 [ 2484x1040, 96dpi RGB, 8bit ]
Name[gl]=Deseño de cine 2.39:1 (2484×1040, 96 dpi RGB, 8 bits)
Name[hu]=Tervező mozi 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[it]=Stile cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[ja]=映画 2.39:1 [ 2484x1040、96dpi RGB、8 ビット ]
Name[kk]=Кино пішімі 2.39:1 [ 2484x1040 , 96 н/д RGB , 8бит ]
Name[nb]=Designkino 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[nl]=Design cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[pl]=Kino projekcyjne 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[pt]=Desenho de cinema 2,39:1 [ 2484x1040 , 96ppp RGB , 8-bits ]
Name[pt_BR]=Design de cinema 2.39:1 [ 2484x1040, 96dpi RGB, 8bits ]
Name[ru]=Дизайн кино 2.39:1 [ 2484x1040 , 96dpi RGB , 8 бит ]
Name[sk]=Design cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[sv]=Design film 2,39:1 [ 2484x1040, 96 punkter/tum RGB, 8 bitar ]
Name[tr]=Sineme tasarla 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]
Name[uk]=Компонування кіноекрана 2,39:1 [2484⨯1040, 96 т./д., RGB, 8 бітів]
Name[x-test]=xxDesign cinema 2.39:1 [ 2484x1040 , 96dpi RGB , 8bit ]xx
+Name[zh_CN]=设计影院 2.39:1 [ 2484x1040 像素, 96dpi RGB , 8 位]
Type=Link
URL[$e]=.source/Designcinema2.39_1_2484x1040_96dpiRGB_8bit_.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/design/DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.desktop b/krita/data/templates/design/DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.desktop
index 6153470df2..9079f888f8 100644
--- a/krita/data/templates/design/DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.desktop
+++ b/krita/data/templates/design/DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_DIN_A3_landscape
Name=Design presentation A3 Landscape [ 4960x3508 , 300dpi RGB , 8bit ]
Name[bs]=Design prezentacija A3 položeno [ 4960x3508 , 300dpi RGB , 8bit ]
Name[ca]=Disseny de presentació A3 apaïsada [ 4960x3508 / 300ppp RGB / 8bit ]
Name[ca@valencia]=Disseny de presentació A3 apaïsada [ 4960x3508 / 300ppp RGB / 8bit ]
Name[cs]=Návrh prezentace A3 vodorovně [ 4960x3508 , 300dpi RGB , 8bit ]
Name[da]=Design-præsentation A3 liggende [ 4960x3508 , 300dpi RGB , 8bit ]
Name[de]=Design-Präsentation A3 Querformat [ 4960x3508 , 300dpi RGB , 8bit ]
Name[el]=Design presentation A3 Landscape [ 4960x3508 , 300dpi RGB , 8bit ]
Name[en_GB]=Design presentation A3 Landscape [ 4960x3508 , 300dpi RGB , 8bit ]
Name[es]=Diseño de presentación A3 apaisado [ 4960x3508 , 300dpi RGB , 8bit ]
Name[et]=Disainesitlus A3 rõhtpaigutusega [ 4960x3508 , 300dpi RGB , 8bit ]
Name[eu]=Aurkezpen-diseinua A3 horizontala [4960 x 3508, 300 dpi GBU, 8 bit]
Name[fr]=Style présentation A3 paysage [ 4960x3508, 300dpi RGB, 8bit ]
Name[gl]=Deseño de presentación A3 apaisada (4960×3508, 300 dpi RGB, 8 bits)
Name[hu]=Tervező bemutató A3 fekvő [ 4960x3508 , 300dpi RGB , 8bit ]
Name[it]=Stile di presentazione A3 orizzontale [ 4960x3508 , 300dpi RGB , 8bit ]
Name[ja]=プレゼンテーション A3 横向き [ 4960x3508、300dpi RGB、8 ビット ]
Name[kk]=Презентация пішімі A3 жатық [ 4960x3508 , 300 н/д RGB , 8бит ]
Name[nb]=Design presentasjon A3 liggende [ 4960x3508 , 300dpi RGB , 8bit ]
Name[nl]=Design presentatie A3 Landschap [ 4960x3508 , 300dpi RGB , 8bit ]
Name[pl]=Prezentacja projekcyjna A3 poziomo [ 4960x3508 , 300dpi RGB , 8bit ]
Name[pt]=Desenho de apresentação A3 em Paisagem [ 4960x3508 , 300ppp RGB , 8-bits ]
Name[pt_BR]=Design de apresentação A3 paisagem [ 4960x3508, 300dpi RGB, 8bits ]
Name[ru]=Дизайн презентации A3 Ландшафтный [ 4960x3508 , 300dpi RGB , 8bit ]
Name[sk]=Dizajn prezentácia A3 krajinka [ 4960x3508 , 300dpi RGB , 8bit ]
Name[sv]=Design presentation A3 landskap [ 4960x3508, 300 punkter/tum RGB, 8 bitar ]
Name[tr]=A3 Yatay sunum tasarla [ 4960x3508 , 300dpi RGB , 8bit ]
Name[uk]=Компонування презентації, A3, альбомна [4960⨯3508, 300 т./д., RGB, 8 бітів]
Name[x-test]=xxDesign presentation A3 Landscape [ 4960x3508 , 300dpi RGB , 8bit ]xx
+Name[zh_CN]=设计展示 A3 横版 [ 4960x3508 像素, 300dpi RGB , 8 位]
Type=Link
URL[$e]=.source/DesignpresentationA3Landscape_4960x3508_300dpiRGB_8bit_.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/design/DesignpresentationA4portrait_2480x3508,300dpiRGB_8bit_.desktop b/krita/data/templates/design/DesignpresentationA4portrait_2480x3508,300dpiRGB_8bit_.desktop
index 90abfbf180..997cd902e8 100644
--- a/krita/data/templates/design/DesignpresentationA4portrait_2480x3508,300dpiRGB_8bit_.desktop
+++ b/krita/data/templates/design/DesignpresentationA4portrait_2480x3508,300dpiRGB_8bit_.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_DIN_A4_portrait
Name=Design presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]
Name[bs]=Design prezentacija A4 uspravno [ 2480x3508 , 300dpi RGB , 8bit ]
Name[ca]=Disseny de presentació A4 vertical [ 2480x3508 / 300ppp RGB / 8bit ]
Name[ca@valencia]=Disseny de presentació A4 vertical [ 2480x3508 / 300ppp RGB / 8bit ]
Name[cs]=Návrh prezentace A4 svisle [ x3508 , 300dpi RGB , 8bit ]
Name[da]=Design-præsentation A4 stående [ x3508 , 300dpi RGB , 8bit ]
Name[de]=Design-Präsentation A4 Hochformat [ 2480x3508 , 300dpi RGB , 8bit ]
Name[el]=Design presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]
Name[en_GB]=Design presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]
Name[es]=Diseño de presentación A4 retrato [ 2480x3508 , 300dpi RGB , 8bit ]
Name[et]=Disainesitlus A4 püstpaigutusega [ 2480x3508 , 300dpi RGB , 8bit ]
Name[eu]=Aurkezpen-diseinua A4 bertikala [2480 x 3508, 300 dpi GBU, 8 bit]
Name[fr]=Style présentation A4 portrait [ 2480x3508, 300dpi RGB, 8bit ]
Name[gl]=Deseño de presentación A4 vertical (2480×3508, 300 dpi RGB, 8 bits)
Name[hu]=Tervező bemutató A4 álló [ 2480x3508 , 300dpi RGB , 8bit ]
Name[it]=Stile di presentazione A4 verticale [ 2480x3508 , 300dpi RGB , 8bit ]
Name[ja]=プレゼンテーション A4 縦向き [ 2480x3508、300dpi RGB、8 ビット ]
Name[kk]=Презентация пішімі A4 жатық [ 2460x3508 , 300 н/д RGB , 8бит ]
Name[nb]=Design presentasjon A4 stående [ x3508 , 300dpi RGB , 8bit ]
Name[nl]=Design presentatie A4 portret [ 2480x3508 , 300dpi RGB , 8bit ]
Name[pl]=Prezentacja projekcyjna A4 pionowo [ 2480x3508 , 300dpi RGB , 8bit ]
Name[pt]=Desenho de apresentação A4 em Paisagem [ 2480x3508 , 300ppp RGB , 8-bits ]
Name[pt_BR]=Design de apresentação A4 retrato [ 2480x3508, 300dpi RGB, 8bits ]
Name[ru]=Дизайн презентации A4 Портретный [ 2480x3508 , 300dpi RGB , 8bit ]
Name[sk]=Dizajn prezentácia A4 portrét [ 2480x3508 , 300dpi RGB , 8bit ]
Name[sv]=Design presentation A4 porträtt [ 2480x3508, 300 punkter/tum RGB, 8 bitar ]
Name[tr]=A4 dikey sunum tasarla [ 2480x3508 , 300dpi RGB , 8bit ]
Name[uk]=Компонування презентації, A4, книжкова [2480x3508, 300 т./д., RGB, 8 бітів]
Name[x-test]=xxDesign presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]xx
+Name[zh_CN]=设计展示 A4 竖版 [ 2480x3508 像素, 300dpi RGB , 8 位 ]
Type=Link
URL[$e]=.source/DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/design/DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.desktop b/krita/data/templates/design/DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.desktop
index 90abfbf180..997cd902e8 100644
--- a/krita/data/templates/design/DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.desktop
+++ b/krita/data/templates/design/DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_DIN_A4_portrait
Name=Design presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]
Name[bs]=Design prezentacija A4 uspravno [ 2480x3508 , 300dpi RGB , 8bit ]
Name[ca]=Disseny de presentació A4 vertical [ 2480x3508 / 300ppp RGB / 8bit ]
Name[ca@valencia]=Disseny de presentació A4 vertical [ 2480x3508 / 300ppp RGB / 8bit ]
Name[cs]=Návrh prezentace A4 svisle [ x3508 , 300dpi RGB , 8bit ]
Name[da]=Design-præsentation A4 stående [ x3508 , 300dpi RGB , 8bit ]
Name[de]=Design-Präsentation A4 Hochformat [ 2480x3508 , 300dpi RGB , 8bit ]
Name[el]=Design presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]
Name[en_GB]=Design presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]
Name[es]=Diseño de presentación A4 retrato [ 2480x3508 , 300dpi RGB , 8bit ]
Name[et]=Disainesitlus A4 püstpaigutusega [ 2480x3508 , 300dpi RGB , 8bit ]
Name[eu]=Aurkezpen-diseinua A4 bertikala [2480 x 3508, 300 dpi GBU, 8 bit]
Name[fr]=Style présentation A4 portrait [ 2480x3508, 300dpi RGB, 8bit ]
Name[gl]=Deseño de presentación A4 vertical (2480×3508, 300 dpi RGB, 8 bits)
Name[hu]=Tervező bemutató A4 álló [ 2480x3508 , 300dpi RGB , 8bit ]
Name[it]=Stile di presentazione A4 verticale [ 2480x3508 , 300dpi RGB , 8bit ]
Name[ja]=プレゼンテーション A4 縦向き [ 2480x3508、300dpi RGB、8 ビット ]
Name[kk]=Презентация пішімі A4 жатық [ 2460x3508 , 300 н/д RGB , 8бит ]
Name[nb]=Design presentasjon A4 stående [ x3508 , 300dpi RGB , 8bit ]
Name[nl]=Design presentatie A4 portret [ 2480x3508 , 300dpi RGB , 8bit ]
Name[pl]=Prezentacja projekcyjna A4 pionowo [ 2480x3508 , 300dpi RGB , 8bit ]
Name[pt]=Desenho de apresentação A4 em Paisagem [ 2480x3508 , 300ppp RGB , 8-bits ]
Name[pt_BR]=Design de apresentação A4 retrato [ 2480x3508, 300dpi RGB, 8bits ]
Name[ru]=Дизайн презентации A4 Портретный [ 2480x3508 , 300dpi RGB , 8bit ]
Name[sk]=Dizajn prezentácia A4 portrét [ 2480x3508 , 300dpi RGB , 8bit ]
Name[sv]=Design presentation A4 porträtt [ 2480x3508, 300 punkter/tum RGB, 8 bitar ]
Name[tr]=A4 dikey sunum tasarla [ 2480x3508 , 300dpi RGB , 8bit ]
Name[uk]=Компонування презентації, A4, книжкова [2480x3508, 300 т./д., RGB, 8 бітів]
Name[x-test]=xxDesign presentation A4 portrait [ 2480x3508 , 300dpi RGB , 8bit ]xx
+Name[zh_CN]=设计展示 A4 竖版 [ 2480x3508 像素, 300dpi RGB , 8 位 ]
Type=Link
URL[$e]=.source/DesignpresentationA4portrait_2480x3508_300dpiRGB_8bit_.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/design/Designscreen4_3_2250x1680_96dpiRGB_8bit_.desktop b/krita/data/templates/design/Designscreen4_3_2250x1680_96dpiRGB_8bit_.desktop
index 2f29b0b1f3..579f125968 100644
--- a/krita/data/templates/design/Designscreen4_3_2250x1680_96dpiRGB_8bit_.desktop
+++ b/krita/data/templates/design/Designscreen4_3_2250x1680_96dpiRGB_8bit_.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_ratio_43
Name=Design screen 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[bs]=Design ekran 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[ca]=Disseny de pantalla 4:3 [ 2250x1680 / 96ppp RGB / 8bit ]
Name[ca@valencia]=Disseny de pantalla 4:3 [ 2250x1680 / 96ppp RGB / 8bit ]
Name[cs]=Návrh obrazovka 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[da]=Design-skærm 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[de]=Design-Bildschirm 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[el]=Design screen 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[en_GB]=Design screen 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[es]=Diseño de pantalla 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[et]=Disainekraan 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[eu]=Diseinu-pantaila 4:3 [2250 x 1680, 96 dpi GBU, 8 bit]
Name[fr]=Style écran 4:3 [ 2250x1680, 96dpi RGB, 8bit ]
Name[gl]=Deseño de pantalla 4:3 (2250×1680, 96 dpi RGB, 8 bits)
Name[hu]=Tervező kijelző 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[it]=Stile di disegno 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[ja]=スクリーン 4:3 [ 2250x1680、96dpi RGB、8ビット ]
Name[kk]=Экран пішімі 4:3 [ 2250x1680 , 96 н/д RGB , 8бит ]
Name[nb]=Design skjerm 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[nl]=Design screen 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[pl]=Ekran projekcyjny 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[pt]=Desenho de ecrã 4:3 [ 2250x1680 , 96ppp RGB , 8-bits ]
Name[pt_BR]=Design de tela 4:3 [ 2250x1680, 96dpi RGB, 8bits ]
Name[ru]=Дизайн экрана 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[sk]=Dizajn obrazovka 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[sv]=Design skärm 4:3 [ 2250x1680, 96 punkter/tum RGB, 8 bitar ]
Name[tr]=Ekran tasarla 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]
Name[uk]=Компонування екрана 4:3 [2250⨯1680, 96 т./д., RGB, 8 бітів]
Name[x-test]=xxDesign screen 4:3 [ 2250x1680 , 96dpi RGB , 8bit ]xx
+Name[zh_CN]=设计屏幕 4:3 [ 2250x1680 像素, 96dpi RGB , 8 位]
Type=Link
URL[$e]=.source/Designscreen4_3_2250x1680_96dpiRGB_8bit_.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/design/dark_template_DIN_A3_landscape.png b/krita/data/templates/design/dark_template_DIN_A3_landscape.png
new file mode 100644
index 0000000000..d3777e9362
Binary files /dev/null and b/krita/data/templates/design/dark_template_DIN_A3_landscape.png differ
diff --git a/krita/data/templates/design/dark_template_DIN_A4_portrait.png b/krita/data/templates/design/dark_template_DIN_A4_portrait.png
new file mode 100644
index 0000000000..a20d5918eb
Binary files /dev/null and b/krita/data/templates/design/dark_template_DIN_A4_portrait.png differ
diff --git a/krita/data/templates/design/dark_template_ratio_1610.png b/krita/data/templates/design/dark_template_ratio_1610.png
new file mode 100644
index 0000000000..a8826beb45
Binary files /dev/null and b/krita/data/templates/design/dark_template_ratio_1610.png differ
diff --git a/krita/data/templates/design/dark_template_ratio_2391.png b/krita/data/templates/design/dark_template_ratio_2391.png
new file mode 100644
index 0000000000..36a065fc85
Binary files /dev/null and b/krita/data/templates/design/dark_template_ratio_2391.png differ
diff --git a/krita/data/templates/design/dark_template_ratio_43.png b/krita/data/templates/design/dark_template_ratio_43.png
new file mode 100644
index 0000000000..3b939599f6
Binary files /dev/null and b/krita/data/templates/design/dark_template_ratio_43.png differ
diff --git a/krita/data/templates/design/dark_template_web_design.png b/krita/data/templates/design/dark_template_web_design.png
new file mode 100644
index 0000000000..8d096bc7f6
Binary files /dev/null and b/krita/data/templates/design/dark_template_web_design.png differ
diff --git a/krita/data/templates/design/design-icons.svg b/krita/data/templates/design/design-icons.svg
new file mode 100644
index 0000000000..0ff2b5299e
--- /dev/null
+++ b/krita/data/templates/design/design-icons.svg
@@ -0,0 +1,201 @@
+
+
+
+
diff --git a/krita/data/templates/design/light_template_DIN_A3_landscape.png b/krita/data/templates/design/light_template_DIN_A3_landscape.png
new file mode 100644
index 0000000000..561a9ad566
Binary files /dev/null and b/krita/data/templates/design/light_template_DIN_A3_landscape.png differ
diff --git a/krita/data/templates/design/light_template_DIN_A4_portrait.png b/krita/data/templates/design/light_template_DIN_A4_portrait.png
new file mode 100644
index 0000000000..5b5e7cac73
Binary files /dev/null and b/krita/data/templates/design/light_template_DIN_A4_portrait.png differ
diff --git a/krita/data/templates/design/light_template_ratio_1610.png b/krita/data/templates/design/light_template_ratio_1610.png
new file mode 100644
index 0000000000..b66a46baf3
Binary files /dev/null and b/krita/data/templates/design/light_template_ratio_1610.png differ
diff --git a/krita/data/templates/design/light_template_ratio_2391.png b/krita/data/templates/design/light_template_ratio_2391.png
new file mode 100644
index 0000000000..31ea81f101
Binary files /dev/null and b/krita/data/templates/design/light_template_ratio_2391.png differ
diff --git a/krita/data/templates/design/light_template_ratio_43.png b/krita/data/templates/design/light_template_ratio_43.png
new file mode 100644
index 0000000000..0834e87bbd
Binary files /dev/null and b/krita/data/templates/design/light_template_ratio_43.png differ
diff --git a/krita/data/templates/design/light_template_web_design.png b/krita/data/templates/design/light_template_web_design.png
new file mode 100644
index 0000000000..6b22d24e4d
Binary files /dev/null and b/krita/data/templates/design/light_template_web_design.png differ
diff --git a/krita/data/templates/design/template_DIN_A3_landscape.png b/krita/data/templates/design/template_DIN_A3_landscape.png
deleted file mode 100644
index 5705bead50..0000000000
Binary files a/krita/data/templates/design/template_DIN_A3_landscape.png and /dev/null differ
diff --git a/krita/data/templates/design/template_DIN_A4_portrait.png b/krita/data/templates/design/template_DIN_A4_portrait.png
deleted file mode 100644
index b2a5bea65b..0000000000
Binary files a/krita/data/templates/design/template_DIN_A4_portrait.png and /dev/null differ
diff --git a/krita/data/templates/design/template_ratio_1610.png b/krita/data/templates/design/template_ratio_1610.png
deleted file mode 100644
index da8e3a7234..0000000000
Binary files a/krita/data/templates/design/template_ratio_1610.png and /dev/null differ
diff --git a/krita/data/templates/design/template_ratio_2391.png b/krita/data/templates/design/template_ratio_2391.png
deleted file mode 100644
index e97684dd06..0000000000
Binary files a/krita/data/templates/design/template_ratio_2391.png and /dev/null differ
diff --git a/krita/data/templates/design/template_ratio_43.png b/krita/data/templates/design/template_ratio_43.png
deleted file mode 100644
index 6e1ddbd406..0000000000
Binary files a/krita/data/templates/design/template_ratio_43.png and /dev/null differ
diff --git a/krita/data/templates/design/template_web_design.png b/krita/data/templates/design/template_web_design.png
deleted file mode 100644
index 065f1a4543..0000000000
Binary files a/krita/data/templates/design/template_web_design.png and /dev/null differ
diff --git a/krita/data/templates/design/web_design.desktop b/krita/data/templates/design/web_design.desktop
index bf2c314574..fc268b05af 100644
--- a/krita/data/templates/design/web_design.desktop
+++ b/krita/data/templates/design/web_design.desktop
@@ -1,30 +1,31 @@
[Desktop Entry]
Icon=template_web_design
Name=Web Design [ 2160x1440 , 72ppi RGB , 8bit ]
Name[bs]=Web dizajn [ 2160x1440 , 72ppi RGB , 8bit ]
Name[ca]=Disseny web [ 2160x1440 / 72ppi RGB / 8bit ]
Name[ca@valencia]=Disseny web [ 2160x1440 / 72ppi RGB / 8bit ]
Name[cs]=Návrh webu [ 2160x1440 , 72ppi RGB , 8bit ]
Name[da]=Webdesign [ 2160x1440 , 72ppi RGB , 8bit ]
Name[de]=Web-Design [ 2160x1440 , 72ppi RGB , 8bit ]
Name[en_GB]=Web Design [ 2160x1440 , 72ppi RGB , 8bit ]
Name[es]=Diseño de web 4:3 [ 2160x1440 , 72ppi RGB , 8bit ]
Name[et]=Veebidisain [ 2160x1440, 72ppi RGB, 8-bitine ]
Name[fr]=Style écran [ 2160x1440, 72ppi RGB , 8bit ]
Name[gl]=Deseño web (2160×1440, 72 ppi RGB, 8 bits)
Name[it]=Progettazione web [ 2160x1440 , 72ppi RGB , 8bit ]
Name[ja]=ウェブデザイン [ 2160x1440、72ppi RGB、8 ビット ]
Name[nb]=Web Design [ 2160x1440 , 72ppi RGB , 8bit ]
Name[nl]=Webontwerp [ 2160x1440 , 72ppi RGB , 8bit ]
Name[pl]=Projekt sieciowy [ 2160x1440 , 72ppi RGB , 8bit ]
Name[pt]=Desenho na Web [ 2160x1440 , 72ppp RGB , 8-bits ]
Name[pt_BR]=Web Design [ 2160x1440 , 72ppi RGB , 8bits ]
Name[ru]=Веб-дизайн [ 2160x1440 , 72ppi RGB , 8 бит ]
Name[sk]=Webový dizajn [ 2160x1440 , 72ppi RGB , 8bit ]
Name[sv]=Webbdesign [ 2160x1440, 72 punkter/tum RGB, 8 bitar ]
Name[tr]=Web Tasarımı [ 2160x1440 , 72ppi RGB , 8bit ]
Name[uk]=Вебдизайн [2160⨯1440, 72 т./д., RGB, 8 бітів]
Name[x-test]=xxWeb Design [ 2160x1440 , 72ppi RGB , 8bit ]xx
+Name[zh_CN]=网页设计 [ 2160x1440 像素, 72ppi RGB , 8 位 ]
Type=Link
URL[$e]=.source/web_design.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/dslr/.directory b/krita/data/templates/dslr/.directory
index 9c73c3c3b0..814b9359f8 100644
--- a/krita/data/templates/dslr/.directory
+++ b/krita/data/templates/dslr/.directory
@@ -1,36 +1,37 @@
[Desktop Entry]
Name=DSLR Templates
Name[bs]=DSLR Predlošci
Name[ca]=Plantilles DSLR
Name[ca@valencia]=Plantilles DSLR
Name[cs]=Šablony DSLR
Name[da]=DSLR-skabeloner
Name[de]=DSLR-Vorlagen
Name[el]=Πρότυπα DSLR
Name[en_GB]=DSLR Templates
Name[es]=Plantillas DSLR
Name[et]=Digitaalpeegelkaamera (DSLR) mallid
Name[eu]=DSLR txantiloiak
Name[fi]=DSLR-pohjat
Name[fr]=Modèles DSLR
Name[gl]=Modelos DSLR
Name[hu]=DSLR sablonok
Name[ia]=Patronos de DSLR
Name[it]=Modelli DSLR
Name[ja]=デジタル一眼レフテンプレート
Name[kk]=DSLR үлгілері
Name[ko]=DSLR 서식
Name[lt]=DSLR šablonai
Name[nb]=DSLR-maler
Name[nl]=DSLR-sjablonen
Name[pl]=Szablony DSLR
Name[pt]=Modelos de DSLR
Name[pt_BR]=Modelos DSLR
Name[ru]=Шаблоны для фотоаппаратов
Name[sk]=Šablóny DSLR
Name[sl]=Predloge DSLR
Name[sv]=Mallar för digitala spegelreflexkameror
Name[tr]=DSLR Şablonları
Name[uk]=Шаблони DSLR
Name[x-test]=xxDSLR Templatesxx
+Name[zh_CN]=DSLR 模板
X-KDE-DefaultTab=true
diff --git a/krita/data/templates/dslr/CMakeLists.txt b/krita/data/templates/dslr/CMakeLists.txt
index ac518ceb1f..174d8485c4 100644
--- a/krita/data/templates/dslr/CMakeLists.txt
+++ b/krita/data/templates/dslr/CMakeLists.txt
@@ -1,21 +1,22 @@
install( FILES
-template_dslr.png
+light_template_dslr.png
+dark_template_dslr.png
DESTINATION
${DATA_INSTALL_DIR}/krita/pics )
install( FILES
Canon_550D_5184x3456.kra
Canon_5Dmk3_5760x3840.kra
Nikon_D3000_3872x2592.kra
Nikon_D5000_4288x2848.kra
Nikon_D7000_4928x3264.kra
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/dslr/.source)
install( FILES
.directory
Canon_550D_5184x3456.desktop
Canon_5Dmk3_5760x3840.desktop
Nikon_D3000_3872x2592.desktop
Nikon_D5000_4288x2848.desktop
Nikon_D7000_4928x3264.desktop
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/dslr)
diff --git a/krita/data/templates/dslr/Canon_550D_5184x3456.desktop b/krita/data/templates/dslr/Canon_550D_5184x3456.desktop
index 92ae1a3399..7a8ca2fde3 100755
--- a/krita/data/templates/dslr/Canon_550D_5184x3456.desktop
+++ b/krita/data/templates/dslr/Canon_550D_5184x3456.desktop
@@ -1,37 +1,38 @@
[Desktop Entry]
Icon=template_dslr
Name=Canon_550D_5184x3456
Name[bs]=Canon_550D_5184x3456
Name[ca]=Canon_550D_5184x3456
Name[ca@valencia]=Canon_550D_5184x3456
Name[cs]=Canon_550D_5184x3456
Name[da]=Canon_550D_5184x3456
Name[de]=Canon 550D 5184x3456
Name[el]=Canon_550D_5184x3456
Name[en_GB]=Canon_550D_5184x3456
Name[es]=Canon_550D_5184x3456
Name[et]=Canon_550D_5184x3456
Name[eu]=Canon_550D_5184x3456
Name[fi]=Canon 550D 5184 × 3456
Name[fr]=Canon_550D_5184x3456
Name[gl]=Canon 550D (5184×3456)
Name[hu]=Canon_550D_5184x3456
Name[it]=Canon_550D_5184x3456
Name[ja]=キヤノンEOS Kiss X4(5184x3456)
Name[kk]=Canon_550D_5184x3456
Name[ko]=Canon_550D_5184x3456
Name[nb]=Canon_550D_5184x3456
Name[nl]=Canon_550D_5184x3456
Name[pl]=Canon_550D_5184x3456
Name[pt]=Canon_550D_5184x3456
Name[pt_BR]=Canon 550D 5184x3456
Name[ru]=Canon_550D_5184x3456
Name[sk]=Canon_550D_5184x3456
Name[sl]=Canon_550D_5184x3456
Name[sv]=Canon_550D_5184x3456
Name[tr]=Canon_550D_5184x3456
Name[uk]=Canon 550D 5184⨯3456
Name[x-test]=xxCanon_550D_5184x3456xx
+Name[zh_CN]=佳能 550D 相机 5184x3456 像素
Type=Link
URL[$e]=.source/Canon_550D_5184x3456.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/dslr/Canon_5Dmk3_5760x3840.desktop b/krita/data/templates/dslr/Canon_5Dmk3_5760x3840.desktop
index a8761b9cbb..ab9da52b0d 100755
--- a/krita/data/templates/dslr/Canon_5Dmk3_5760x3840.desktop
+++ b/krita/data/templates/dslr/Canon_5Dmk3_5760x3840.desktop
@@ -1,37 +1,38 @@
[Desktop Entry]
Icon=template_dslr
Name=Canon_5Dmk3_5760x3840
Name[bs]=Canon_5Dmk3_5760x3840
Name[ca]=Canon_5Dmk3_5760x3840
Name[ca@valencia]=Canon_5Dmk3_5760x3840
Name[cs]=Canon_5Dmk3_5760x3840
Name[da]=Canon_5Dmk3_5760x3840
Name[de]=Canon 5Dmk3 5760x3840
Name[el]=Canon_5Dmk3_5760x3840
Name[en_GB]=Canon_5Dmk3_5760x3840
Name[es]=Canon_5Dmk3_5760x3840
Name[et]=Canon_5Dmk3_5760x3840
Name[eu]=Canon_5Dmk3_5760x3840
Name[fi]=Canon 5Dmk3 5760 × 3840
Name[fr]=Canon_5Dmk3_5760x3840
Name[gl]=Canon 5Dmk3 (5760×3840)
Name[hu]=Canon_5Dmk3_5760x3840
Name[it]=Canon_5Dmk3_5760x3840
Name[ja]=キヤノンEOS 5D Mark III(5760x3840)
Name[kk]=Canon_5Dmk3_5760x3840
Name[ko]=Canon_5Dmk3_5760x3840
Name[nb]=Canon_5Dmk3_5760x3840
Name[nl]=Canon_5Dmk3_5760x3840
Name[pl]=Canon_5Dmk3_5760x3840
Name[pt]=Canon_5Dmk3_5760x3840
Name[pt_BR]=Canon 5D Mark III 5760x3840
Name[ru]=Canon_5Dmk3_5760x3840
Name[sk]=Canon_5Dmk3_5760x3840
Name[sl]=Canon_5Dmk3_5760x3840
Name[sv]=Canon_5Dmk3_5760x3840
Name[tr]=Canon_5Dmk3_5760x3840
Name[uk]=Canon 5Dmk3 5760⨯3840
Name[x-test]=xxCanon_5Dmk3_5760x3840xx
+Name[zh_CN]=佳能 5Dmk3 相机 5760x3840 像素
Type=Link
URL[$e]=.source/Canon_5Dmk3_5760x3840.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/dslr/Nikon_D3000_3872x2592.desktop b/krita/data/templates/dslr/Nikon_D3000_3872x2592.desktop
index 74be3a4b24..a5e774b380 100755
--- a/krita/data/templates/dslr/Nikon_D3000_3872x2592.desktop
+++ b/krita/data/templates/dslr/Nikon_D3000_3872x2592.desktop
@@ -1,37 +1,38 @@
[Desktop Entry]
Icon=template_dslr
Name=Nikon_D3000_3872x2592
Name[bs]=Nikon_D3000_3872x2592
Name[ca]=Nikon_D3000_3872x2592
Name[ca@valencia]=Nikon_D3000_3872x2592
Name[cs]=Nikon_D3000_3872x2592
Name[da]=Nikon_D3000_3872x2592
Name[de]=Nikon D3000 3872x2592
Name[el]=Nikon_D3000_3872x2592
Name[en_GB]=Nikon_D3000_3872x2592
Name[es]=Nikon_D3000_3872x2592
Name[et]=Nikon_D3000_3872x2592
Name[eu]=Nikon_D3000_3872x2592
Name[fi]=Nikon D3000 3872 × 2592
Name[fr]=Nikon_D3000_3872x2592
Name[gl]=Nikon D3000 (3872×2592)
Name[hu]=Nikon_D3000_3872x2592
Name[it]=Nikon_D3000_3872x2592
Name[ja]=ニコンD3000(3872x2592)
Name[kk]=Nikon_D3000_3872x2592
Name[ko]=Nikon_D3000_3872x2592
Name[nb]=Nikon_D3000_3872x2592
Name[nl]=Nikon_D3000_3872x2592
Name[pl]=Nikon_D3000_3872x2592
Name[pt]=Nikon_D3000_3872x2592
Name[pt_BR]=Nikon D3000 3872x2592
Name[ru]=Nikon_D3000_3872x2592
Name[sk]=Nikon_D3000_3872x2592
Name[sl]=Nikon_D3000_3872x2592
Name[sv]=Nikon_D3000_3872x2592
Name[tr]=Nikon_D3000_3872x2592
Name[uk]=Nikon D3000 3872⨯2592
Name[x-test]=xxNikon_D3000_3872x2592xx
+Name[zh_CN]=尼康 D3000 相机 3872x2592 像素
Type=Link
URL[$e]=.source/Nikon_D3000_3872x2592.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/dslr/Nikon_D5000_4288x2848.desktop b/krita/data/templates/dslr/Nikon_D5000_4288x2848.desktop
index f1e8d69d7b..0d3a2880aa 100755
--- a/krita/data/templates/dslr/Nikon_D5000_4288x2848.desktop
+++ b/krita/data/templates/dslr/Nikon_D5000_4288x2848.desktop
@@ -1,38 +1,39 @@
[Desktop Entry]
Icon=template_dslr
Name=Nikon_D5000_4288x2848
Name[ast]=Nikon_D5000_4288x2848
Name[bs]=Nikon_D5000_4288x2848
Name[ca]=Nikon_D5000_4288x2848
Name[ca@valencia]=Nikon_D5000_4288x2848
Name[cs]=Nikon_D5000_4288x2848
Name[da]=Nikon_D5000_4288x2848
Name[de]=Nikon D5000 4288x2848
Name[el]=Nikon_D5000_4288x2848
Name[en_GB]=Nikon_D5000_4288x2848
Name[es]=Nikon_D5000_4288x2848
Name[et]=Nikon_D5000_4288x2848
Name[eu]=Nikon_D5000_4288x2848
Name[fi]=Nikon D5000 4288 × 2848
Name[fr]=Nikon_D5000_4288x2848
Name[gl]=Nikon D5000 (4288×2848)
Name[hu]=Nikon_D5000_4288x2848
Name[it]=Nikon_D5000_4288x2848
Name[ja]=ニコンD5000(4288x2848)
Name[kk]=Nikon_D5000_4288x2848
Name[ko]=Nikon_D5000_4288x2848
Name[nb]=Nikon_D5000_4288x2848
Name[nl]=Nikon_D5000_4288x2848
Name[pl]=Nikon_D5000_4288x2848
Name[pt]=Nikon_D5000_4288x2848
Name[pt_BR]=Nikon D5000 4288x2848
Name[ru]=Nikon_D5000_4288x2848
Name[sk]=Nikon_D5000_4288x2848
Name[sl]=Nikon_D5000_4288x2848
Name[sv]=Nikon_D5000_4288x2848
Name[tr]=Nikon_D5000_4288x2848
Name[uk]=Nikon D5000 4288⨯2848
Name[x-test]=xxNikon_D5000_4288x2848xx
+Name[zh_CN]=尼康 D5000 相机 4288x2848 像素
Type=Link
URL[$e]=.source/Nikon_D5000_4288x2848.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/dslr/Nikon_D7000_4928x3264.desktop b/krita/data/templates/dslr/Nikon_D7000_4928x3264.desktop
index d3c674bd8e..057da86b91 100755
--- a/krita/data/templates/dslr/Nikon_D7000_4928x3264.desktop
+++ b/krita/data/templates/dslr/Nikon_D7000_4928x3264.desktop
@@ -1,37 +1,38 @@
[Desktop Entry]
Icon=template_dslr
Name=Nikon_D7000_4928x3264
Name[bs]=Nikon_D7000_4928x3264
Name[ca]=Nikon_D7000_4928x3264
Name[ca@valencia]=Nikon_D7000_4928x3264
Name[cs]=Nikon_D7000_4928x3264
Name[da]=Nikon_D7000_4928x3264
Name[de]=Nikon D7000 4928x3264
Name[el]=Nikon_D7000_4928x3264
Name[en_GB]=Nikon_D7000_4928x3264
Name[es]=Nikon_D7000_4928x3264
Name[et]=Nikon_D7000_4928x3264
Name[eu]=Nikon_D7000_4928x3264
Name[fi]=Nikon D7000 4928 × 3264
Name[fr]=Nikon_D7000_4928x3264
Name[gl]=Nikon D7000 (4928×3264)
Name[hu]=Nikon_D7000_4928x3264
Name[it]=Nikon_D7000_4928x3264
Name[ja]=ニコンD7000(4928x3264)
Name[kk]=Nikon_D7000_4928x3264
Name[ko]=Nikon_D7000_4928x3264
Name[nb]=Nikon_D7000_4928x3264
Name[nl]=Nikon_D7000_4928x3264
Name[pl]=Nikon_D7000_4928x3264
Name[pt]=Nikon_D7000_4928x3264
Name[pt_BR]=Nikon D7000 4928x3264
Name[ru]=Nikon_D7000_4928x3264
Name[sk]=Nikon_D7000_4928x3264
Name[sl]=Nikon_D7000_4928x3264
Name[sv]=Nikon_D7000_4928x3264
Name[tr]=Nikon_D7000_4928x3264
Name[uk]=Nikon D7000 4928⨯3264
Name[x-test]=xxNikon_D7000_4928x3264xx
+Name[zh_CN]=尼康 D7000 相机 4928x3264 像素
Type=Link
URL[$e]=.source/Nikon_D7000_4928x3264.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/dslr/dark_template_dslr.png b/krita/data/templates/dslr/dark_template_dslr.png
new file mode 100644
index 0000000000..2ed623bde9
Binary files /dev/null and b/krita/data/templates/dslr/dark_template_dslr.png differ
diff --git a/krita/data/templates/dslr/light_template_dslr.png b/krita/data/templates/dslr/light_template_dslr.png
new file mode 100644
index 0000000000..dd525c777e
Binary files /dev/null and b/krita/data/templates/dslr/light_template_dslr.png differ
diff --git a/krita/data/templates/dslr/photo-camera.svg b/krita/data/templates/dslr/photo-camera.svg
new file mode 100644
index 0000000000..2a79b8d792
--- /dev/null
+++ b/krita/data/templates/dslr/photo-camera.svg
@@ -0,0 +1,96 @@
+
+
+
+
\ No newline at end of file
diff --git a/krita/data/templates/dslr/template_dslr.png b/krita/data/templates/dslr/template_dslr.png
deleted file mode 100644
index a5c7fb3d93..0000000000
Binary files a/krita/data/templates/dslr/template_dslr.png and /dev/null differ
diff --git a/krita/data/templates/texture/.directory b/krita/data/templates/texture/.directory
index fb938ad3e7..56fff1fe82 100644
--- a/krita/data/templates/texture/.directory
+++ b/krita/data/templates/texture/.directory
@@ -1,36 +1,37 @@
[Desktop Entry]
Name=Texture Templates
Name[bs]=Predlošci teksture
Name[ca]=Plantilles de textura
Name[ca@valencia]=Plantilles de textura
Name[cs]=Šablony textury
Name[da]=Teksturskabeloner
Name[de]=Textur-Vorlagen
Name[el]=Πρότυπα υφής
Name[en_GB]=Texture Templates
Name[es]=Plantillas de textura
Name[et]=Tekstuurimallid
Name[eu]=Testura-txantiloiak
Name[fi]=Tekstuuripohjat
Name[fr]=Modèles de textures
Name[gl]=Modelos de texturas
Name[hu]=Textúrasablonok
Name[ia]=Patronos deTexture
Name[it]=Modelli di trama
Name[ja]=テクスチャテンプレート
Name[kk]=Текстура үлгілері
Name[ko]=텍스처 서식
Name[lt]=Tekstūros šablonas
Name[nb]=Tekstur-malrt
Name[nl]=Textuur-sjablonen
Name[pl]=Szablony teksturowe
Name[pt]=Modelos de Texturas
Name[pt_BR]=Modelos de textura
Name[ru]=Шаблоны текстур
Name[sk]=Šablóny textúr
Name[sl]=Predloge tekstur
Name[sv]=Strukturmallar
Name[tr]=Doku Şablonları
Name[uk]=Шаблони текстур
Name[x-test]=xxTexture Templatesxx
+Name[zh_CN]=纹理模板
X-KDE-DefaultTab=true
diff --git a/krita/data/templates/texture/CMakeLists.txt b/krita/data/templates/texture/CMakeLists.txt
index eb97febe54..2226bba471 100644
--- a/krita/data/templates/texture/CMakeLists.txt
+++ b/krita/data/templates/texture/CMakeLists.txt
@@ -1,38 +1,39 @@
install( FILES
-template_texture.png
+light_template_texture.png
+dark_template_texture.png
DESTINATION
${DATA_INSTALL_DIR}/krita/pics )
install( FILES
Texture1024x10248bitsrgb.kra
Texture1k32bitscalar.kra
Texture1k8bitsrgb.kra
Texture2048x20488bitsrgb.kra
Texture256x2568bitsrgb.kra
Texture2k32bitscalar.kra
Texture2k8bitsrgb.kra
Texture4096x40968bitsrgb.kra
Texture4k32bitscalar.kra
Texture4k8bitsrgb.kra
Texture512x5128bitsrgb.kra
Texture8k32bitscalar.kra
Texture8k8bitsrgb.kra
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/texture/.source)
install( FILES
.directory
Texture1024x10248bitsrgb.desktop
Texture1k32bitscalar.desktop
Texture1k8bitsrgb.desktop
Texture2048x20488bitsrgb.desktop
Texture256x2568bitsrgb.desktop
Texture2k32bitscalar.desktop
Texture2k8bitsrgb.desktop
Texture4096x40968bitsrgb.desktop
Texture4k32bitscalar.desktop
Texture4k8bitsrgb.desktop
Texture512x5128bitsrgb.desktop
Texture8k32bitscalar.desktop
Texture8k8bitsrgb.desktop
DESTINATION ${DATA_INSTALL_DIR}/krita/templates/texture)
diff --git a/krita/data/templates/texture/Texture1024x10248bitsrgb.desktop b/krita/data/templates/texture/Texture1024x10248bitsrgb.desktop
index 147b8edcdb..8bc2e328cb 100644
--- a/krita/data/templates/texture/Texture1024x10248bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture1024x10248bitsrgb.desktop
@@ -1,30 +1,31 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 1024x1024 8bit srgb
Name[bs]=Tekstura 1024x1024 8bit srgb
Name[ca]=Textura 1024x1024 8bit SRGB
Name[ca@valencia]=Textura 1024x1024 8bit SRGB
Name[cs]=Textura 1024x1024 8bit srgb
Name[da]=Tekstur 1024x1024 8bit srgb
Name[de]=Textur 1024x1024 8bit srgb
Name[en_GB]=Texture 1024x1024 8bit srgb
Name[es]=Textura 1024x1024 8bits srgb
Name[et]=Tekstuur 1024x1024 8bit srgb
Name[fr]=Texture 1024x1024 8bit srgb
Name[gl]=Textura de 1024×1024 e 8 bits SRGB
Name[it]=Trama 1024x1024 8bit srgb
Name[ja]=テクスチャ 1024x1024 8 ビット sRGB
Name[nb]=Tekstur 1024x1024 8bit srgb
Name[nl]=Textuur 1024x1024 8bit srgb
Name[pl]=Tekstura 1024x1024 8bit srgb
Name[pt]=Textura 1024x1024 8-bits sRGB
Name[pt_BR]=Textura 1024x1024 8-bits sRGB
Name[ru]=Текстура 1024x1024 8 бит srgb
Name[sk]=Textúra 1024x1024 8bit srgb
Name[sv]=Struktur 1024 x 1024 8-bitar SRGB
Name[tr]=Doku 1024x1024 8bit srgb
Name[uk]=Текстура 1024⨯1024, 8-бітова, srgb
Name[x-test]=xxTexture 1024x1024 8bit srgbxx
+Name[zh_CN]=纹理 1024x1024 像素 8位 srgb 色彩空间
Type=Link
URL[$e]=.source/Texture1024x10248bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture1k32bitscalar.desktop b/krita/data/templates/texture/Texture1k32bitscalar.desktop
index 53f5671680..3f2566f7a1 100755
--- a/krita/data/templates/texture/Texture1k32bitscalar.desktop
+++ b/krita/data/templates/texture/Texture1k32bitscalar.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 1k 32bit scalar
Name[bs]=Tekstura 1k 32bit scalar
Name[ca]=Textura 1k 32bit escalar
Name[ca@valencia]=Textura 1k 32bit escalar
Name[cs]=Textura 1k 32bit skalární
Name[da]=Tekstur 1k 32bit scalar
Name[de]=Textur 1k 32bit scalar
Name[el]=Texture 1k 32bit βαθμωτό
Name[en_GB]=Texture 1k 32bit scalar
Name[es]=Textura 1k 32 bit escalar
Name[et]=Tekstuur 1k 32bit skalaar
Name[eu]=Testura 1k 16bit eskalarra
Name[fr]=Texture 1k 32bit scalaire
Name[gl]=Textura de 1k e 32 bits escalar
Name[hu]=Textúra 1k 32bit skalár
Name[it]=Trama 1k 32bit scalare
Name[ja]=テクスチャ 1k 32 ビットスカラー
Name[kk]=Текстура 1k 32 бит скаляр
Name[nb]=Tekstur 1k 32bit skalar
Name[nl]=Textuur 1k 32bit scalar
Name[pl]=Tekstura 1k 32bit skalar
Name[pt]=Textura 1k 32-bits escalar
Name[pt_BR]=Textura 1k 32bits escalar
Name[ru]=Текстура 1k 32 бит scalar
Name[sk]=Textúra 1k 32bit skalár
Name[sv]=Struktur 1k 32-bitar skalär
Name[tr]=Doku 1k 32bit sayısal
Name[uk]=Текстура 1k, 32-бітова, скалярна
Name[x-test]=xxTexture 1k 32bit scalarxx
+Name[zh_CN]=纹理 1K 像素 32 位 scalar 色彩空间
Type=Link
URL[$e]=.source/Texture1k32bitscalar.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture1k8bitsrgb.desktop b/krita/data/templates/texture/Texture1k8bitsrgb.desktop
index 6812054e73..478ae4c74d 100755
--- a/krita/data/templates/texture/Texture1k8bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture1k8bitsrgb.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 1k 8bit srgb
Name[bs]=Tekstura 1k 8bit srgb
Name[ca]=Textura 1k 8bit SRGB
Name[ca@valencia]=Textura 1k 8bit SRGB
Name[cs]=Textura 1k 8bit srgb
Name[da]=Tekstur 1k 8bit srgb
Name[de]=Textur 1k 8bit srgb
Name[el]=Texture 1k 8bit srgb
Name[en_GB]=Texture 1k 8bit srgb
Name[es]=Textura 1k 8bit srgb
Name[et]=Tekstuur 1k 8bit srgb
Name[eu]=Testura 1k 8bit sGBU
Name[fr]=Texture 1k 8bit srgb
Name[gl]=Textura de 1k e 8 bits SRGB
Name[hu]=Textúra 1k 8bit srgb
Name[it]=Trama 1k 8bit srgb
Name[ja]=テクスチャ 1k 8 ビット sRGB
Name[kk]=Текстура 1k 8 бит srgb
Name[nb]=Tekstur 1k 8bit srgb
Name[nl]=Textuur 1k 8bit srgb
Name[pl]=Tekstura 1k 8bit srgb
Name[pt]=Textura 1k 8-bits sRGB
Name[pt_BR]=Textura 1k 8bits sRGB
Name[ru]=Текстура 1k 8 бит srgb
Name[sk]=Textúra 1k 8bit srgb
Name[sv]=Struktur 1k 8-bitar SRGB
Name[tr]=Doku 1k 8bit srgb
Name[uk]=Текстура 1k, 8-бітова, srgb
Name[x-test]=xxTexture 1k 8bit srgbxx
+Name[zh_CN]=纹理 1K 像素 8 位 sRGB 色彩空间
Type=Link
URL[$e]=.source/Texture1k8bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture2048x20488bitsrgb.desktop b/krita/data/templates/texture/Texture2048x20488bitsrgb.desktop
index c0be72b730..34b1482b92 100644
--- a/krita/data/templates/texture/Texture2048x20488bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture2048x20488bitsrgb.desktop
@@ -1,30 +1,31 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 2048x2048 8bit srgb
Name[bs]=Tekstura 2048x2048 8bit srgb
Name[ca]=Textura 2048x2048 8bit SRGB
Name[ca@valencia]=Textura 2048x2048 8bit SRGB
Name[cs]=Textura 2048x2048 8bit srgb
Name[da]=Tekstur 2048x2048 8bit srgb
Name[de]=Textur 2048x2048 8bit srgb
Name[en_GB]=Texture 2048x2048 8bit srgb
Name[es]=Textura 2048x2048 8bits srgb
Name[et]=Tekstuur 2048x2048 8bit srgb
Name[fr]=Texture 2048x2048 8bit srgb
Name[gl]=Textura de 2048×2048 e 8 bits SRGB
Name[it]=Trama 2048x2048 8bit srgb
Name[ja]=テクスチャ 2048x2048 8 ビット sRGB
Name[nb]=Tekstur 2048x2048 8bit srgb
Name[nl]=Textuur 2048x2048 8bit srgb
Name[pl]=Tekstura 2048x2048 8bit srgb
Name[pt]=Textura 2048x2048 8-bits sRGB
Name[pt_BR]=Textura 2048x2048 8bits sRGB
Name[ru]=Текстура 2048x2048 8 бит srgb
Name[sk]=Textúra 2048x2048 8bit srgb
Name[sv]=Struktur 2048 x 2048 8-bitar SRGB
Name[tr]=Doku 2048x2048 8bit srgb
Name[uk]=Текстура 2048⨯2048, 8-бітова, srgb
Name[x-test]=xxTexture 2048x2048 8bit srgbxx
+Name[zh_CN]=纹理 2048x2048 像素 8 位 sRGB 色彩空间
Type=Link
URL[$e]=.source/Texture2048x20488bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture256x2568bitsrgb.desktop b/krita/data/templates/texture/Texture256x2568bitsrgb.desktop
index 7c1d94637a..9163d3143f 100644
--- a/krita/data/templates/texture/Texture256x2568bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture256x2568bitsrgb.desktop
@@ -1,30 +1,31 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 256x256 8bit srgb
Name[bs]=Tekstura 256x256 8bit srgb
Name[ca]=Textura 256x256 8bit SRGB
Name[ca@valencia]=Textura 256x256 8bit SRGB
Name[cs]=Textura 256x256 8bit srgb
Name[da]=Tekstur 256x256 8bit srgb
Name[de]=Textur 256x256 8bit srgb
Name[en_GB]=Texture 256x256 8bit srgb
Name[es]=Textura 256x256 8bits srgb
Name[et]=Tekstuur 256x256 8bit srgb
Name[fr]=Texture 256x256 8bit srgb
Name[gl]=Textura de 256×256 e 8 bits SRGB
Name[it]=Trama 256x256 8bit srgb
Name[ja]=テクスチャ 256x256 8 ビット sRGB
Name[nb]=Tekstur 256x256 8bit srgb
Name[nl]=Textuur 256x256 8bit srgb
Name[pl]=Tekstura 256x256 8bit srgb
Name[pt]=Textura 256x256 8-bits sRGB
Name[pt_BR]=Textura 256x256 8bits sRGB
Name[ru]=Текстура 256x256 8 бит srgb
Name[sk]=Textúra 256x256 8bit srgb
Name[sv]=Struktur 256 x 256 8-bitar SRGB
Name[tr]=Doku 256x256 8bit srgb
Name[uk]=Текстура 256⨯256, 8-бітова, srgb
Name[x-test]=xxTexture 256x256 8bit srgbxx
+Name[zh_CN]=纹理 256x256 像素 8 位 srgb 色彩空间
Type=Link
URL[$e]=.source/Texture256x2568bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture2k32bitscalar.desktop b/krita/data/templates/texture/Texture2k32bitscalar.desktop
index 80acbe0920..bc96e84458 100755
--- a/krita/data/templates/texture/Texture2k32bitscalar.desktop
+++ b/krita/data/templates/texture/Texture2k32bitscalar.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 2k 32bit scalar
Name[bs]=Tekstura 2k 32bit scalar
Name[ca]=Textura 2k 32bit escalar
Name[ca@valencia]=Textura 2k 32bit escalar
Name[cs]=Textura 2k 32bit skalární
Name[da]=Tekstur 2k 32bit scalar
Name[de]=Textur 2k 32bit scalar
Name[el]=Texture 2k 32bit βαθμωτό
Name[en_GB]=Texture 2k 32bit scalar
Name[es]=Textura 2k 32bit escalar
Name[et]=Tekstuur 2k 32bit skalaar
Name[eu]=Testura 2k 32bit eskalarra
Name[fr]=Texture 2k 32bit scalaire
Name[gl]=Textura de 2k e 32 bits escalar
Name[hu]=Textúra 2k 32bit skalár
Name[it]=Trama 2k 32bit scalare
Name[ja]=テクスチャ 2k 32 ビットスカラー
Name[kk]=Текстура 2k 32 бит скаляр
Name[nb]=Tekstur 2k 32bit skalar
Name[nl]=Textuur 2k 32bit scalar
Name[pl]=Tekstura 2k 32bit skalar
Name[pt]=Textura 2k 32-bits escalar
Name[pt_BR]=Textura 2k 32bits escalar
Name[ru]=Текстура 2k 32 бит scalar
Name[sk]=Textúra 2k 32bit skalár
Name[sv]=Struktur 2k 32-bitar skalär
Name[tr]=Doku 2k 32bit sayısal
Name[uk]=Текстура 2k, 32-бітова, скалярна
Name[x-test]=xxTexture 2k 32bit scalarxx
+Name[zh_CN]=纹理 2K 像素 32 位 scalar 色彩空间
Type=Link
URL[$e]=.source/Texture2k32bitscalar.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture2k8bitsrgb.desktop b/krita/data/templates/texture/Texture2k8bitsrgb.desktop
index 2e5aa3ec09..9da38fb090 100755
--- a/krita/data/templates/texture/Texture2k8bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture2k8bitsrgb.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 2k 8bit srgb
Name[bs]=Tekstura 2k 8bit srgb
Name[ca]=Textura 2k 8bit SRGB
Name[ca@valencia]=Textura 2k 8bit SRGB
Name[cs]=Textura 2k 8bit srgb
Name[da]=Tekstur 2k 8bit srgb
Name[de]=Textur 2k 8bit srgb
Name[el]=Texture 2k 8bit srgb
Name[en_GB]=Texture 2k 8bit srgb
Name[es]=Textura 2k 8bit srgb
Name[et]=Tekstuur 2k 8bit srgb
Name[eu]=Testura 2k 8bit sGBU
Name[fr]=Texture 2k 8bit srgb
Name[gl]=Textura de 2k e 8 bits SRGB
Name[hu]=Textúra 2k 8bit srgb
Name[it]=Trama 2k 8bit srgb
Name[ja]=テクスチャ 2k 8 ビット sRGB
Name[kk]=Текстура 2k 8 бит srgb
Name[nb]=Tekstur 2k 8bit srgb
Name[nl]=Textuur 2k 8bit srgb
Name[pl]=Tekstura 2k 8bit srgb
Name[pt]=Textura 2k 8-bits sRGB
Name[pt_BR]=Textura 2k 8bits sRGB
Name[ru]=Текстура 2k 8 бит srgb
Name[sk]=Textúra 2k 8bit srgb
Name[sv]=Struktur 2k 8-bitar SRGB
Name[tr]=Doku 2k 8bit srgb
Name[uk]=Текстура 2k, 8-бітова, srgb
Name[x-test]=xxTexture 2k 8bit srgbxx
+Name[zh_CN]=纹理 2K 像素 8 位 sRGB 色彩空间
Type=Link
URL[$e]=.source/Texture2k8bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture4096x40968bitsrgb.desktop b/krita/data/templates/texture/Texture4096x40968bitsrgb.desktop
index 2e3099afb9..8e12bab233 100644
--- a/krita/data/templates/texture/Texture4096x40968bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture4096x40968bitsrgb.desktop
@@ -1,30 +1,31 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 4096x4096 8bit srgb
Name[bs]=Tekstura 4096x4096 8bit srgb
Name[ca]=Textura 4096x4096 8bit SRGB
Name[ca@valencia]=Textura 4096x4096 8bit SRGB
Name[cs]=Textura 4096x4096 8bit srgb
Name[da]=Tekstur 4096x4096 8bit srgb
Name[de]=Textur 4096x4096 8bit srgb
Name[en_GB]=Texture 4096x4096 8bit srgb
Name[es]=Textura 4096x4096 8bits srgb
Name[et]=Tekstuur 4096x4096 8bit srgb
Name[fr]=Texture 4096x4096 8bit srgb
Name[gl]=Textura de 4096×4096 e 8 bits SRGB
Name[it]=Trama 4096x4096 8bit srgb
Name[ja]=テクスチャ 4096x4096 8 ビット sRGB
Name[nb]=Tekstur 4096x4096 8bit srgb
Name[nl]=Textuur 4096x4096 8bit srgb
Name[pl]=Tekstura 4096x4096 8bit srgb
Name[pt]=Textura 4096x4096 8-bits sRGB
Name[pt_BR]=Textura 4096x4096 8bits sRGB
Name[ru]=Текстура 4096x4096 8 бит srgb
Name[sk]=Textúra 4096x4096 8bit srgb
Name[sv]=Struktur 4096 x 4096 8-bitar SRGB
Name[tr]=Doku 4096x4096 8bit srgb
Name[uk]=Текстура 4096⨯4096, 8-бітова, srgb
Name[x-test]=xxTexture 4096x4096 8bit srgbxx
+Name[zh_CN]=纹理 4096x4096 像素 8 位 sRGB 色彩空间
Type=Link
URL[$e]=.source/Texture4096x40968bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture4k32bitscalar.desktop b/krita/data/templates/texture/Texture4k32bitscalar.desktop
index 486efb4c62..093320a216 100755
--- a/krita/data/templates/texture/Texture4k32bitscalar.desktop
+++ b/krita/data/templates/texture/Texture4k32bitscalar.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 4k 32bit scalar
Name[bs]=Tekstura 4k 32bit scalar
Name[ca]=Textura 4k 32bit escalar
Name[ca@valencia]=Textura 4k 32bit escalar
Name[cs]=Textura 4k 32bit skalární
Name[da]=Tekstur 4k 32bit scalar
Name[de]=Textur 4k 32bit scalar
Name[el]=Texture 4k 32bit βαθμωτό
Name[en_GB]=Texture 4k 32bit scalar
Name[es]=Textura 4k 32bit escalar
Name[et]=Tekstuur 4k 32bit skalaar
Name[eu]=Testura 4k 32bit eskalarra
Name[fr]=Texture 4k 32bit scalaire
Name[gl]=Textura de 4k e 32 bits escalar
Name[hu]=Textúra 4k 32bit skalár
Name[it]=Trama 4k 32bit scalare
Name[ja]=テクスチャ 4k 32 ビットスカラー
Name[kk]=Текстура 4k 32 бит скаляр
Name[nb]=Tekstur 4k 32bit skalar
Name[nl]=Textuur 4k 32bit scalar
Name[pl]=Tekstura 4k 32bit skalar
Name[pt]=Textura 4k 32-bits escalar
Name[pt_BR]=Textura 4k 32bits escalar
Name[ru]=Текстура 4k 32 бит scalar
Name[sk]=Textúra 4k 32bit skalár
Name[sv]=Struktur 4k 32-bitar skalär
Name[tr]=Doku 4k 32bit sayısal
Name[uk]=Текстура 4k, 32-бітова, скалярна
Name[x-test]=xxTexture 4k 32bit scalarxx
+Name[zh_CN]=纹理 4K 像素 32 位 scalar 色彩空间
Type=Link
URL[$e]=.source/Texture4k32bitscalar.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture4k8bitsrgb.desktop b/krita/data/templates/texture/Texture4k8bitsrgb.desktop
index 704afc3f4c..e7b84ce75e 100755
--- a/krita/data/templates/texture/Texture4k8bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture4k8bitsrgb.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 4k 8bit srgb
Name[bs]=Tekstura 4k 8bit srgb
Name[ca]=Textura 4k 8bit SRGB
Name[ca@valencia]=Textura 4k 8bit SRGB
Name[cs]=Textura 4k 8bit srgb
Name[da]=Tekstur 4k 8bit srgb
Name[de]=Textur 4k 8bit srgb
Name[el]=Texture 4k 8bit srgb
Name[en_GB]=Texture 4k 8bit srgb
Name[es]=Textura 4k 8bit srgb
Name[et]=Tekstuur 4k 8bit srgb
Name[eu]=Testura 4k 8bit sGBU
Name[fr]=Texture 4k 8bit srgb
Name[gl]=Textura de 4k e 8 bits SRGB
Name[hu]=Textúra 4k 8bit srgb
Name[it]=Trama 4k 8bit srgb
Name[ja]=テクスチャ 4k 8 ビット sRGB
Name[kk]=Текстура 4k 8 бит srgb
Name[nb]=Tekstur 4k 8bit srgb
Name[nl]=Textuur 4k 8bit srgb
Name[pl]=Tekstura 4k 8bit srgb
Name[pt]=Textura 4k 8-bits sRGB
Name[pt_BR]=Textura 4k 8bits sRGB
Name[ru]=Текстура 4k 8 бит srgb
Name[sk]=Textúra 4k 8bit srgb
Name[sv]=Struktur 4k 8-bitar SRGB
Name[tr]=Doku 4k 8bit srgb
Name[uk]=Текстура 4k, 8-бітова, srgb
Name[x-test]=xxTexture 4k 8bit srgbxx
+Name[zh_CN]=纹理 4K 像素 8 位 srgb 色彩空间
Type=Link
URL[$e]=.source/Texture4k8bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture512x5128bitsrgb.desktop b/krita/data/templates/texture/Texture512x5128bitsrgb.desktop
index 639bf1b5ea..7d431c6116 100644
--- a/krita/data/templates/texture/Texture512x5128bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture512x5128bitsrgb.desktop
@@ -1,30 +1,31 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 512x512 8bit srgb
Name[bs]=Tekstura 512x512 8bit srgb
Name[ca]=Textura 512x512 8bit SRGB
Name[ca@valencia]=Textura 512x512 8bit SRGB
Name[cs]=Textura 512x512 8bit srgb
Name[da]=Tekstur 512x512 8bit srgb
Name[de]=Textur 512x512 8bit srgb
Name[en_GB]=Texture 512x512 8bit srgb
Name[es]=Textura 512x512 8bits srgb
Name[et]=Tekstuur 512x512 8bit srgb
Name[fr]=Texture 512x512 8bit srgb
Name[gl]=Textura de 512×512 e 8 bits SRGB
Name[it]=Trama 512x512 8bit srgb
Name[ja]=テクスチャ 512x512 8 ビット sRGB
Name[nb]=Tekstur 512x512 8bit srgb
Name[nl]=Textuur 512x512 8bit srgb
Name[pl]=Tekstura 512x512 8bit srgb
Name[pt]=Textura 512x512 8-bits sRGB
Name[pt_BR]=Textura 512x512 8bits sRGB
Name[ru]=Текстура 512x512 8 бит srgb
Name[sk]=Textúra 512x512 8bit srgb
Name[sv]=Struktur 512 x 512 8-bitar SRGB
Name[tr]=Doku 512x512 8bit srgb
Name[uk]=Текстура 512⨯512, 8-бітова, srgb
Name[x-test]=xxTexture 512x512 8bit srgbxx
+Name[zh_CN]=纹理 512x512 像素 8 位 sRGB 色彩空间
Type=Link
URL[$e]=.source/Texture512x5128bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture8k32bitscalar.desktop b/krita/data/templates/texture/Texture8k32bitscalar.desktop
index 0fa1b224fc..07f4930507 100755
--- a/krita/data/templates/texture/Texture8k32bitscalar.desktop
+++ b/krita/data/templates/texture/Texture8k32bitscalar.desktop
@@ -1,34 +1,35 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 8k 32bit scalar
Name[bs]=Tekstura 8k 32bit scalar
Name[ca]=Textura 8k 32bit escalar
Name[ca@valencia]=Textura 8k 32bit escalar
Name[cs]=Textura 8k 32bit skalární
Name[da]=Tekstur 8k 32bit scalar
Name[de]=Textur 8k 32bit scalar
Name[el]=Texture 8k 32bit βαθμωτό
Name[en_GB]=Texture 8k 32bit scalar
Name[es]=Textura 8k 32 bit escalar
Name[et]=Tekstuur 8k 32bit skalaar
Name[eu]=Testura 8k 32bit eskalarra
Name[fr]=Texture 8k 32bit scalaire
Name[gl]=Textura de 8k e 32 bits escalar
Name[hu]=Textúra 8k 32bit skalár
Name[it]=Trama 8k 32bit scalare
Name[ja]=テクスチャ 8k 32 ビットスカラー
Name[kk]=Текстура 8k 32 бит скаляр
Name[nb]=Tekstur 8k 32bit skalar
Name[nl]=Textuur 8k 32bit scalar
Name[pl]=Tekstura 8k 32bit skalar
Name[pt]=Textura 8k 32-bits escalar
Name[pt_BR]=Textura 8k 32bits escalar
Name[ru]=Текстура 8k 32 бит scalar
Name[sk]=Textúra 8k 32bit skalár
Name[sv]=Struktur 8k 32-bitar skalär
Name[tr]=Doku 8k 32bit sayısal
Name[uk]=Текстура 8k, 32-бітова, скалярна
Name[x-test]=xxTexture 8k 32bit scalarxx
+Name[zh_CN]=纹理 8K 像素 32 位 scalar 色彩空间
Type=Link
URL[$e]=.source/Texture8k32bitscalar.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/Texture8k8bitsrgb.desktop b/krita/data/templates/texture/Texture8k8bitsrgb.desktop
index 18f82922b9..4b78395b8e 100755
--- a/krita/data/templates/texture/Texture8k8bitsrgb.desktop
+++ b/krita/data/templates/texture/Texture8k8bitsrgb.desktop
@@ -1,35 +1,36 @@
[Desktop Entry]
Icon=template_texture
Name=Texture 8k 8bit srgb
Name[bs]=Tekstura 8k 8bit srgb
Name[ca]=Textura 8k 8bit SRGB
Name[ca@valencia]=Textura 8k 8bit SRGB
Name[cs]=Textura 8k 8bit srgb
Name[da]=Tekstur 8k 8bit srgb
Name[de]=Textur 8k 8bit srgb
Name[el]=Texture 8k 8bit srgb
Name[en_GB]=Texture 8k 8bit srgb
Name[es]=Textura 8k 8bit srgb
Name[et]=Tekstuur 8k 8bit srgb
Name[eu]=Testura 8k 8bit sGBU
Name[fr]=Texture 8k 8bit srgb
Name[gl]=Textura de 8k e 8 bits SRGB
Name[hu]=Textúra 8k 8bit srgb
Name[it]=Trama 8k 8bit srgb
Name[ja]=テクスチャ 8k 8 ビット sRGB
Name[kk]=Текстура 8k 8 бит srgb
Name[nb]=Tekstur 8k 8bit srgb
Name[nl]=Textuur 8k 8bit srgb
Name[pl]=Tekstura 8k 8bit srgb
Name[pt]=Textura 8k 8-bits sRGB
Name[pt_BR]=Textura 8k 8bits sRGB
Name[ru]=Текстура 8k 8 бит srgb
Name[sk]=Textúra 8k 8bit srgb
Name[sl]=Tekstura 8k 8 bitov srgb
Name[sv]=Struktur 8k 8-bitar SRGB
Name[tr]=Doku 8k 8bit srgb
Name[uk]=Текстура 8k, 8-бітова, srgb
Name[x-test]=xxTexture 8k 8bit srgbxx
+Name[zh_CN]=纹理 8K 像素 8 位 srgb 色彩空间
Type=Link
URL[$e]=.source/Texture8k8bitsrgb.kra
X-KDE-Hidden=false
diff --git a/krita/data/templates/texture/dark_template_texture.png b/krita/data/templates/texture/dark_template_texture.png
new file mode 100644
index 0000000000..fbf4b08ed7
Binary files /dev/null and b/krita/data/templates/texture/dark_template_texture.png differ
diff --git a/krita/data/templates/texture/light_template_texture.png b/krita/data/templates/texture/light_template_texture.png
new file mode 100644
index 0000000000..1d2371a473
Binary files /dev/null and b/krita/data/templates/texture/light_template_texture.png differ
diff --git a/krita/data/templates/texture/template_texture.png b/krita/data/templates/texture/template_texture.png
deleted file mode 100644
index 120b4da015..0000000000
Binary files a/krita/data/templates/texture/template_texture.png and /dev/null differ
diff --git a/krita/data/templates/texture/texture-icon.svg b/krita/data/templates/texture/texture-icon.svg
new file mode 100644
index 0000000000..b81cc035ab
--- /dev/null
+++ b/krita/data/templates/texture/texture-icon.svg
@@ -0,0 +1,110 @@
+
+
+
+
\ No newline at end of file
diff --git a/krita/org.kde.krita.appdata.xml b/krita/org.kde.krita.appdata.xml
index e151fcabe3..66c6696cf5 100644
--- a/krita/org.kde.krita.appdata.xml
+++ b/krita/org.kde.krita.appdata.xml
@@ -1,147 +1,152 @@
org.kde.krita.desktopCC0-1.0Digital Painting, Creative Freedom
+ Pintura dixital, llibertá creativaDigitalno crtanje, kreativna slobodaDibuix digital, Llibertat creativaDibuix digital, Llibertat creativaDigitální malování, svoboda tvorbyDigital tegning, kunstnerisk frihedDigitales Malen, kreative FreiheitDigital Painting, Creative FreedomPintura digital, libertad creativaDigitaalne joonistamine, loominguline vabadusDigitaalimaalaus, luova vapausPeinture numérique, liberté créatriceDebuxo dixital, liberdade creativaPictura digital, Libertate creativePittura digitale, libertà creativaDigital Painting, Creative FreedomCyfrowe malowanie, Wolność TwórczaPintura Digital, Liberdade CriativaPintura Digital, Liberdade CriativaЦифровое рисование. Творческая свободаDigitálne maľovanie, kreatívna slobodaDigital målning, kreativ frihetЦифрове малювання, творча свободаxxDigital Painting, Creative Freedomxx数码绘图,自由创作
Krita is the full-featured digital art studio.
+
Krita ye l'estudiu completu d'arte dixital.
Krita je potpuni digitalni umjetnički studio.
Krita és l'estudi d'art digital ple de funcionalitats.
Krita és l'estudi d'art digital ple de funcionalitats.
Krita ist ein digitales Designstudio mit umfangreichen Funktionen.
Krita is the full-featured digital art studio.
Krita es un estudio de arte digital completo
Krita on rohkete võimalustega digitaalkunstistuudio.
Krita on täyspiirteinen digitaiteen ateljee.
Krita est le studio d'art numérique complet.
Krita é un estudio completo de arte dixital.
Krita es le studio de arte digital complete.
Krita è uno studio d'arte digitale completo.
Krita は、フル機能を備えたデジタルなアートスタジオです。
Krita is de digitale kunststudio vol mogelijkheden.
Krita jest pełnowymiarowym, cyfrowym studiem artystycznym
O Krita é o estúdio de arte digital completo.
O Krita é o estúdio de arte digital completo.
Krita полнофункциональный инструмент для создания цифровой графики.
Krita je plne vybavené digitálne umelecké štúdio.
Krita är den fullfjädrade digitala konststudion.
Krita — повноцінний комплекс для створення цифрових художніх творів.
xxKrita is the full-featured digital art studio.xx
Krita 是全功能的数码艺术工作室。
It is perfect for sketching and painting, and presents an end–to–end solution for creating digital painting files from scratch by masters.
On je savršen za skiciranje i slikanje i predstavlja finalno rješenje za kreiranje digitalnih slika od nule s majstorima
És perfecte per fer esbossos i pintar, i presenta una solució final per crear fitxers de dibuix digital des de zero per a mestres.
És perfecte per fer esbossos i pintar, i presenta una solució final per crear fitxers de dibuix digital des de zero per a mestres.
It is perfect for sketching and painting, and presents an end–to–end solution for creating digital painting files from scratch by masters.
Es perfecto para diseñar y pintar, y ofrece una solución completa para crear desde cero archivos de pintura digital apta para profesionales.
See on suurepärane töövahend visandite ja joonistuste valmistamiseks ning annab andekatele kunstnikele võimaluse luua digitaalpilt algusest lõpuni just oma käe järgi.
Se on täydellinen luonnosteluun ja maalaukseen ja tarjoaa kokonaisratkaisun digitaalisten kuvatiedostojen luomiseen alusta alkaen.
Il est parfait pour crayonner et peindre, et constitue une solution de bout en bout pour créer des fichier de peinture numérique depuis la feuille blanche jusqu'au épreuves finales.
Resulta perfecto para debuxar e pintar, e presenta unha solución completa que permite aos mestres crear ficheiros de debuxo dixital desde cero.
Illo es perfecte pro schizzar e pinger, e presenta un solution ab fin al fin pro crear files de pictura digital ab grattamentos per maestros.
Perfetto per fare schizzi e dipingere, prevede una soluzione completa che consente agli artisti di creare file di dipinti digitali partendo da zero.
Het is perfect voor schetsen en schilderen en zet een end–to–end oplossing voor het maken van digitale bestanden voor schilderingen vanuit het niets door meesters.
Nadaje się perfekcyjnie do szkicowania i malowania i dostarcza zupełnego rozwiązania dla tworzenia plików malowideł cyfrowych od zalążka.
É perfeito para desenhos e pinturas, oferecendo uma solução final para criar ficheiros de pintura digital do zero por mestres.
É perfeito para desenhos e pinturas, oferecendo uma solução final para criar arquivos de desenho digital feitos a partir do zero por mestres.
Она превосходно подходит для набросков и рисования, предоставляя мастерам самодостаточный инструмент для создания цифровой живописи с нуля.
Je ideálna na skicovanie a maľovanie a poskytuje end-to-end riešenie na vytváranie súborov digitálneho maľovania od základu od profesionálov.
Den är perfekt för att skissa och måla, samt erbjuder en helomfattande lösning för att skapa digitala målningsfiler från grunden av mästare.
Цей комплекс чудово пасує для створення ескізів та художніх зображень і є самодостатнім набором для створення файлів цифрових полотен «з нуля» для справжніх художників.
xxIt is perfect for sketching and painting, and presents an end–to–end solution for creating digital painting files from scratch by masters.xx
+
适合做草图和绘画,为艺术大师提供了从草稿到数码绘画的完整解决方案。
Krita is a great choice for creating concept art, comics, textures for rendering and matte paintings. Krita supports many colorspaces like RGB and CMYK
at 8 and 16 bits integer channels, as well as 16 and 32 bits floating point channels.
Krita je odličan izbor za kreiranje konceptualne umjetnosti, stripove, teksture za obradu i mat slike. Krita podržava mnoge prostore boja kao RGB i CMIK na 8 i 16 bitnim cjelobrojnim kanalimaa, kao i 16 i 32 bita floating point kanalima.
El Krita és una gran elecció per crear art conceptual, còmics, textures per renderitzar i pintures «matte». El Krita permet molts espais de color com el RGB i el CMYK a 8 i 16 bits de canals sencers, així com 16 i 32 bits de canals de coma flotant.
El Krita és una gran elecció per crear art conceptual, còmics, textures per renderitzar i pintures «matte». El Krita permet molts espais de color com el RGB i el CMYK a 8 i 16 bits de canals sencers, així com 16 i 32 bits de canals de coma flotant.
Krita is a great choice for creating concept art, comics, textures for rendering and matte paintings. Krita supports many colourspaces like RGB and CMYK at 8 and 16 bits integer channels, as well as 16 and 32 bits floating point channels.
Krita es una gran elección para crear arte conceptual, cómics, texturas para renderizar y «matte paintings». Krita permite el uso de muchos espacios de color, como, por ejemplo, RGB y CMYK, tanto en canales de enteros de 8 y 16 bits, así como en canales de coma flotante de 16 y 32 bits.
Krita on üks paremaid valikuid kontseptuaalkunsti, koomiksite, tekstuuride ja digitaalmaalide loomiseks. Krita toetab paljusid värviruume, näiteks RGB ja CMYK 8 ja 16 täisarvulise bitiga kanali kohta, samuti 16 ja 32 ujukomabitiga kanali kohta.
Krita on hyvä valinta konseptikuvituksen, sarjakuvien, pintakuvioiden ja maalausten luomiseen. Krita tukee useita väriavaruuksia kuten RGB:tä ja CMYK:ta 8 ja 16 bitin kokonaisluku- samoin kuin 16 ja 32 bitin liukulukukanavin.
Krita est un très bon choix pour créer des concepts arts, des bandes-dessinées, des textures de rendu et des peintures. Krita prend en charge plusieurs espaces de couleurs comme RVB et CMJN avec les canaux de 8 et 16 bits entiers ainsi que les canaux de 16 et 32 bits flottants.
Krita é unha gran opción para crear arte conceptual, texturas para renderización e pinturas mate. Krita permite usar moitos espazos de cores como RGB e CMYK con canles de 8 e 16 bits, así como canles de coma flotante de 16 e 32 bits.
Krita es un grande selection pro crear arte de concepto, comics, texturas pro rendering e picturas opac. Krita supporta multe spatios de colores como RGB e CMYK con canales de integer a 8 e 16 bits, como anque canales floating point a 16 e 32 bits.
Krita rappresenta una scelta ottimale per la creazione di arte concettuale, fumetti e texture per il rendering e il matte painting. Krita supporta molti spazi colori come RGB e CMYK a 8 e 16 bit per canali interi e 16 e 32 bit per canali a virgola mobile.
Krita is een goede keuze voor het maken van kunstconcepten, strips, textuur voor weergeven en matte schilderijen. Krita ondersteunt vele kleurruimten zoals RGB en CMYK in 8 en 16 bits kanalen met gehele getallen, evenals 16 en 32 bits kanalen met drijvende komma.
Krita jest świetnym wyborem przy tworzeniu koncepcyjnej sztuki, komiksów, tekstur do wyświetlania i kaszet. Krita obsługuje wiele przestrzeni barw takich jak RGB oraz CMYK dla kanałów 8 oraz 16 bitowych wyrażonych w l. całkowitych, a także 16 oraz 32 bitowych wyrażonych w l. zmiennoprzecinkowych.
O Krita é uma óptima escolha para criar arte conceptual, banda desenhada, texturas para desenho e pinturas. O Krita suporta diversos espaços de cores como o RGB e o CMYK com canais de cores inteiros a 8 e 16 bits, assim como canais de vírgula flutuante a 16 e a 32 bits.
O Krita é uma ótima escolha para criação de arte conceitual, histórias em quadrinhos, texturas para desenhos e pinturas. O Krita tem suporte a diversos espaços de cores como RGB e CMYK com canais de cores inteiros de 8 e 16 bits, assim como canais de ponto flutuante de 16 e 32 bits.
Krita - отличный выбор для создания концепт-артов, комиксов, текстур для рендеринга и рисования. Она поддерживает множество цветовых пространств включая RGB и CMYK с 8 и 16 целыми битами на канал, а также 16 и 32 битами с плавающей запятой на канал.
Krita je výborná voľba pre vytváranie konceptového umenia, textúr na renderovanie a matné kresby. Krita podporuje mnoho farebných priestorov ako RGB a CMYK na 8 a 16 bitových celočíselných kanáloch ako aj 16 a 32 bitových reálnych kanáloch.
Krita är ett utmärkt val för att skapa concept art, serier, strukturer för återgivning och bakgrundsmålningar. Krita stöder många färgrymder som RGB och CMYK med 8- och 16-bitars heltal, samt 16- och 32-bitars flyttal.
Krita — чудовий інструмент для створення концептуального живопису, коміксів, текстур для моделей та декорацій. У Krita передбачено підтримку багатьох просторів кольорів, зокрема RGB та CMYK з 8-бітовими та 16-бітовими цілими значеннями, а також 16-бітовими та 32-бітовими значеннями з рухомою крапкою для каналів кольорів.
xxKrita is a great choice for creating concept art, comics, textures for rendering and matte paintings. Krita supports many colorspaces like RGB and CMYK at 8 and 16 bits integer channels, as well as 16 and 32 bits floating point channels.xx
Have fun painting with the advanced brush engines, amazing filters and many handy features that make Krita enormously productive.
Zabavite se kreirajući napredne pogone četki, filtere i mnoge praktične osobine koje čine Krita vrlo produktivnim.
Gaudiu pintant amb els motors de pinzells avançats, els filtres impressionants i moltes funcionalitats útils que fan el Krita molt productiu.
Gaudiu pintant amb els motors de pinzells avançats, els filtres impressionants i moltes funcionalitats útils que fan el Krita molt productiu.
Have fun painting with the advanced brush engines, amazing filters and many handy features that make Krita enormously productive.
Diviértase pintando con los avanzados motores de pinceles, los espectaculares filtros y muchas funcionalidades prácticas que hacen que Krita sea enormemente productivo.
Joonistamise muudavad tunduvalt lõbusamaks võimsad pintslimootorid, imetabased filtrid ja veel paljud käepärased võimalused, mis muudavad Krita kasutaja tohutult tootlikuks.
Pidä hauskaa maalatessasi edistyneillä sivellinmoottoreilla, hämmästyttävillä suotimilla ja monilla muilla kätevillä ominaisuuksilla, jotka tekevät Kritasta tavattoman tehokkaan.
Amusez-vous à peindre avec les outils de brosse avancés, les filtres incroyables et les nombreuses fonctionnalités pratiques qui rendent Krita extrêmement productif.
Goza debuxando con motores de pincel avanzados, filtros fantásticos e moitas outras funcionalidades útiles que fan de Krita un programa extremadamente produtivo.
Amusa te a pinger con le motores de pincel avantiate, filtros stupende e multe characteristicas amical que face Krita enormemente productive.
Divertiti a dipingere con gli avanzati sistemi di pennelli, i sorprendenti filtri e molte altre utili caratteristiche che fanno di Krita un software enormemente produttivo.
Krita のソフトウェアとしての生産性を高めている先進的なブラシエンジンや素晴らしいフィルタのほか、便利な機能の数々をお楽しみください。
Veel plezier met schilderen met the geavanceerde penseel-engines, filters vol verbazing en vele handige mogelijkheden die maken dat Krita enorm productief is.
Baw się przy malowaniu przy użyciu zaawansowanych silników pędzli, zadziwiających filtrów i wielu innych przydatnych cech, które czynią z Krity bardzo produktywną.
Divirta-se a pintar com os motores de pincéis avançados, os filtros espantosos e muitas outras funcionalidades úteis que tornam o Krita altamente produtivo.
Divirta-se pintando com os mecanismos de pincéis avançados, filtros maravilhosos e muitas outras funcionalidades úteis que tornam o Krita altamente produtivo.
Получайте удовольствие от использования особых кистевых движков, впечатляющих фильтров и множества других функций, делающих Krita сверхпродуктивной.
Užívajte si maľovanie s pokročilými kresliacimi enginmi, úžasnými filtrami a mnohými užitočnými funkciami, ktoré robia Kritu veľmi produktívnu.
Ha det så kul vid målning med de avancerade penselfunktionerna, fantastiska filtren och många praktiska funktioner som gör Krita så enormt produktiv.
Отримуйте задоволення від малювання за допомогою пензлів з найширшими можливостями, чудових фільтрів та багатьох зручних можливостей, які роблять Krita надзвичайно продуктивним засобом малювання.
xxHave fun painting with the advanced brush engines, amazing filters and many handy features that make Krita enormously productive.xx
+
尽情使用高级笔刷引擎,超赞的滤镜和很多手绘特性,发挥 Krita 绝佳的创造力。
https://www.krita.org/https://krita.org/about/faq/https://krita.org/support-us/donations/https://docs.krita.org/Category:Tutorialshttp://files.kde.org/krita/marketing/appdata/2016-05-24_screenshot_002.pnghttp://files.kde.org/krita/marketing/appdata/2016-05-24_screenshot_003.pnghttp://files.kde.org/krita/marketing/appdata/2016-05-24_screenshot_004.pnghttp://files.kde.org/krita/marketing/appdata/2016-05-24_screenshot_005.pngfoundation@krita.orgKDEkrita
diff --git a/krita/org.kde.krita.desktop b/krita/org.kde.krita.desktop
index ab017817d3..250e6e5e26 100644
--- a/krita/org.kde.krita.desktop
+++ b/krita/org.kde.krita.desktop
@@ -1,140 +1,142 @@
[Desktop Entry]
Name=Krita
Name[af]=Krita
Name[bg]=Krita
Name[br]=Krita
Name[bs]=Krita
Name[ca]=Krita
Name[ca@valencia]=Krita
Name[cs]=Krita
Name[cy]=Krita
Name[da]=Krita
Name[de]=Krita
Name[el]=Krita
Name[en_GB]=Krita
Name[eo]=Krita
Name[es]=Krita
Name[et]=Krita
Name[eu]=Krita
Name[fi]=Krita
Name[fr]=Krita
Name[fy]=Krita
Name[ga]=Krita
Name[gl]=Krita
Name[he]=Krita
Name[hi]=केरिता
Name[hne]=केरिता
Name[hr]=Krita
Name[hu]=Krita
Name[ia]=Krita
Name[is]=Krita
Name[it]=Krita
Name[ja]=Krita
Name[kk]=Krita
Name[ko]=Krita
Name[lt]=Krita
Name[lv]=Krita
Name[mr]=क्रिटा
Name[ms]=Krita
Name[nb]=Krita
Name[nds]=Krita
Name[ne]=क्रिता
Name[nl]=Krita
Name[pl]=Krita
Name[pt]=Krita
Name[pt_BR]=Krita
Name[ro]=Krita
Name[ru]=Krita
Name[se]=Krita
Name[sk]=Krita
Name[sl]=Krita
Name[sv]=Krita
Name[ta]=கிரிட்டா
Name[tg]=Krita
Name[tr]=Krita
Name[ug]=Krita
Name[uk]=Krita
Name[uz]=Krita
Name[uz@cyrillic]=Krita
Name[wa]=Krita
Name[xh]=Krita
Name[x-test]=xxKritaxx
Name[zh_CN]=Krita
Name[zh_TW]=繪圖_Krita
Exec=krita %U
GenericName=Digital Painting
GenericName[bs]=Digitalno Bojenje
GenericName[ca]=Dibuix digital
GenericName[ca@valencia]=Dibuix digital
GenericName[da]=Digital tegning
GenericName[de]=Digitales Malen
GenericName[el]=Ψηφιακή ζωγραφική
GenericName[en_GB]=Digital Painting
GenericName[es]=Pintura digital
GenericName[et]=Digitaalne joonistamine
GenericName[eu]=Pintura digitala
GenericName[fi]=Digitaalimaalaus
GenericName[fr]=Peinture numérique
GenericName[gl]=Debuxo dixital
GenericName[hu]=Digitális festészet
GenericName[ia]=Pintura Digital
GenericName[it]=Pittura digitale
GenericName[ja]=デジタルペインティング
GenericName[kk]=Цифрлық сурет салу
GenericName[lt]=Skaitmeninis piešimas
GenericName[mr]=डिजिटल पेंटिंग
GenericName[nb]=Digital maling
GenericName[nl]=Digitaal schilderen
GenericName[pl]=Cyfrowe malowanie
GenericName[pt]=Pintura Digital
GenericName[pt_BR]=Pintura digital
GenericName[ru]=Цифровая живопись
GenericName[sk]=Digitálne maľovanie
GenericName[sl]=Digitalno slikanje
GenericName[sv]=Digital målning
GenericName[tr]=Sayısal Boyama
GenericName[ug]=سىفىرلىق رەسىم سىزغۇ
GenericName[uk]=Цифрове малювання
GenericName[x-test]=xxDigital Paintingxx
+GenericName[zh_CN]=数字绘画
MimeType=application/x-krita;image/openraster;application/x-krita-paintoppreset;
Comment=Digital Painting
Comment[bs]=Digitalno Bojenje
Comment[ca]=Dibuix digital
Comment[ca@valencia]=Dibuix digital
Comment[da]=Digital tegning
Comment[de]=Digitales Malen
Comment[el]=Ψηφιακή ζωγραφική
Comment[en_GB]=Digital Painting
Comment[es]=Pintura digital
Comment[et]=Digitaalne joonistamine
Comment[eu]=Pintura digitala
Comment[fi]=Digitaalimaalaus
Comment[fr]=Peinture numérique
Comment[gl]=Debuxo dixital.
Comment[hu]=Digitális festészet
Comment[ia]=Pintura Digital
Comment[it]=Pittura digitale
Comment[ja]=デジタルペインティング
Comment[kk]=Цифрлық сурет салу
Comment[lt]=Skaitmeninis piešimas
Comment[mr]=डिजिटल पेंटिंग
Comment[nb]=Digital maling
Comment[nl]=Digitaal schilderen
Comment[pl]=Cyfrowe malowanie
Comment[pt]=Pintura Digital
Comment[pt_BR]=Pintura digital
Comment[ru]=Цифровая живопись
Comment[sk]=Digitálne maľovanie
Comment[sl]=Digitalno slikanje
Comment[sv]=Digitalt målningsverktyg
Comment[tr]=Sayısal Boyama
Comment[ug]=سىفىرلىق رەسىم سىزغۇ
Comment[uk]=Цифрове малювання
Comment[x-test]=xxDigital Paintingxx
+Comment[zh_CN]=数字绘画
Type=Application
Icon=calligrakrita
Categories=Qt;KDE;Graphics;
X-KDE-NativeMimeType=application/x-krita
X-KDE-ExtraNativeMimeTypes=
StartupNotify=true
X-Krita-Version=28
diff --git a/libs/odf/tests/TestNumberStyle.cpp b/libs/odf/tests/TestNumberStyle.cpp
index dcf1d5b673..8b72c2a4fa 100644
--- a/libs/odf/tests/TestNumberStyle.cpp
+++ b/libs/odf/tests/TestNumberStyle.cpp
@@ -1,167 +1,170 @@
/* This file is part of the KDE project
* Copyright (C) 2011 Sebastian Sauer
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this library; see the file COPYING.LIB. If not, write to
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301, USA.
*/
#include "TestNumberStyle.h"
#include
#include
QString escapeLocals(const QString &text)
{
QString t(text);
t.replace(',','.');
return t;
}
void TestNumberStyle::testEmpty()
{
KoOdfNumberStyles::NumericStyleFormat f;
QCOMPARE(f.formatStr, QString());
QCOMPARE(f.prefix, QString());
QCOMPARE(f.suffix, QString());
QCOMPARE(f.type, KoOdfNumberStyles::Text);
QCOMPARE(f.precision, -1);
QCOMPARE(f.currencySymbol, QString());
QCOMPARE(f.thousandsSep, false);
QCOMPARE(f.styleMaps.count(), 0);
}
void TestNumberStyle::testText()
{
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Text;
QCOMPARE(KoOdfNumberStyles::format("Some text", f), QString("Some text"));
}
void TestNumberStyle::testNumber()
{
QCOMPARE(KoOdfNumberStyles::formatNumber(23, "0."), QString("23"));
QCOMPARE(KoOdfNumberStyles::formatNumber(0, "0."), QString("0"));
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Number;
f.precision = 3;
f.thousandsSep = true;
f.formatStr = "00.00 test";
QCOMPARE(KoOdfNumberStyles::format("12345.6789", f), QString("12345.679 test"));
f.precision = 1;
f.formatStr = "test1 00.00 test2";
QCOMPARE(KoOdfNumberStyles::format("12345.6789", f), QString("test1 12345.70 test2"));
}
void TestNumberStyle::testDate()
{
QCOMPARE(KoOdfNumberStyles::formatDate(4567, "MM/dd/yyyy"), QString("07/02/1912"));
QCOMPARE(KoOdfNumberStyles::formatDate(0, "MM/dd/yy"), QString("12/30/99"));
}
void TestNumberStyle::testTime()
{
QCOMPARE(KoOdfNumberStyles::formatTime(0.524259259259, "hh:mm:ss"), QString("12:34:56"));
QCOMPARE(KoOdfNumberStyles::formatTime(0.524259259259, "hh:mm"), QString("12:34"));
QCOMPARE(KoOdfNumberStyles::formatTime(0, "hh:mm:ss"), QString("00:00:00"));
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Time;
f.formatStr = "hh:mm:ss";
QCOMPARE(KoOdfNumberStyles::format("0.524259259259", f), QString("12:34:56"));
QCOMPARE(KoOdfNumberStyles::format("test", f), QString("test"));
- QCOMPARE(KoOdfNumberStyles::format("123", f), QString("13:54:25"));
+ QCOMPARE(KoOdfNumberStyles::format("123", f), QString("00:00:00"));
QCOMPARE(KoOdfNumberStyles::format("1.23", f), QString("05:31:12"));
}
void TestNumberStyle::testBoolean()
{
QCOMPARE(KoOdfNumberStyles::formatBoolean("0", ""), QString("FALSE"));
QCOMPARE(KoOdfNumberStyles::formatBoolean("234", ""), QString("TRUE"));
QCOMPARE(KoOdfNumberStyles::formatBoolean("0", ""), QString("FALSE"));
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Boolean;
QCOMPARE(KoOdfNumberStyles::format("0", f), QString("FALSE"));
QCOMPARE(KoOdfNumberStyles::format("1", f), QString("TRUE"));
QCOMPARE(KoOdfNumberStyles::format("123", f), QString("TRUE"));
QCOMPARE(KoOdfNumberStyles::format("test", f), QString("FALSE"));
}
void TestNumberStyle::testPercent()
{
QCOMPARE(KoOdfNumberStyles::formatPercent("23", ""), QString("23"));
QCOMPARE(KoOdfNumberStyles::formatPercent("23.4567", "0.00%", 2), QString("2345.67%"));
QCOMPARE(KoOdfNumberStyles::formatPercent("23.456789", "0.0000%", 4), QString("2345.6789%"));
QCOMPARE(KoOdfNumberStyles::formatPercent("0", ""), QString("0"));
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Percentage;
f.precision = 2;
f.formatStr = "0%";
QCOMPARE(KoOdfNumberStyles::format("0.2", f), QString("20.00%"));
QCOMPARE(KoOdfNumberStyles::format("0.02", f), QString("2.00%"));
QCOMPARE(KoOdfNumberStyles::format("0.02228", f), QString("2.23%"));
QCOMPARE(KoOdfNumberStyles::format("test", f), QString("test"));
QCOMPARE(KoOdfNumberStyles::format("123", f), QString("123"));
QCOMPARE(KoOdfNumberStyles::format("1.23", f), QString("123.00%"));
}
void TestNumberStyle::testScientific()
{
+ QEXPECT_FAIL("", "min-exponent-digits not handled", Continue);
QCOMPARE(escapeLocals(KoOdfNumberStyles::formatScientific(345678, "0.00E+000")), QString("3.456780E+05"));
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Scientific;
f.precision = 3;
+ QEXPECT_FAIL("", "min-exponent-digits not handled", Continue);
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("0.2", f)), QString("2.000E-01"));
+ QEXPECT_FAIL("", "min-exponent-digits not handled", Continue);
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("1.23", f)), QString("1.230E+00"));
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("test", f)), QString("test"));
}
void TestNumberStyle::testFraction()
{
QCOMPARE(KoOdfNumberStyles::formatFraction(34.5678, " ?/?"), QString("34 4/7"));
}
void TestNumberStyle::testCurrency()
{
QCOMPARE(KoOdfNumberStyles::formatCurrency(34.56, "-$#,###0.00", QString(), 2), QString("$34.56"));
QCOMPARE(KoOdfNumberStyles::formatCurrency(34.56, "-#,###0.00 EUR", QString(), 2), QString("34.56 EUR"));
QCOMPARE(KoOdfNumberStyles::formatCurrency(34.56, "-$#,###0.", QString(), 0), QString("$35"));
QString localDependentDollar = escapeLocals(KoOdfNumberStyles::formatCurrency(34.5, "#,###0 CCC", "CCC"));
QVERIFY(localDependentDollar.startsWith("34.50") || localDependentDollar.endsWith("34.50"));
QVERIFY(localDependentDollar.startsWith("USD") || localDependentDollar.endsWith("USD"));
QCOMPARE(KoOdfNumberStyles::formatCurrency(34.56789, "-#,###0.00 EUR", QString(), 2), QString("34.57 EUR"));
QCOMPARE(KoOdfNumberStyles::formatCurrency(34.5, "-#,###0.00 EUR", QString(), 2), QString("34.50 EUR"));
KoOdfNumberStyles::NumericStyleFormat f;
f.type = KoOdfNumberStyles::Currency;
f.currencySymbol = "";
f.precision = 2;
f.formatStr = "-#,###0.00 EUR";
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("0.2", f)), QString("0.20 EUR"));
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("$ 1.23", f)), QString("$ 1.23"));
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("test", f)), QString("test"));
f.currencySymbol = "$";
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("0.2", f)), QString("0.20 EUR"));
f.formatStr = "-#,###0.00";
QCOMPARE(escapeLocals(KoOdfNumberStyles::format("0.2", f)), QString("0.20"));
f.formatStr = "";
localDependentDollar = escapeLocals(KoOdfNumberStyles::format("0.2", f));
QVERIFY(localDependentDollar.startsWith("0.20") || localDependentDollar.endsWith("0.20"));
QVERIFY(localDependentDollar.startsWith("$") || localDependentDollar.endsWith("$"));
}
QTEST_MAIN(TestNumberStyle)
diff --git a/libs/ui/KisImportExportManager.cpp b/libs/ui/KisImportExportManager.cpp
index bd2772370f..06c2e67906 100644
--- a/libs/ui/KisImportExportManager.cpp
+++ b/libs/ui/KisImportExportManager.cpp
@@ -1,456 +1,458 @@
/*
* Copyright (C) 2016 Boudewijn Rempt
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public License
* along with this library; see the file COPYING.LIB. If not, write to
* the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301, USA.
*/
#include "KisImportExportManager.h"
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include "kis_config.h"
#include "KisImportExportFilter.h"
#include "KisDocument.h"
#include
#include
#include "kis_guides_config.h"
#include "kis_grid_config.h"
#include "kis_popup_button.h"
#include
// static cache for import and export mimetypes
QStringList KisImportExportManager::m_importMimeTypes;
QStringList KisImportExportManager::m_exportMimeTypes;
class Q_DECL_HIDDEN KisImportExportManager::Private
{
public:
bool batchMode {false};
QPointer progressUpdater {0};
};
KisImportExportManager::KisImportExportManager(KisDocument* document)
: m_document(document)
, d(new Private)
{
}
KisImportExportManager::~KisImportExportManager()
{
delete d;
}
KisImportExportFilter::ConversionStatus KisImportExportManager::importDocument(const QString& location, const QString& mimeType)
{
return convert(Import, location, location, mimeType, false, 0);
}
KisImportExportFilter::ConversionStatus KisImportExportManager::exportDocument(const QString& location, const QString& realLocation, QByteArray& mimeType, bool showWarnings, KisPropertiesConfigurationSP exportConfiguration)
{
return convert(Export, location, realLocation, mimeType, showWarnings, exportConfiguration);
}
// The static method to figure out to which parts of the
// graph this mimetype has a connection to.
QStringList KisImportExportManager::mimeFilter(Direction direction)
{
// Find the right mimetype by the extension
QSet mimeTypes;
// mimeTypes << KisDocument::nativeFormatMimeType() << "application/x-krita-paintoppreset" << "image/openraster";
if (direction == KisImportExportManager::Import) {
if (m_importMimeTypes.isEmpty()) {
KoJsonTrader trader;
QListlist = trader.query("Krita/FileFilter", "");
Q_FOREACH(QPluginLoader *loader, list) {
QJsonObject json = loader->metaData().value("MetaData").toObject();
Q_FOREACH(const QString &mimetype, json.value("X-KDE-Import").toString().split(",", QString::SkipEmptyParts)) {
//qDebug() << "Adding import mimetype" << mimetype << KisMimeDatabase::descriptionForMimeType(mimetype) << "from plugin" << loader;
mimeTypes << mimetype;
}
}
qDeleteAll(list);
m_importMimeTypes = mimeTypes.toList();
}
return m_importMimeTypes;
}
else if (direction == KisImportExportManager::Export) {
if (m_exportMimeTypes.isEmpty()) {
KoJsonTrader trader;
QListlist = trader.query("Krita/FileFilter", "");
Q_FOREACH(QPluginLoader *loader, list) {
QJsonObject json = loader->metaData().value("MetaData").toObject();
Q_FOREACH(const QString &mimetype, json.value("X-KDE-Export").toString().split(",", QString::SkipEmptyParts)) {
//qDebug() << "Adding export mimetype" << mimetype << KisMimeDatabase::descriptionForMimeType(mimetype) << "from plugin" << loader;
mimeTypes << mimetype;
}
}
qDeleteAll(list);
m_exportMimeTypes = mimeTypes.toList();
}
return m_exportMimeTypes;
}
return QStringList();
}
KisImportExportFilter *KisImportExportManager::filterForMimeType(const QString &mimetype, KisImportExportManager::Direction direction)
{
int weight = -1;
KisImportExportFilter *filter = 0;
KoJsonTrader trader;
QListlist = trader.query("Krita/FileFilter", "");
Q_FOREACH(QPluginLoader *loader, list) {
QJsonObject json = loader->metaData().value("MetaData").toObject();
QString directionKey = direction == Export ? "X-KDE-Export" : "X-KDE-Import";
if (json.value(directionKey).toString().split(",", QString::SkipEmptyParts).contains(mimetype)) {
KLibFactory *factory = qobject_cast(loader->instance());
if (!factory) {
warnUI << loader->errorString();
continue;
}
QObject* obj = factory->create(0);
if (!obj || !obj->inherits("KisImportExportFilter")) {
delete obj;
continue;
}
KisImportExportFilter *f = qobject_cast(obj);
if (!f) {
delete obj;
continue;
}
int w = json.value("X-KDE-Weight").toInt();
if (w > weight) {
delete filter;
filter = f;
f->setObjectName(loader->fileName());
weight = w;
}
}
}
qDeleteAll(list);
- filter->setMimeType(mimetype);
+ if (filter) {
+ filter->setMimeType(mimetype);
+ }
return filter;
}
void KisImportExportManager::setBatchMode(const bool batch)
{
d->batchMode = batch;
}
bool KisImportExportManager::batchMode(void) const
{
return d->batchMode;
}
void KisImportExportManager::setProgresUpdater(KoProgressUpdater *updater)
{
d->progressUpdater = updater;
}
QString KisImportExportManager::askForAudioFileName(const QString &defaultDir, QWidget *parent)
{
KoFileDialog dialog(parent, KoFileDialog::ImportFiles, "ImportAudio");
if (!defaultDir.isEmpty()) {
dialog.setDefaultDir(defaultDir);
}
QStringList mimeTypes;
mimeTypes << "audio/mpeg";
mimeTypes << "audio/ogg";
mimeTypes << "audio/vorbis";
mimeTypes << "audio/vnd.wave";
mimeTypes << "audio/flac";
dialog.setMimeTypeFilters(mimeTypes);
dialog.setCaption(i18nc("@titile:window", "Open Audio"));
return dialog.filename();
}
KisImportExportFilter::ConversionStatus KisImportExportManager::convert(KisImportExportManager::Direction direction, const QString &location, const QString& realLocation, const QString &mimeType, bool showWarnings, KisPropertiesConfigurationSP exportConfiguration)
{
QString typeName = mimeType;
if (typeName.isEmpty()) {
typeName = KisMimeDatabase::mimeTypeForFile(location);
}
QSharedPointer filter(filterForMimeType(typeName, direction));
if (!filter) {
return KisImportExportFilter::FilterCreationError;
}
filter->setFilename(location);
filter->setRealFilename(realLocation);
filter->setBatchMode(batchMode());
filter->setMimeType(typeName);
if (d->progressUpdater) {
filter->setUpdater(d->progressUpdater->startSubtask());
}
QByteArray from, to;
if (direction == Export) {
from = m_document->nativeFormatMimeType();
to = mimeType.toLatin1();
}
else {
from = mimeType.toLatin1();
to = m_document->nativeFormatMimeType();
}
if (!exportConfiguration) {
exportConfiguration = filter->lastSavedConfiguration(from, to);
if (exportConfiguration) {
// Fill with some meta information about the image
KisImageWSP image = m_document->image();
KisPaintDeviceSP pd = image->projection();
bool isThereAlpha = false;
KisSequentialConstIterator it(pd, image->bounds());
const KoColorSpace* cs = pd->colorSpace();
do {
if (cs->opacityU8(it.oldRawData()) != OPACITY_OPAQUE_U8) {
isThereAlpha = true;
break;
}
} while (it.nextPixel());
exportConfiguration->setProperty("ImageContainsTransparency", isThereAlpha);
exportConfiguration->setProperty("ColorModelID", cs->colorModelId().id());
exportConfiguration->setProperty("ColorDepthID", cs->colorDepthId().id());
bool sRGB = (cs->profile()->name().contains(QLatin1String("srgb"), Qt::CaseInsensitive) && !cs->profile()->name().contains(QLatin1String("g10")));
exportConfiguration->setProperty("sRGB", sRGB);
}
}
KisPreExportChecker checker;
if (direction == Export) {
checker.check(m_document->image(), filter->exportChecks());
}
KisConfigWidget *wdg = filter->createConfigurationWidget(0, from, to);
bool alsoAsKra = false;
QStringList warnings = checker.warnings();
QStringList errors = checker.errors();
// Extra checks that cannot be done by the checker, because the checker only has access to the image.
if (!m_document->assistants().isEmpty() && typeName != m_document->nativeFormatMimeType()) {
warnings.append(i18nc("image conversion warning", "The image contains assistants. The assistants will not be saved."));
}
if (m_document->guidesConfig().hasGuides() && typeName != m_document->nativeFormatMimeType()) {
warnings.append(i18nc("image conversion warning", "The image contains guides. The guides will not be saved."));
}
if (!m_document->gridConfig().isDefault() && typeName != m_document->nativeFormatMimeType()) {
warnings.append(i18nc("image conversion warning", "The image contains a custom grid configuration. The configuration will not be saved."));
}
if (!batchMode() && !errors.isEmpty()) {
QString error = "
"
+ i18n("Error: cannot save this image as a %1.", KisMimeDatabase::descriptionForMimeType(typeName))
+ " Reasons:
";
QMessageBox::critical(KisPart::instance()->currentMainwindow(), i18nc("@title:window", "Krita: Export Error"), error);
return KisImportExportFilter::UserCancelled;
}
if (!batchMode() && (wdg || !warnings.isEmpty())) {
KoDialog dlg;
dlg.setButtons(KoDialog::Ok | KoDialog::Cancel);
dlg.setWindowTitle(KisMimeDatabase::descriptionForMimeType(mimeType));
QWidget *page = new QWidget(&dlg);
QVBoxLayout *layout = new QVBoxLayout(page);
if (!checker.warnings().isEmpty()) {
if (showWarnings) {
QHBoxLayout *hLayout = new QHBoxLayout();
QLabel *labelWarning = new QLabel();
labelWarning->setPixmap(KisIconUtils::loadIcon("dialog-warning").pixmap(32, 32));
hLayout->addWidget(labelWarning);
KisPopupButton *bn = new KisPopupButton(0);
bn->setText(i18nc("Keep the extra space at the end of the sentence, please", "Warning: saving as %1 will lose information from your image. ", KisMimeDatabase::descriptionForMimeType(mimeType)));
hLayout->addWidget(bn);
layout->addLayout(hLayout);
QTextBrowser *browser = new QTextBrowser();
browser->setMinimumWidth(bn->width());
bn->setPopupWidget(browser);
QString warning = "
"
+ i18n("You will lose information when saving this image as a %1.", KisMimeDatabase::descriptionForMimeType(typeName));
if (warnings.size() == 1) {
warning += " Reason: