diff --git a/CMakeLists.txt b/CMakeLists.txt index 30721a43c..685b418bf 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -224,9 +224,9 @@ endif() if(NOT DEFINED APPDATADIR) if(UNIX) if(BUILD_BUNDLE) - set(APPDATADIR "${DATADIR}/share/appdata") + set(APPDATADIR "${DATADIR}/share/metainfo") else() - set(APPDATADIR "${CMAKE_INSTALL_PREFIX}/share/appdata") + set(APPDATADIR "${CMAKE_INSTALL_PREFIX}/share/metainfo") endif() endif() endif() diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 84f05bba5..5affd4b39 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -1,5 +1,5 @@ -RAWTHERAPEE 5.1-dev RELEASE NOTES ---------------------------------- +RAWTHERAPEE 5.2 RELEASE NOTES +----------------------------- This is a development version of RawTherapee. We update the code almost daily. Every few months, once enough changes have accumulated and the code is stabilized, we make a new official release. Every code change between these releases is known as a "development" version, and this is one of them. RawTherapee provides you with a selection of powerful tools with which you can practice the art of developing raw photos. Be sure to read RawPedia to understand how each tool works so that you may make the most of it. @@ -15,7 +15,7 @@ While we only commit tested and relatively stable code and so the development ve News Relevant to Photographers ------------------------------ -- RawTherapee supports most raw formats, including some unusual ones like those from cameras using Foveon and X-Trans sensors. If you're wondering whether it supports your camera's raw format, first download RawTherapee and try for yourself. If a raw format is not supported it will either not open, or the preview in the Editor tab will appear black, white, or have a strong color cast - usually magenta. In that case, read the "Adding Support for New Raw Formats" RawPedia article. +RawTherapee supports most raw formats, including some unusual ones like those from cameras using Foveon and X-Trans sensors. If you're wondering whether it supports your camera's raw format, first download RawTherapee and try for yourself. If a raw format is not supported it will either not open, or the preview in the Editor tab will appear black, white, or have a strong color cast - usually magenta. In that case, read the "Adding Support for New Raw Formats" RawPedia article. In order to use RawTherapee efficiently you should know that: - You can scroll all panels using the mouse scroll-wheel. @@ -24,21 +24,22 @@ In order to use RawTherapee efficiently you should know that: - All curves support the Shift and Ctrl keys while dragging a point. Shift+drag makes the point snap to meaningful axes (top, bottom, diagonal, other), while Ctrl+drag makes your mouse movement super-fine for precise point positioning. - There are many keyboard shortcuts which make working with RawTherapee much faster and give you greater control. Make sure you familiarize yourself with them on RawPedia's "Keyboard Shortcuts" page! -New features since 5.1: -- This section will be completed when 5.2 is released. +New features since 5.2: +- To be filled in once 5.3 is released. News Relevant to Package Maintainers ------------------------------------ -- No significant changes since 5.1. -- Requires GTK+ version >=3.16. -- GTK2 is not supported. 5.0-r1 was the last GTK2 release. -- Branches "master" and "gtk3" are dead, do not use them. +In general: +- Requires GTK+ version >=3.16, though 3.22 is recommended. - RawTherapee 5 requires GCC-4.9 or higher, or Clang. - Do not use -ffast-math, it will not make RawTherapee faster but will introduce artifacts. - Use -O3, it will make RawTherapee faster with no known side-effects. - For stable releases use -DCACHE_NAME_SUFFIX="" - For development builds and release-candidates use -DCACHE_NAME_SUFFIX="5-dev" +Changes since 5.2: +- To be filled in once 5.3 is released. + News Relevant to Developers --------------------------- - Announce and discuss your plans in GitHub before starting work. @@ -56,11 +57,16 @@ REPORTING BUGS If you found a problem, don't keep it to yourself. Read the "How to write useful bug reports" article to get the problem fixed: http://rawpedia.rawtherapee.com/How_to_write_useful_bug_reports +FORUM +----- +RawTherapee shares a forum with users and developers of other Free/Libre/Open Source Software: +https://discuss.pixls.us/c/software/rawtherapee + LIVE CHAT WITH USERS AND DEVELOPERS -------------------------------------- - Network: freenode - Server: chat.freenode.net - Channel: #rawtherapee +  Network: freenode +  Server:  chat.freenode.net +  Channel: #rawtherapee You can use freenode webchat to communicate without installing anything: http://webchat.freenode.net/?randomnick=1&channels=rawtherapee&prompt=1 diff --git a/rawtherapee.appdata.xml b/rawtherapee.appdata.xml index 3bcab8918..c1a1bf6a7 100644 --- a/rawtherapee.appdata.xml +++ b/rawtherapee.appdata.xml @@ -1,6 +1,6 @@ - + rawtherapee.desktop CC-BY-SA-4.0 GPL-3.0+ @@ -15,13 +15,27 @@

- http://rawpedia.rawtherapee.com/images/9/99/Rt-5-misty1.jpg - http://rawpedia.rawtherapee.com/images/2/2f/Rt-5-cc24-lcp.jpg - http://rawtherapee.com/images/screenshots/rt-42_07-hdr-landscape.jpg - http://rawtherapee.com/images/screenshots/rt-42_03-macro-detail-toning.jpg - http://rawtherapee.com/images/screenshots/rt-42_05-cow-bw-toning.jpg - http://rawtherapee.com/images/screenshots/rt-42_08-fb-metadata.jpg - http://rawtherapee.com/images/screenshots/rt-42_09-queue.jpg + + http://rawpedia.rawtherapee.com/images/9/99/Rt-5-misty1.jpg + + + http://rawpedia.rawtherapee.com/images/2/2f/Rt-5-cc24-lcp.jpg + + + http://rawtherapee.com/images/screenshots/rt-42_07-hdr-landscape.jpg + + + http://rawtherapee.com/images/screenshots/rt-42_03-macro-detail-toning.jpg + + + http://rawtherapee.com/images/screenshots/rt-42_05-cow-bw-toning.jpg + + + http://rawtherapee.com/images/screenshots/rt-42_08-fb-metadata.jpg + + + http://rawtherapee.com/images/screenshots/rt-42_09-queue.jpg + raw @@ -31,5 +45,5 @@ graphics http://rawtherapee.com/ - contactus_at_rawtherapee.com -
+ contactus@rawtherapee.com + diff --git a/rtdata/images/rt_splash.svg b/rtdata/images/rt_splash.svg index d860798bd..8048ccb97 100644 --- a/rtdata/images/rt_splash.svg +++ b/rtdata/images/rt_splash.svg @@ -10,14 +10,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" - width="552" - height="346" + width="588.79999" + height="369.06668" id="svg2" version="1.1" - inkscape:version="0.91 r13725" + inkscape:version="0.92.1 r" sodipodi:docname="rt_splash.svg" style="enable-background:new" - inkscape:export-filename="/tmp/rt_splash_51-dev.png" + inkscape:export-filename="/tmp/rt_splash_52_dev.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90"> + style="color-interpolation-filters:sRGB"> <feFlood id="feFlood4907" result="result1" @@ -291,7 +291,7 @@ height="1.6" x="-0.30000001" y="-0.30000001" - color-interpolation-filters="sRGB"> + style="color-interpolation-filters:sRGB"> <feFlood id="feFlood5544" flood-opacity="1" @@ -320,15 +320,15 @@ result="composite2" /> </filter> <filter - color-interpolation-filters="sRGB" inkscape:menu-tooltip="Glow of object's own color at the edges" inkscape:menu="Shadows and Glows" inkscape:label="ring glow" id="filter3580" - x="-0.20000000000000001" - y="-0.20000000000000001" - width="1.3999999999999999" - height="1.3999999999999999"> + x="-0.2" + y="-0.2" + width="1.4" + height="1.4" + style="color-interpolation-filters:sRGB"> <feGaussianBlur result="result91" stdDeviation="5" @@ -344,7 +344,7 @@ xlink:href="#linearGradient3962-8-2-3-1" id="linearGradient3677" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="89.69368" y1="102.90127" x2="77.581551" @@ -354,7 +354,7 @@ xlink:href="#linearGradient3954-7-7-1-4" id="linearGradient3679" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="69.426155" y1="109.56621" x2="69.426155" @@ -364,7 +364,7 @@ xlink:href="#linearGradient4002-3-1-7-7" id="linearGradient3681" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="35.142246" y1="47.984013" x2="51.94133" @@ -374,7 +374,7 @@ xlink:href="#linearGradient4024-9-3-1-7" id="linearGradient3683" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="35.907295" y1="92.042343" x2="51.05373" @@ -384,7 +384,7 @@ xlink:href="#linearGradient4018-0-2-1-2" id="linearGradient3685" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="28.165936" y1="69.662819" x2="49.506901" @@ -394,7 +394,7 @@ xlink:href="#linearGradient3978-6-3-9-5" id="linearGradient3687" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="104.45396" y1="50.126869" x2="85.538757" @@ -404,7 +404,7 @@ xlink:href="#linearGradient3994-4-5-5-8" id="linearGradient3689" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="48.471462" y1="35.151196" x2="59.551327" @@ -414,7 +414,7 @@ xlink:href="#linearGradient3970-4-1-4-5" id="linearGradient3691" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="108.90713" y1="70.38826" x2="87.602814" @@ -424,7 +424,7 @@ xlink:href="#linearGradient3946-8-12-1-3" id="linearGradient3693" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="49.885166" y1="103.2584" x2="58.130188" @@ -434,7 +434,7 @@ xlink:href="#linearGradient3986-8-0-0-6" id="linearGradient3695" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91873045,0,0,0.91873045,-14.661947,-135.63756)" + gradientTransform="matrix(0.97997915,0,0,0.97997915,-15.63941,-144.68006)" x1="90.159142" y1="35.440266" x2="77.581551" @@ -444,7 +444,7 @@ xlink:href="#linearGradient3962-8" id="linearGradient3697" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="89.69368" y1="102.90127" x2="77.581551" @@ -454,7 +454,7 @@ xlink:href="#linearGradient3954-7" id="linearGradient3699" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="69.426155" y1="109.56621" x2="69.426155" @@ -464,7 +464,7 @@ xlink:href="#linearGradient4002-3" id="linearGradient3701" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="35.142246" y1="47.984013" x2="51.94133" @@ -474,7 +474,7 @@ xlink:href="#linearGradient4024-9" id="linearGradient3703" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="35.907295" y1="92.042343" x2="51.05373" @@ -484,7 +484,7 @@ xlink:href="#linearGradient4018-0" id="linearGradient3705" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="28.165936" y1="69.662819" x2="49.506901" @@ -494,7 +494,7 @@ xlink:href="#linearGradient3978-6" id="linearGradient3707" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="104.45396" y1="50.126869" x2="85.538757" @@ -504,7 +504,7 @@ xlink:href="#linearGradient3994-4" id="linearGradient3709" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="48.471462" y1="35.151196" x2="59.551327" @@ -514,7 +514,7 @@ xlink:href="#linearGradient3970-4" id="linearGradient3711" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="108.90713" y1="70.38826" x2="87.602814" @@ -524,7 +524,7 @@ xlink:href="#linearGradient3946-8" id="linearGradient3713" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="49.885166" y1="103.2584" x2="58.130188" @@ -534,19 +534,19 @@ xlink:href="#linearGradient3986-8" id="linearGradient3715" gradientUnits="userSpaceOnUse" - gradientTransform="matrix(0.91220191,0,0,0.91220191,0.0189802,6.0858864)" + gradientTransform="matrix(0.97301537,0,0,0.97301537,0.02024555,6.4916122)" x1="90.159142" y1="35.440266" x2="77.581551" y2="53.589558" /> <filter - width="1.3999999999999999" - height="1.3999999999999999" - y="-0.20000000000000001" - x="-0.20000000000000001" - color-interpolation-filters="sRGB" + width="1.4" + height="1.4" + y="-0.2" + x="-0.2" inkscape:label="RawTherapee drop-shadow" - id="filter4749"> + id="filter4749" + style="color-interpolation-filters:sRGB"> <feFlood result="flood" flood-color="rgb(255,255,255)" @@ -577,9 +577,9 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="1.7051773" - inkscape:cx="290.94671" - inkscape:cy="112.00674" + inkscape:zoom="2.2109826" + inkscape:cx="297.71082" + inkscape:cy="135.68628" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="false" @@ -605,53 +605,63 @@ showguides="true" inkscape:guide-bbox="true"> <sodipodi:guide - position="30,0" + position="32,0" orientation="1,0" id="guide3665" inkscape:label="" - inkscape:color="rgb(0,0,255)" /> + inkscape:color="rgb(0,0,255)" + inkscape:locked="false" /> <sodipodi:guide - position="0,321" + position="0,342.4" orientation="0,1" id="guide3667" inkscape:label="" - inkscape:color="rgb(0,0,255)" /> + inkscape:color="rgb(0,0,255)" + inkscape:locked="false" /> <sodipodi:guide - position="522,0" + position="556.8,0" orientation="1,0" id="guide3669" inkscape:label="" - inkscape:color="rgb(0,0,255)" /> + inkscape:color="rgb(0,0,255)" + inkscape:locked="false" /> <sodipodi:guide - position="0,25" + position="0,26.666667" orientation="0,1" id="guide3671" inkscape:label="" - inkscape:color="rgb(0,0,255)" /> + inkscape:color="rgb(0,0,255)" + inkscape:locked="false" /> <sodipodi:guide - position="244.625,239.9831" + position="260.93333,255.98197" orientation="0,1" - id="guide3673" /> + id="guide3673" + inkscape:locked="false" /> <sodipodi:guide - position="29.875,33.6125" + position="31.866667,35.853333" orientation="0,1" - id="guide3675" /> + id="guide3675" + inkscape:locked="false" /> <sodipodi:guide - position="173.0169,189.5" + position="184.55136,202.13333" orientation="1,0" - id="guide3677" /> + id="guide3677" + inkscape:locked="false" /> <sodipodi:guide - position="378.98311,131.125" + position="404.24865,139.86667" orientation="1,0" - id="guide3679" /> + id="guide3679" + inkscape:locked="false" /> <sodipodi:guide - position="273,270.5" + position="291.2,288.53333" orientation="0,1" - id="guide3687" /> + id="guide3687" + inkscape:locked="false" /> <sodipodi:guide - position="54.738059,35.335001" + position="58.387263,37.690668" orientation="0,1" - id="guide4367" /> + id="guide4367" + inkscape:locked="false" /> </sodipodi:namedview> <metadata id="metadata7"> @@ -676,10 +686,10 @@ </dc:subject> <dc:source>www.rawtherapee.com</dc:source> <cc:license - rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/" /> + rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" /> </cc:Work> <cc:License - rdf:about="http://creativecommons.org/licenses/by-sa/3.0/"> + rdf:about="http://creativecommons.org/licenses/by-sa/4.0/"> <cc:permits rdf:resource="http://creativecommons.org/ns#Reproduction" /> <cc:permits @@ -699,113 +709,111 @@ inkscape:label="Calque 1" inkscape:groupmode="layer" id="layer1" - transform="translate(-36.450141,232.99089)"> + transform="translate(-38.88015,248.52362)"> <rect - y="-232.99089" - x="36.450142" - height="346" - width="552" + y="-248.52362" + x="38.88015" + height="369.06668" + width="588.79999" id="rect4747" - style="fill:#2a2a2a;fill-opacity:1;fill-rule:nonzero;stroke:none" /> + style="fill:#2a2a2a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.06666672" /> <rect - style="fill:#2a2a2a;fill-opacity:1;fill-rule:nonzero;stroke:none" + style="fill:#2a2a2a;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.06666672" id="rect7772" - width="544.81287" - height="120.21" - x="36.450142" - y="132.37912" - rx="11.652108" - ry="4.2093153" /> + width="581.13373" + height="128.224" + x="38.88015" + y="141.20439" + rx="12.428915" + ry="4.4899364" /> <g id="g3717" - transform="matrix(2.7566471,0,0,2.7566471,46.282643,-169.82978)" + transform="matrix(2.7566471,0,0,2.7566471,49.368153,-181.15177)" style="filter:url(#filter3580)"> <g id="g3490" style="display:inline;enable-background:new" - transform="matrix(1.0054447,0,0,1.0054447,33.659411,-16.7898)" + transform="matrix(1.0054447,0,0,1.0054447,35.903372,-17.90912)" inkscape:export-filename="/home/drslony/websites/rawtherapee/images/logos/rawtherapee 5a.png" inkscape:export-xdpi="188.97" inkscape:export-ydpi="188.97"> <path id="path3492" - d="M 74.542973,81.305016 88.616052,95.378102 A 36.856194,36.856194 0 0 0 98.15514,78.855909 L 78.930951,73.704823 a 16.953849,16.953849 0 0 1 -4.387978,7.600193 z" + d="m 79.512505,86.72535 15.011284,15.01129 A 39.313274,39.313274 0 0 0 104.69882,84.11297 L 84.193014,78.618478 a 18.084106,18.084106 0 0 1 -4.680509,8.106872 z" inkscape:connector-curvature="0" - style="color:#000000;fill:#fffb00;fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:#fffb00;fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3494" - d="m 66.94277,85.692999 5.151106,19.224191 A 36.856194,36.856194 0 0 0 88.616052,95.378102 L 74.542973,81.305016 a 16.953849,16.953849 0 0 1 -7.600203,4.387983 z" + d="m 71.405621,91.405866 5.494513,20.505804 A 39.313274,39.313274 0 0 0 94.523789,101.73664 L 79.512505,86.72535 a 18.084106,18.084106 0 0 1 -8.106884,4.680516 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3697);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3697);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3496" - d="m 58.16681,85.692999 -5.151102,19.224191 a 36.856194,36.856194 0 0 0 19.078168,0 L 66.94277,85.692999 a 16.953849,16.953849 0 0 1 -8.77596,0 z" + d="m 62.044597,91.405866 -5.494508,20.505804 a 39.313274,39.313274 0 0 0 20.350045,0 L 71.405621,91.405866 a 18.084106,18.084106 0 0 1 -9.361024,0 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3699);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3699);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3498" - d="M 50.566607,57.328664 36.493526,43.255578 a 36.856194,36.856194 0 0 0 -9.539083,16.522175 l 19.224191,5.151104 a 16.953849,16.953849 0 0 1 4.387973,-7.600193 z" + d="M 53.937714,61.150575 38.926428,46.139283 A 39.313274,39.313274 0 0 0 28.751406,63.762937 l 20.505804,5.49451 a 18.084106,18.084106 0 0 1 4.680504,-8.106872 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3701);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3701);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3500" - d="m 46.178634,73.704823 -19.224191,5.151086 a 36.856194,36.856194 0 0 0 9.539083,16.522193 L 50.566607,81.305016 a 16.953849,16.953849 0 0 1 -4.387973,-7.600193 z" + d="M 49.25721,78.618478 28.751406,84.11297 a 39.313274,39.313274 0 0 0 10.175022,17.62367 L 53.937714,86.72535 A 18.084106,18.084106 0 0 1 49.25721,78.618478 Z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3703);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3703);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3502" - d="M 46.178634,64.928857 26.954443,59.777753 a 36.856194,36.856194 0 0 0 0,19.078156 l 19.224191,-5.151086 a 16.953849,16.953849 0 0 1 0,-8.775966 z" + d="m 49.25721,69.257447 -20.505804,-5.49451 a 39.313274,39.313274 0 0 0 0,20.350033 L 49.25721,78.618478 a 18.084106,18.084106 0 0 1 0,-9.361031 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3705);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3705);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3504" - d="M 78.930951,64.928857 98.15514,59.777753 A 36.856194,36.856194 0 0 0 88.616052,43.255578 L 74.542973,57.328664 a 16.953849,16.953849 0 0 1 4.387978,7.600193 z" + d="m 84.193014,69.257447 20.505806,-5.49451 A 39.313274,39.313274 0 0 0 94.523789,46.139283 L 79.512505,61.150575 a 18.084106,18.084106 0 0 1 4.680509,8.106872 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3707);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3707);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3506" - d="M 58.16681,52.940672 53.015708,33.716491 a 36.856194,36.856194 0 0 0 -16.522182,9.539087 l 14.073081,14.073086 a 16.953849,16.953849 0 0 1 7.600203,-4.387992 z" + d="M 62.044597,56.47005 56.550089,35.964257 A 39.313274,39.313274 0 0 0 38.926428,46.139283 l 15.011286,15.011292 a 18.084106,18.084106 0 0 1 8.106883,-4.680525 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3709);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3709);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3508" - d="m 66.94277,52.940672 5.151106,-19.224181 a 36.856194,36.856194 0 0 0 -19.078168,0 l 5.151102,19.224181 a 16.953849,16.953849 0 0 1 8.77596,0 z" + d="m 71.405621,56.47005 5.494513,-20.505793 a 39.313274,39.313274 0 0 0 -20.350045,0 l 5.494508,20.505793 a 18.084106,18.084106 0 0 1 9.361024,0 z" inkscape:connector-curvature="0" - style="color:#000000;fill:#ff0b0d;fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:#ff0b0d;fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3510" - d="m 78.930951,73.704823 19.224189,5.151086 a 36.856194,36.856194 0 0 0 0,-19.078156 l -19.224189,5.151104 a 16.953849,16.953849 0 0 1 0,8.775966 z" + d="m 84.193014,78.618478 20.505806,5.494492 a 39.313274,39.313274 0 0 0 0,-20.350033 l -20.505806,5.49451 a 18.084106,18.084106 0 0 1 0,9.361031 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3711);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3711);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3512" - d="M 50.566607,81.305016 36.493526,95.378102 a 36.856194,36.856194 0 0 0 16.522182,9.539088 L 58.16681,85.692999 a 16.953849,16.953849 0 0 1 -7.600203,-4.387983 z" + d="m 53.937714,86.72535 -15.011286,15.01129 a 39.313274,39.313274 0 0 0 17.623661,10.17503 L 62.044597,91.405866 A 18.084106,18.084106 0 0 1 53.937714,86.72535 Z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3713);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3713);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <path id="path3514" - d="M 74.542973,57.328664 88.616052,43.255578 A 36.856194,36.856194 0 0 0 72.093876,33.716491 L 66.94277,52.940672 a 16.953849,16.953849 0 0 1 7.600203,4.387992 z" + d="M 79.512505,61.150575 94.523789,46.139283 A 39.313274,39.313274 0 0 0 76.900134,35.964257 L 71.405621,56.47005 a 18.084106,18.084106 0 0 1 8.106884,4.680525 z" inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3715);fill-opacity:1;stroke:#000000;stroke-width:0.18137978;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" /> + style="color:#000000;fill:url(#linearGradient3715);fill-opacity:1;stroke:#000000;stroke-width:0.19347176;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" /> <g id="g3516" - transform="matrix(0.91220191,0,0,0.91220191,92.432012,5.9324996)"> + transform="matrix(0.91220191,0,0,0.91220191,98.594146,6.3279996)"> <path inkscape:connector-curvature="0" - transform="matrix(0.81205493,0,0,-0.81205493,-32.752856,69.48499)" - style="color:#000000;fill:none;stroke:currentColor;stroke-width:0.31831405;stroke-miterlimit:4" - d="M 50,0 C 50,27.614237 27.614237,50 0,50 -27.614237,50 -50,27.614237 -50,0 c 0,-27.614237 22.385763,-50 50,-50 27.614237,0 50,22.385763 50,50 z" + style="color:#000000;fill:none;stroke:currentColor;stroke-width:0.27572104;stroke-miterlimit:4" + d="m 8.3732165,74.117323 c 0,-23.919229 -19.3903675,-43.309597 -43.3095965,-43.309597 -23.919229,0 -43.309596,19.390368 -43.309596,43.309597 0,23.919229 19.390367,43.309597 43.309596,43.309597 23.919229,0 43.3095965,-19.390368 43.3095965,-43.309597 z" id="circle3518" /> <path inkscape:connector-curvature="0" - transform="matrix(0.81205493,0,0,-0.81205493,-32.752856,69.48499)" - style="color:#000000;fill:none;stroke:currentColor;stroke-width:0.31831405;stroke-miterlimit:4" - d="M 23,0 C 23,12.702549 12.702549,23 0,23 -12.702549,23 -23,12.702549 -23,0 c 0,-12.702549 10.297451,-23 23,-23 12.702549,0 23,10.297451 23,23 z" + style="color:#000000;fill:none;stroke:currentColor;stroke-width:0.27572104;stroke-miterlimit:4" + d="m -15.013965,74.117323 c 0,-11.002846 -8.919569,-19.922415 -19.922415,-19.922415 -11.002845,0 -19.922414,8.919569 -19.922414,19.922415 0,11.002845 8.919569,19.922414 19.922414,19.922414 11.002846,0 19.922415,-8.919569 19.922415,-19.922414 z" id="circle3520" /> </g> </g> <g - transform="matrix(0.99009898,0,0,0.98981713,48.711803,124.13594)" + transform="matrix(0.99009898,0,0,0.98981713,51.959257,132.41167)" inkscape:export-ydpi="188.97" inkscape:export-xdpi="188.97" inkscape:export-filename="/home/drslony/websites/rawtherapee/images/logos/rawtherapee 5a.png" @@ -813,67 +821,67 @@ id="g4890"> <path inkscape:connector-curvature="0" - style="color:#000000;fill:#fffb00;fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 80.896657,-63.235871 c -1.550903,5.812383 -4.588891,11.009514 -8.718202,15.138827 l 2.391998,2.391997 a 37.11997,37.11997 0 0 0 9.599464,-16.649562 l -3.27326,-0.881262 z" + style="color:#000000;fill:#fffb00;fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 86.289767,-67.451596 c -1.654296,6.199875 -4.894817,11.743482 -9.299415,16.148082 l 2.551465,2.551464 a 39.594635,39.594635 0 0 0 10.239428,-17.759533 z" id="ID_3F-0-3-8" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3677);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 72.178455,-48.097044 c -4.129313,4.129311 -9.326444,7.167299 -15.138827,8.718202 l 0.881262,3.273259 a 37.11997,37.11997 0 0 0 16.649563,-9.599464 l -2.391998,-2.391997 z" + style="color:#000000;fill:url(#linearGradient3677);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 76.990352,-51.303514 c -4.404601,4.404599 -9.948207,7.645119 -16.148082,9.299416 l 0.940013,3.491476 A 39.594635,39.594635 0 0 0 79.541817,-48.75205 Z" id="ID_41-5-5-6" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3679);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 39.603224,-39.378842 -0.881262,3.273259 a 37.11997,37.11997 0 0 0 19.198928,0 l -0.881262,-3.273259 c -2.781939,0.742297 -5.702341,1.164525 -8.718202,1.164525 -3.015861,0 -5.936263,-0.422228 -8.718202,-1.164525 z" + style="color:#000000;fill:url(#linearGradient3679);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 42.243439,-42.004098 -0.940013,3.491476 a 39.594635,39.594635 0 0 0 20.478857,0 l -0.940013,-3.491476 c -2.967402,0.791783 -6.082497,1.24216 -9.299416,1.24216 -3.216918,0 -6.332013,-0.450377 -9.299415,-1.24216 z" id="ID_42-1-7-3" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3681);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 22.072399,-98.2031 a 37.11997,37.11997 0 0 0 -9.599464,16.649562 l 3.27326,0.881263 c 1.550901,-5.812383 4.588889,-11.009514 8.718202,-15.138827 L 22.072399,-98.2031 z" + style="color:#000000;fill:url(#linearGradient3681);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 23.543892,-104.74997 a 39.594635,39.594635 0 0 0 -10.239428,17.759529 l 3.491477,0.940014 c 1.654295,-6.199875 4.894815,-11.743481 9.299416,-16.148083 z" id="ID_43-1-7-4" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3683);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 15.746195,-63.235871 -3.27326,0.881262 a 37.11997,37.11997 0 0 0 9.599464,16.649562 l 2.391998,-2.391997 c -4.129313,-4.129313 -7.167301,-9.326444 -8.718202,-15.138827 z" + style="color:#000000;fill:url(#linearGradient3683);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 16.795941,-67.451596 -3.491477,0.940013 a 39.594635,39.594635 0 0 0 10.239428,17.759533 l 2.551465,-2.551464 c -4.404601,-4.4046 -7.645121,-9.948207 -9.299416,-16.148082 z" id="ID_44-0-3-7" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3685);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 12.472935,-81.553538 a 37.11997,37.11997 0 0 0 0,19.198929 l 3.27326,-0.881262 c -0.742295,-2.781939 -1.164525,-5.702342 -1.164525,-8.718202 0,-3.015861 0.42223,-5.936264 1.164525,-8.718202 l -3.27326,-0.881263 z" + style="color:#000000;fill:url(#linearGradient3685);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 13.304464,-86.990441 a 39.594635,39.594635 0 0 0 0,20.478858 l 3.491477,-0.940013 c -0.791781,-2.967401 -1.24216,-6.082498 -1.24216,-9.299415 0,-3.216919 0.450379,-6.332015 1.24216,-9.299416 z" id="ID_45-8-3-6" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3687);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 74.570453,-98.2031 -2.391998,2.391998 c 4.129311,4.129313 7.167299,9.326444 8.718202,15.138827 l 3.27326,-0.881263 A 37.11997,37.11997 0 0 0 74.570453,-98.2031 z" + style="color:#000000;fill:url(#linearGradient3687);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 79.541817,-104.74997 -2.551465,2.55146 c 4.404598,4.404602 7.645119,9.948208 9.299415,16.148083 l 3.491478,-0.940014 A 39.594635,39.594635 0 0 0 79.541817,-104.74997 Z" id="ID_46-5-2-6" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3689);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 38.721962,-107.80256 a 37.11997,37.11997 0 0 0 -16.649563,9.59946 l 2.391998,2.391998 c 4.129313,-4.129314 9.326444,-7.167298 15.138827,-8.718198 l -0.881262,-3.27326 z" + style="color:#000000;fill:url(#linearGradient3689);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 41.303426,-114.9894 a 39.594635,39.594635 0 0 0 -17.759534,10.23943 l 2.551465,2.55146 c 4.4046,-4.4046 9.948207,-7.64512 16.148082,-9.29941 z" id="ID_47-0-0-2" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:#ff0b0d;fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 46.905111,-109.06151 a 37.11997,37.11997 0 0 0 -8.183149,1.25895 l 0.881262,3.27326 c 2.781939,-0.7423 5.702341,-1.16453 8.718202,-1.16453 3.015861,0 5.936263,0.42223 8.718202,1.16453 l 0.881262,-3.27326 a 37.11997,37.11997 0 0 0 -11.015779,-1.25895 z" + style="color:#000000;fill:#ff0b0d;fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 50.032118,-116.33228 a 39.594635,39.594635 0 0 0 -8.728692,1.34288 l 0.940013,3.49148 c 2.967402,-0.79179 6.082497,-1.24217 9.299415,-1.24217 3.216919,0 6.332014,0.45038 9.299416,1.24217 l 0.940013,-3.49148 a 39.594635,39.594635 0 0 0 -11.750165,-1.34288 z" id="ID_48-6-74-3" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3691);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 84.169917,-81.553538 -3.27326,0.881263 c 0.742298,2.781938 1.164525,5.702341 1.164525,8.718202 0,3.01586 -0.422227,5.936263 -1.164525,8.718202 l 3.27326,0.881262 a 37.11997,37.11997 0 0 0 0,-19.198929 z" + style="color:#000000;fill:url(#linearGradient3691);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 89.781245,-86.990441 -3.491478,0.940014 c 0.791785,2.967401 1.24216,6.082497 1.24216,9.299416 0,3.216917 -0.450375,6.332014 -1.24216,9.299415 l 3.491478,0.940013 a 39.594635,39.594635 0 0 0 0,-20.478858 z" id="ID_49-4-7-6" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3693);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 24.464397,-48.097044 -2.391998,2.391997 a 37.11997,37.11997 0 0 0 16.649563,9.599464 l 0.881262,-3.273259 c -5.812383,-1.550903 -11.009514,-4.588891 -15.138827,-8.718202 z" + style="color:#000000;fill:url(#linearGradient3693);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 26.095357,-51.303514 -2.551465,2.551464 a 39.594635,39.594635 0 0 0 17.759534,10.239428 l 0.940013,-3.491476 c -6.199875,-1.654297 -11.743482,-4.894817 -16.148082,-9.299416 z" id="ID_4A-6-6-4" /> <path inkscape:connector-curvature="0" - style="color:#000000;fill:url(#linearGradient3695);fill-opacity:1;stroke:#000000;stroke-width:0.18553565;stroke-miterlimit:4;stroke-opacity:0.15686275;stroke-dasharray:none" - d="m 57.92089,-107.80256 -0.881262,3.27326 c 5.812383,1.5509 11.009514,4.588884 15.138827,8.718198 l 2.391998,-2.391998 a 37.11997,37.11997 0 0 0 -16.649563,-9.59946 z" + style="color:#000000;fill:url(#linearGradient3695);fill-opacity:1;stroke:#000000;stroke-width:0.19790469;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.15686275" + d="m 61.782283,-114.9894 -0.940013,3.49148 c 6.199875,1.65429 11.743481,4.89481 16.148082,9.29941 l 2.551465,-2.55146 A 39.594635,39.594635 0 0 0 61.782283,-114.9894 Z" id="ID_51-2-8-1" /> <path - style="color:#000000;fill:none;stroke:none" - d="m 85.624409,-71.954073 c 0,-20.601868 -16.701115,-37.302977 -37.302983,-37.302977 -20.601858,0 -37.302977,16.701109 -37.302977,37.302977 0,20.601867 16.701119,37.302979 37.302977,37.302979 20.601868,0 37.302983,-16.701112 37.302983,-37.302979 z" + style="color:#000000;fill:none;stroke:none;stroke-width:1.06666672" + d="m 91.332703,-76.751011 c 0,-21.975326 -17.814523,-39.789839 -39.789849,-39.789839 -21.975315,0 -39.789842,17.814513 -39.789842,39.789839 0,21.975325 17.814527,39.789844 39.789842,39.789844 21.975326,0 39.789849,-17.814519 39.789849,-39.789844 z" id="ID_3F-5-8-8-5" inkscape:connector-curvature="0" /> </g> @@ -881,162 +889,160 @@ <flowRoot xml:space="preserve" id="flowRoot3757" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:125%;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none" - transform="translate(94.47572,-12.572881)"><flowRegion - id="flowRegion3759"><rect + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.80000019px;line-height:0.01%;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.06666672"><flowRegion + id="flowRegion3759" + style="stroke-width:1.06666672"><rect id="rect3761" - width="255.35268" - height="103.31524" - x="-47.5" - y="152.4408" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" /></flowRegion><flowPara + width="272.37619" + height="110.20292" + x="50.107433" + y="149.19244" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.66666698px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.13777781" /></flowRegion><flowPara id="flowPara3763" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1">Apply glow effects using filters. You might need to ungroup the circle elements before applying. You can change the flood color of the "ring shadow" effect to make it white if you want to make the logo usable on a dark background.</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" - id="flowPara3676" /><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672">Apply glow effects using filters. You might need to ungroup the circle elements before applying. You can change the flood color of the "ring shadow" effect to make it white if you want to make the logo usable on a dark background.</flowPara><flowPara + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" + id="flowPara3676"> </flowPara><flowPara + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4320">For logo specifics, refer to rt_logo.svg</flowPara></flowRoot> <flowRoot - transform="translate(362.47572,-12.572881)" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:125%;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.80000019px;line-height:0.01%;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.06666672" id="flowRoot11563" xml:space="preserve"><flowRegion - id="flowRegion11565"><rect - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" - y="152.4408" - x="-47.5" - height="103.31524" - width="255.35268" + id="flowRegion11565" + style="stroke-width:1.06666672"><rect + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.66666698px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.13777781" + y="149.19244" + x="335.97409" + height="110.20292" + width="272.37619" id="rect11567" /></flowRegion><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4343">"Raw": font ITC Eras Std Ultra, appears in Inkscape as</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4357"> ITC Eras Standard - Ultra-Bold,</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4345"> 60pt, -3px spacing between characters.</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4347">"Therapee": font ITC Eras Std Medium, appears in Inkscape as</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4361"> ITC Eras Standard - Medium,</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4349"> 60pt, +1px spacing between characters.</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4351">Version: font ITC Eras Std Bold, appears in Inkscape as</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4365"> ITC Eras Standard - Bold,</flowPara><flowPara - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.53333378px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;text-align:justify;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke-width:1.06666672" id="flowPara4353"> 64pt, skewed -3°.</flowPara></flowRoot> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:6px;line-height:125%;font-family:Salter;-inkscape-font-specification:'Salter Medium';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" - x="157.31409" - y="246.19589" - id="text11593" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:12.80000019px;line-height:0%;font-family:Salter;-inkscape-font-specification:'Salter Medium';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="167.8017" + y="262.60895" + id="text11593"><tspan sodipodi:role="line" id="tspan11595" - x="157.31409" - y="246.19589" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6px;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;letter-spacing:1px;fill:#ffcc00;fill-opacity:1">RawTherapee splash screen design version 1.1 from 2017-01-28 | www.rawtherapee.com</tspan></text> + x="167.8017" + y="262.60895" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6.4000001px;line-height:1.25;font-family:OxygenSans;-inkscape-font-specification:OxygenSans;letter-spacing:1.06666672px;fill:#ffcc00;fill-opacity:1;stroke-width:1.06666672">RawTherapee splash screen design version 1.1 from 2017-01-28 | www.rawtherapee.com</tspan></text> <flowRoot xml:space="preserve" id="flowRoot4759" - style="fill:black;stroke:none;stroke-opacity:1;stroke-width:1px;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:1;font-family:Daniel;font-style:normal;font-weight:normal;font-size:40px;line-height:125%;letter-spacing:0px;word-spacing:0px;-inkscape-font-specification:Daniel;font-stretch:normal;font-variant:normal"><flowRegion - id="flowRegion4761"><rect + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.80000019px;line-height:0.01%;font-family:Daniel;-inkscape-font-specification:Daniel;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"><flowRegion + id="flowRegion4761" + style="stroke-width:1.06666672px"><rect id="rect4763" - width="338.44473" - height="102.29827" - x="-53.53928" - y="224.58057" /></flowRegion><flowPara - id="flowPara4765" /></flowRoot> <text + width="361.00772" + height="109.11816" + x="-57.108566" + y="239.5526" + style="stroke-width:1.13777781px" /></flowRegion><flowPara + id="flowPara4765" + style="font-size:42.66666794px;line-height:1.25;stroke-width:1.06666672px"> </flowPara></flowRoot> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:22.5px;line-height:125%;font-family:Daniel;-inkscape-font-specification:Daniel;text-align:end;letter-spacing:-0.05px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="892.45013" - y="-4.99089" - id="text10516" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:12.80000019px;line-height:0%;font-family:Daniel;-inkscape-font-specification:Daniel;text-align:end;letter-spacing:-0.05333333px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + x="951.94684" + y="-5.323616" + id="text10516"><tspan sodipodi:role="line" id="tspan10518" - x="892.45013" - y="-4.99089" /></text> + x="960.65265" + y="-5.323616" + style="font-size:24px;line-height:1.25;stroke-width:1.06666672px"> </tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;font-size:80px;line-height:125%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Ultra-Bold';letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" + style="font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;line-height:0%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Ultra-Bold';letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" x="61.72514" y="-157.9659" id="text3655" - sodipodi:linespacing="125%"><tspan + transform="scale(1.0666667)"><tspan sodipodi:role="line" id="tspan3657" x="61.72514" y="-157.9659" - style="font-size:75px;letter-spacing:-3px;word-spacing:0px" + style="font-size:75px;line-height:1.25;letter-spacing:-3px;word-spacing:0px" dx="0">Raw</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:70px;line-height:125%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Medium';letter-spacing:1px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" + style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;line-height:0%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Medium';letter-spacing:1px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" x="239.99272" y="-157.9659" id="text3659" - sodipodi:linespacing="125%"><tspan + transform="scale(1.0666667)"><tspan sodipodi:role="line" id="tspan3661" x="239.99272" y="-157.9659" - style="font-size:75px;letter-spacing:1px">Therapee</tspan></text> + style="font-size:75px;line-height:1.25;letter-spacing:1px">Therapee</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:10px;line-height:125%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Medium';letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="65.505142" - y="87.844109" - id="text3683" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-variant:normal;font-weight:500;font-stretch:normal;font-size:12.80000019px;line-height:0%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Medium';letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.06666672px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + x="69.872154" + y="93.700386" + id="text3683"><tspan sodipodi:role="line" id="tspan3685" - x="65.505142" - y="87.844109" - style="font-size:15px">GNU GPLv3</tspan></text> + x="69.872154" + y="93.700386" + style="font-size:16px;line-height:1.25;stroke-width:1.06666672px">GNU GPLv3</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" + style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" x="283.85016" y="2.2370076" id="text3689" - sodipodi:linespacing="125%" - transform="matrix(0.91189111,0,0.04779019,0.91189111,15.491783,-6.3327061)"><tspan + transform="matrix(0.97268385,0,0.0509762,0.97268385,16.524569,-6.7548865)"><tspan sodipodi:role="line" id="tspan3691" x="283.85016" y="2.2370076" - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Bold'">5</tspan></text> + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:80px;line-height:1.25;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Bold'">5</tspan></text> <text - transform="matrix(0.91189111,0,0.04779019,0.91189111,52.17683,2.0007677)" - sodipodi:linespacing="125%" + transform="matrix(0.97268385,0,0.0509762,0.97268385,53.309488,0.37480436)" id="text3662" y="2.2370076" x="283.85016" - style="font-style:normal;font-weight:normal;font-size:40px;line-height:125%;font-family:sans-serif;letter-spacing:-10px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" + style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:-10.28083324px;word-spacing:0px;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;filter:url(#filter4749)" xml:space="preserve"><tspan - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:60px;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Bold';letter-spacing:-10px" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:49.34799576px;line-height:1.25;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Bold';letter-spacing:-10.28083324px" y="2.2370076" x="283.85016" id="tspan3664" - sodipodi:role="line">.1</tspan></text> + sodipodi:role="line">. 2</tspan></text> <g id="g3712" - transform="translate(-2.9910244,22.7661)" + transform="translate(-3.19043,24.28384)" style="fill:#ffffff"> <text xml:space="preserve" - style="font-style:normal;font-weight:normal;font-size:40px;line-height:110.00000238%;font-family:sans-serif;text-align:end;letter-spacing:-1px;word-spacing:0px;text-anchor:end;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="559.0896" - y="46.61301" + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;text-align:end;letter-spacing:-1.06666672px;word-spacing:0px;text-anchor:end;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.06666672px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + x="596.36224" + y="49.720543" id="text3690" - sodipodi:linespacing="110%" - transform="matrix(1,0,0.05240778,1,0,0)"><tspan + transform="skewX(3)"><tspan id="tspan3696" sodipodi:role="line" - x="558.0896" - y="46.61301" - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:22.5px;line-height:110.00000238%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Bold';text-align:end;letter-spacing:-1px;text-anchor:end;fill:#ffffff">Development</tspan></text> + x="595.29559" + y="49.720543" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:24px;line-height:110.00000238%;font-family:'ITC Eras Std';-inkscape-font-specification:'ITC Eras Std Bold';text-align:end;letter-spacing:-1.06666672px;text-anchor:end;fill:#ffffff;stroke-width:1.06666672px">Development</tspan></text> </g> </g> <g @@ -1044,5 +1050,5 @@ id="layer2" inkscape:label="Effect" style="display:inline" - transform="translate(-36.450141,232.99089)" /> + transform="translate(-38.88015,248.52362)" /> </svg> diff --git a/rtdata/images/splash.png b/rtdata/images/splash.png index 11d8b1889..2a0806946 100644 Binary files a/rtdata/images/splash.png and b/rtdata/images/splash.png differ diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala index 7f71350d5..2f8093799 100644 --- a/rtdata/languages/Catala +++ b/rtdata/languages/Catala @@ -1390,7 +1390,7 @@ ZOOMPANEL_ZOOMOUT;Allunya\nDrecera: <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified) index 972987fc8..c726095bb 100644 --- a/rtdata/languages/Chinese (Simplified) +++ b/rtdata/languages/Chinese (Simplified) @@ -1319,7 +1319,7 @@ ZOOMPANEL_ZOOMOUT;缩放拉远\n快捷键: <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional) index 76220c3bd..24b6aed27 100644 --- a/rtdata/languages/Chinese (Traditional) +++ b/rtdata/languages/Chinese (Traditional) @@ -1122,7 +1122,7 @@ TP_WBALANCE_TEMPERATURE;色溫 !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk index 3586e3d6f..710b92b0e 100644 --- a/rtdata/languages/Dansk +++ b/rtdata/languages/Dansk @@ -1120,7 +1120,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Deutsch b/rtdata/languages/Deutsch index 6d4f7e95d..79b976185 100644 --- a/rtdata/languages/Deutsch +++ b/rtdata/languages/Deutsch @@ -840,6 +840,7 @@ MAIN_MSG_OPERATIONCANCELLED;Ausführung abgebrochen MAIN_MSG_PATHDOESNTEXIST;Der Pfad\n\n<b>%1</b>\n\nexistiert nicht. Bitte setzen Sie den richtigen Pfad in den Einstellungen. MAIN_MSG_QOVERWRITE;Möchten Sie die Datei überschreiben? MAIN_MSG_SETPATHFIRST;Um diese Funktion zu nutzen, müssen Sie zuerst in den Einstellungen einen Zielpfad setzen. +MAIN_MSG_TOOMANYOPENEDITORS;Zu viele geöffnete Editorfenster.\nUm fortzufahren, schließen sie bitte ein Editorfenster. MAIN_MSG_WRITEFAILED;Fehler beim Schreiben von\n\n<b>"%1"</b>\n\nStellen Sie sicher, dass das Verzeichnis existiert und dass Sie Schreibrechte besitzen. MAIN_TAB_COLOR;Farbe MAIN_TAB_COLOR_TOOLTIP;Taste: <b>Alt</b> + <b>c</b> @@ -2186,8 +2187,3 @@ ZOOMPANEL_ZOOMFITSCREEN;An Bildschirm anpassen\nTaste: <b>f</b> ZOOMPANEL_ZOOMIN;Hineinzoomen\nTaste: <b>+</b> ZOOMPANEL_ZOOMOUT;Herauszoomen\nTaste: <b>-</b> -!!!!!!!!!!!!!!!!!!!!!!!!! -! Untranslated keys follow; remove the ! prefix after an entry is translated. -!!!!!!!!!!!!!!!!!!!!!!!!! - -MAIN_MSG_TOOMANYOPENEDITORS;Zu viele geöffnete Editorfenster.\nUm fortzufahren, schließen sie bitte ein Editorfenster. diff --git a/rtdata/languages/English (UK) b/rtdata/languages/English (UK) index 80b66899a..a9baed7ed 100644 --- a/rtdata/languages/English (UK) +++ b/rtdata/languages/English (UK) @@ -1012,7 +1012,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US) index b7e3e1c00..d768da5e7 100644 --- a/rtdata/languages/English (US) +++ b/rtdata/languages/English (US) @@ -941,7 +941,7 @@ !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Espanol b/rtdata/languages/Espanol index c61f2dbbf..9d7e4a78c 100644 --- a/rtdata/languages/Espanol +++ b/rtdata/languages/Espanol @@ -1755,7 +1755,7 @@ ZOOMPANEL_ZOOMOUT;Reducir Zoom\nAtajo: <b>-</b> !PREFERENCES_CLUTSCACHE;HaldCLUT Cache !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara index b7ff4c0f9..af995e34e 100644 --- a/rtdata/languages/Euskara +++ b/rtdata/languages/Euskara @@ -1120,7 +1120,7 @@ TP_WBALANCE_TEMPERATURE;Tenperatura !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek index f678165ac..9b9ef809f 100644 --- a/rtdata/languages/Greek +++ b/rtdata/languages/Greek @@ -1119,7 +1119,7 @@ TP_WBALANCE_TEMPERATURE;Θερμοκρασία !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew index c3e51752e..7a310e3af 100644 --- a/rtdata/languages/Hebrew +++ b/rtdata/languages/Hebrew @@ -1120,7 +1120,7 @@ TP_WBALANCE_TEMPERATURE;מידת חום !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Italiano b/rtdata/languages/Italiano index decf11bd6..d6e441796 100644 --- a/rtdata/languages/Italiano +++ b/rtdata/languages/Italiano @@ -1625,7 +1625,7 @@ ZOOMPANEL_ZOOMOUT;Rimpicciolisci.\nScorciatoia: <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian index caecfdd69..f65d66ad4 100644 --- a/rtdata/languages/Latvian +++ b/rtdata/languages/Latvian @@ -1120,7 +1120,7 @@ TP_WBALANCE_TEMPERATURE;Temperatūra !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Magyar b/rtdata/languages/Magyar index 50ff7d2a2..ed93eeb98 100644 --- a/rtdata/languages/Magyar +++ b/rtdata/languages/Magyar @@ -1326,7 +1326,7 @@ ZOOMPANEL_ZOOMOUT;Kicsinyítés <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM index a9d58c105..1291fd772 100644 --- a/rtdata/languages/Norsk BM +++ b/rtdata/languages/Norsk BM @@ -1119,7 +1119,7 @@ TP_WBALANCE_TEMPERATURE;Temperatur !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish index 55848a5e0..8b770dfcf 100644 --- a/rtdata/languages/Polish +++ b/rtdata/languages/Polish @@ -1703,7 +1703,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrót: <b>-</b> !PREFERENCES_CLUTSCACHE;HaldCLUT Cache !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters) index beb370933..00b50d4a4 100644 --- a/rtdata/languages/Polish (Latin Characters) +++ b/rtdata/languages/Polish (Latin Characters) @@ -1703,7 +1703,7 @@ ZOOMPANEL_ZOOMOUT;Oddal\nSkrot: <b>-</b> !PREFERENCES_CLUTSCACHE;HaldCLUT Cache !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil) index 09f9913e9..93a0f5b9e 100644 --- a/rtdata/languages/Portugues (Brasil) +++ b/rtdata/languages/Portugues (Brasil) @@ -1120,7 +1120,7 @@ TP_WBALANCE_TEMPERATURE;Temperatura !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian index f984ec628..e04f36fe7 100644 --- a/rtdata/languages/Russian +++ b/rtdata/languages/Russian @@ -1579,7 +1579,7 @@ ZOOMPANEL_ZOOMOUT;Удалить <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Serbian (Cyrilic Characters) b/rtdata/languages/Serbian (Cyrilic Characters) index 855ef7c97..35b317a09 100644 --- a/rtdata/languages/Serbian (Cyrilic Characters) +++ b/rtdata/languages/Serbian (Cyrilic Characters) @@ -1611,7 +1611,7 @@ ZOOMPANEL_ZOOMOUT;Умањује приказ слике <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Serbian (Latin Characters) b/rtdata/languages/Serbian (Latin Characters) index 40f9b6136..136125eb2 100644 --- a/rtdata/languages/Serbian (Latin Characters) +++ b/rtdata/languages/Serbian (Latin Characters) @@ -1611,7 +1611,7 @@ ZOOMPANEL_ZOOMOUT;Umanjuje prikaz slike <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Slovak b/rtdata/languages/Slovak index d5a294c3d..326608fb1 100644 --- a/rtdata/languages/Slovak +++ b/rtdata/languages/Slovak @@ -1170,7 +1170,7 @@ ZOOMPANEL_ZOOMOUT;Oddialiť <b>-</b> !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi index 1ab62fee2..78ea992cb 100644 --- a/rtdata/languages/Suomi +++ b/rtdata/languages/Suomi @@ -1121,7 +1121,7 @@ TP_WBALANCE_TEMPERATURE;Lämpötila [K] !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish index 85e6f02b8..fd29ae6be 100644 --- a/rtdata/languages/Turkish +++ b/rtdata/languages/Turkish @@ -1120,7 +1120,7 @@ TP_WBALANCE_TEMPERATURE;Isı !PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs !PREFERENCES_CLUTSDIR;HaldCLUT directory !PREFERENCES_CMMBPC;Black point compensation -!PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +!PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons !PREFERENCES_CURVEBBOXPOS_ABOVE;Above !PREFERENCES_CURVEBBOXPOS_BELOW;Below !PREFERENCES_CURVEBBOXPOS_LEFT;Left diff --git a/rtdata/languages/default b/rtdata/languages/default index 5a154d959..3bb61fc78 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -1048,7 +1048,7 @@ PREFERENCES_CLUTSCACHE;HaldCLUT Cache PREFERENCES_CLUTSCACHE_LABEL;Maximum number of cached CLUTs PREFERENCES_CLUTSDIR;HaldCLUT directory PREFERENCES_CMMBPC;Black point compensation -PREFERENCES_CURVEBBOXPOS;Position of curve copypasta buttons +PREFERENCES_CURVEBBOXPOS;Position of curve copy & paste buttons PREFERENCES_CURVEBBOXPOS_ABOVE;Above PREFERENCES_CURVEBBOXPOS_BELOW;Below PREFERENCES_CURVEBBOXPOS_LEFT;Left @@ -2335,3 +2335,5 @@ ZOOMPANEL_ZOOMFITCROPSCREEN;Fit crop to screen\nShortcut: <b>Alt</b>-<b>f</b> ZOOMPANEL_ZOOMFITSCREEN;Fit whole image to screen\nShortcut: <b>f</b> ZOOMPANEL_ZOOMIN;Zoom In\nShortcut: <b>+</b> ZOOMPANEL_ZOOMOUT;Zoom Out\nShortcut: <b>-</b> +GIMP_PLUGIN_INFO;Welcome to the RawTherapee GIMP plugin!\nOnce you are done editing, simply close the main RawTherapee window and the image will be automatically imported in GIMP. +DONT_SHOW_AGAIN;Don't show this message again. diff --git a/rtdata/options/options.osx b/rtdata/options/options.osx index 4d35255cd..25696cb85 100644 --- a/rtdata/options/options.osx +++ b/rtdata/options/options.osx @@ -23,9 +23,6 @@ PathTemplate=%p1/converted/%f # Parameters: <Path to raw/JPG> <Path to default profile> <fNumber> <expose in seconds> <focal length in mm> <ISO> <Lens> <Camera> CustomProfileBuilder= -[GUI] -Font=Sans 12 - # Set here an absolute or relative path (to the rawtherapee.exe file) to the directory containing your own profiles. # If MultiUser=true, each user will have their own "options" file, and can set a common or different absolu path #Directory=profiles @@ -39,3 +36,7 @@ Font=Sans 12 # Default profile name (without extension) to use for standard (8bits) images #ImgDefault=Neutral + +[GUI] +FontFamily=Helvetica Regular +CPFontFamily=Helvetica Regular diff --git a/rtengine/camconst.json b/rtengine/camconst.json index 527cbc632..137339ceb 100644 --- a/rtengine/camconst.json +++ b/rtengine/camconst.json @@ -444,7 +444,7 @@ Camera constants: { "aperture": 2.2, "scale_factor": 1.035 }, // 13954/13422=1.039 { "aperture": 2.5, "scale_factor": 1.025 }, // 11400/11000=1.028 { "aperture": 2.8, "scale_factor": 1.015 }, // 13562/13422 - 13731,13688,13562 - { "aperture": 3.2, "scale_factor": 1.010 }, // + { "aperture": 3.2, "scale_factor": 1.010 }, // guessed { "aperture": 3.5, "scale_factor": 1.005 } // 13508/13422 ] } @@ -470,7 +470,7 @@ Camera constants: { "aperture": 1.8, "scale_factor": 1.040 }, // 15501/14733=1.0521, 15352/14733=1.042 16030/15390 { "aperture": 2.0, "scale_factor": 1.025 }, // 15129/14733=1.0268 - 15800/15383=1.027 { "aperture": 2.2, "scale_factor": 1.013 }, // 15591/15383, 14931/14733 - { "aperture": 2.5, "scale_factor": 1.008 }, // 14857/14733guessed + { "aperture": 2.5, "scale_factor": 1.008 }, // 14857/14733 { "aperture": 2.8, "scale_factor": 1.003 }, // 14783/14733 15435/15383 { "aperture": 3.2, "scale_factor": 1.001 }, // 15409/15383 { "aperture": 3.5, "scale_factor": 1.000 } // 14733/14733 @@ -509,6 +509,41 @@ Camera constants: } }, + { // Quality B, some missing scaling factors are safely guessed + "make_model": "Canon EOS 6D Mark II", + "dcraw_matrix": [ 6875,-970,-932,-4691,12459,2501,-874,1953,5809 ], // DNG v_9.12 D65 + "raw_crop": [ 120, 44, 6264, 4180 ], // fullraw size 6384x4224 usefull 120,44,6264x4180 + // "raw_crop": [ 128, 52, 6248, 4168 ], // official jpeg crop 120+12,44+12,6240x4160 + "masked_areas": [ 44, 4, 4220, 116 ], + "ranges": { + "white": [ + { "iso": [ 50, 100, 125, 200, 250, 400, 500, 800, 1000, 1600, 2000, 3200 ], "levels": 16300 }, // typical 16383 + { "iso": [ 4000, 6400, 8000, 12800 ], "levels": 16200 }, // typical 16383 + { "iso": [ 16000, 25600 ], "levels": 16100 }, // typical 16383 + { "iso": [ 160 ], "levels": 13000 }, // typical 13044 + { "iso": [ 320, 640, 1250, 2500 ], "levels": 13250 }, // typical 13337 + { "iso": [ 5000, 10000 ], "levels": 13100 }, // typical 13367 + { "iso": [ 20000, 40000 ], "levels": 12900 }, // typical 13367 + { "iso": [ 51200, 102400 ], "levels": 15900 } // typical 16383 + ], + "white_max": 16383, + "aperture_scaling": [ + // no scale factors known for f/1.0 (had no lenses to test with), but the + // ISO 160-320... 13044 white levels maxes out at "white_max" for f/1.2 and below anyway. + { "aperture": 1.2, "scale_factor": 1.130 }, // guessed + { "aperture": 1.4, "scale_factor": 1.100 }, // guessed + { "aperture": 1.6, "scale_factor": 1.080 }, // guessed + { "aperture": 1.8, "scale_factor": 1.060 }, // 13890/13044=1.065 11284/10512 = 1.073 + { "aperture": 2.0, "scale_factor": 1.040 }, // 13602/13044=1.042 11151/10512 = 1.060 + { "aperture": 2.2, "scale_factor": 1.030 }, // 10982/10512=1.045 + { "aperture": 2.5, "scale_factor": 1.020 }, // 10840/10512 = 1.030 + { "aperture": 2.8, "scale_factor": 1.010 }, // 13530/13367= 1.012 - 12225/12048 = 1.015 + { "aperture": 3.2, "scale_factor": 1.005 }, // 12194/12048 = 1.012 + { "aperture": 3.5, "scale_factor": 1.000 } // 12092/12048 = 1.004 + ] + } + }, + { // Quality A, ISO and aperture WL data by CharlyW at RawTherapee forums, missing samples safely guessed "make_model": "Canon EOS 7D", "dcraw_matrix": [ 5962,-171,-732,-4189,12307,2099,-911,1981,6304 ], // Colin Walker @@ -696,7 +731,7 @@ Camera constants: } }, - { // Quality C, White Levels not properly indicated, aperture scaling..missing scaling factors are guessed + { // Quality B, White Levels not properly indicated, aperture scaling..missing scaling factors are guessed "make_model": "Canon EOS 80D", "dcraw_matrix": [ 7457,-671,-937,-4849,12495,2643,-1213,2354,5492 ], // DNG_V9.5 D65 "raw_crop": [ 264, 34, 6024, 4022 ], // full size 6288x4056, official crop 276,46,6275,4045 @@ -728,6 +763,38 @@ Camera constants: } }, + { // Quality B, aperture scaling..missing scaling factors are guessed + "make_model": [ "Canon EOS 77D", "Canon EOS 9000D" ], + "dcraw_matrix": [ 7377,-742,-998,-4235,11981,2549,-673,1918,5538 ], // DNG_V9.10.1 D65 + "raw_crop": [ 264, 36, 6024, 4020 ], // full size 6288x4056, official crop 276,48,6275,4047 + "masked_areas": [ 40, 96, 4000, 260 ], + "ranges": { + "white": [ + { "iso": [ 100 ], "levels": 16300 }, // nominal 16383 + { "iso": [ 125, 200, 250, 400 ], "levels": 16300 }, // nominal 16383 + { "iso": [ 160 ], "levels": 13000 }, // nominal 13109, + { "iso": [ 320, 640, 1250 ], "levels": 13300 }, // G1,G2 13403 + { "iso": [ 500, 800, 1000 ], "levels": 16200 }, // nominal 16383 + { "iso": [ 1600, 2000, 3200 ], "levels": 16100 }, // nominal 16383 + { "iso": [ 2500, 5000 ], "levels": 13150 }, // G1,G2 13423 + { "iso": [ 4000, 6400 ], "levels": 16000 }, // nominal 16383 + { "iso": [ 8000, 10000,12800, 16000 ], "levels": 15800 }, // R,G1,G2 16383 + { "iso": [ 25600, 51200 ], "levels": 15500 } // R,G1,G2 16383 + ], + "white_max": 16383, + "aperture_scaling": [ + // need for more data to properly fill all scale factors + { "aperture": 1.4, "scale_factor": 1.200 }, // guessed + { "aperture": 1.6, "scale_factor": 1.130 }, // 15264/13423 + { "aperture": 1.8, "scale_factor": 1.090 }, // guessed + { "aperture": 2.0, "scale_factor": 1.060 }, // guessed + { "aperture": 2.2, "scale_factor": 1.025 }, // guessed + { "aperture": 2.5, "scale_factor": 1.005 }, // guessed + { "aperture": 2.8, "scale_factor": 1.000 } // guessed + ] + } + }, + // Canon mid-range DSLRs (Rebels) { // Quality B, ISO and aperture WL data by ..... at RawTherapee forums, missing samples safely guessed @@ -837,6 +904,70 @@ Camera constants: } }, + { // Quality C, white levels and apperture scaling copied from Canon EOS77d + "make_model": [ "Canon EOS Rebel T7i", "Canon EOS 800D", "Canon EOS Kiss X9i" ], + "dcraw_matrix": [ 6970,-512,-968,-4425,12161,2553,-739,1982,5601 ], // DNG_V9.10.1 D65 + "raw_crop": [ 264, 36, 6024, 4020 ], // full size 6288x4056, official crop 276,48,6275,4047 + "masked_areas": [ 40, 96, 4000, 260 ], + "ranges": { + "white": [ + { "iso": [ 100 ], "levels": 16300 }, // nominal 16383 + { "iso": [ 125, 200, 250, 400 ], "levels": 16300 }, // nominal 16383 + { "iso": [ 160 ], "levels": 13000 }, // nominal 13109, + { "iso": [ 320, 640, 1250 ], "levels": 13300 }, // G1,G2 13403 + { "iso": [ 500, 800, 1000 ], "levels": 16200 }, // nominal 16383 + { "iso": [ 1600, 2000, 3200 ], "levels": 16100 }, // nominal 16383 + { "iso": [ 2500, 5000 ], "levels": 13150 }, // G1,G2 13423 + { "iso": [ 4000, 6400 ], "levels": 16000 }, // nominal 16383 + { "iso": [ 8000, 10000,12800, 16000 ], "levels": 15800 }, // R,G1,G2 16383 + { "iso": [ 25600, 51200 ], "levels": 15500 } // R,G1,G2 16383 + ], + "white_max": 16383, + "aperture_scaling": [ + // need for more data to properly fill all scale factors + { "aperture": 1.4, "scale_factor": 1.200 }, // guessed + { "aperture": 1.6, "scale_factor": 1.130 }, // 15264/13423 + { "aperture": 1.8, "scale_factor": 1.090 }, // guessed + { "aperture": 2.0, "scale_factor": 1.060 }, // guessed + { "aperture": 2.2, "scale_factor": 1.025 }, // guessed + { "aperture": 2.5, "scale_factor": 1.005 }, // guessed + { "aperture": 2.8, "scale_factor": 1.000 } // guessed + ] + } + }, + + { // Quality B, apperture scaling copied from Canon EOS77d + "make_model": [ "Canon EOS Rebel SL2", "Canon EOS 200D", "Canon EOS Kiss X9" ], + "dcraw_matrix": [ 7377,-742,-998,-4235,11981,2549,-673,1918,5538 ], // DNG_V9.12 D65 + "raw_crop": [ 264, 36, 6024, 4020 ], // full size 6288x4056, official crop 276,48,6275,4047 + "masked_areas": [ 40, 96, 4000, 260 ], + "ranges": { + "white": [ + { "iso": [ 100 ], "levels": 16300 }, // nominal 16383 + { "iso": [ 125, 200, 250, 400 ], "levels": 16300 }, // nominal 16383 + { "iso": [ 160 ], "levels": 13000 }, // nominal 13106, + { "iso": [ 320, 640, 1250 ], "levels": 13300 }, // G1,G2 13423 + { "iso": [ 500, 800, 1000 ], "levels": 16200 }, // nominal 16383 + { "iso": [ 1600, 2000, 3200 ], "levels": 16100 }, // nominal 16383 + { "iso": [ 2500, 5000 ], "levels": 13150 }, // G1,G2 13423 + { "iso": [ 4000, 6400 ], "levels": 16000 }, // nominal 16383 + { "iso": [ 8000, 10000,12800, 16000 ], "levels": 15800 }, // R,G1,G2 16383 + { "iso": [ 25600, 51200 ], "levels": 15500 } // R,G1,G2 16383 + ], + "white_max": 16383, + "aperture_scaling": [ + // need for more data to properly fill all scale factors + { "aperture": 1.4, "scale_factor": 1.200 }, // guessed + { "aperture": 1.6, "scale_factor": 1.130 }, // 15264/13423 + { "aperture": 1.8, "scale_factor": 1.090 }, // guessed + { "aperture": 2.0, "scale_factor": 1.060 }, // guessed + { "aperture": 2.2, "scale_factor": 1.025 }, // guessed + { "aperture": 2.5, "scale_factor": 1.005 }, // guessed + { "aperture": 2.8, "scale_factor": 1.000 } // guessed + ] + } + }, + // Canon low-range DSLRs // Canon EOS 1200D/Rebel T5/Kiss X70" is upper at the same item as 600D/T3i/X5 @@ -958,7 +1089,7 @@ Camera constants: }, { // Quality C, White Levels not properly indicated, aperture scaling..missing factors are guessed - "make_model": "Canon EOS M5", + "make_model": [ "Canon EOS M5","Canon EOS M6" ], "dcraw_matrix": [ 8532,-701,-1167,-4095,11879,2508,-797,2424,7010 ], // DNG_V9.8 D65 "raw_crop": [ 264, 36, 6024, 4020 ], // full size 6288x4056, //"raw_crop": [ 272, 44, 6008, 4008 ], // matched to official crop 276,48,6275,4047 - official jpeg 6000X4000 @@ -966,11 +1097,13 @@ Camera constants: "ranges": { "white": [ { "iso": [ 100, 125, 200, 250 ], "levels": 15600 }, // nominal 15660-15800 - { "iso": [ 160 ], "levels": 13000 }, // guessed - { "iso": [ 320 ], "levels": 13200 }, // nominal green13528-14466-14380-14368 - blue13262-14186, - { "iso": [ 640, 1250 ], "levels": 13150 }, // iso 640 G1,G2 13260-13450 - blue13230-13430 -iso 1250 13430 - { "iso": [ 2500, 5000, 10000 ], "levels": 13100 }, // - { "iso": [ 400, 500, 800, 1000, 1600, 2000, 3200, 4000, 6400 ], "levels": 16100 }, // 16383 + { "iso": [ 160 ], "levels": 12600 }, // green 12650-12750 + { "iso": [ 320 ], "levels": 13100 }, // nominal green 13200, 13528-14466-14380-14368 - blue13262-14186, + { "iso": [ 640, 1250 ], "levels": 13200 }, // iso 640 G1,G2 13260-13450 - blue13230-13430 -iso 1250 13430 + { "iso": [ 2500, 5000, 10000 ], "levels": 13000 }, // + { "iso": [ 400, 500, 800, 1000, 1600, 2000, 3200, 4000, 6400 ], "levels": 16100 }, // 16383 + // { "iso": [ 1600 ], "levels": 15000 }, // one sample of m6 = 15100 !! + // { "iso": [ 6400 ], "levels": 15500 }, // one sample of m6 = 15600 !! { "iso": [ 8000, 12800, 16000, 25600 ], "levels": 16000 } // R,G1,G2 16383, B 16243 ], "white_max": 16383, @@ -978,8 +1111,8 @@ Camera constants: // need for more data to properly fill all scale factors { "aperture": 1.4, "scale_factor": 1.200 }, // 31/25 { "aperture": 1.6, "scale_factor": 1.080 }, // guessed - { "aperture": 1.8, "scale_factor": 1.050 }, // guessed - { "aperture": 2.0, "scale_factor": 1.030 }, // 15292/ 14916/ 320-14466/ 320-13528/ + { "aperture": 1.8, "scale_factor": 1.060 }, // guessed + { "aperture": 2.0, "scale_factor": 1.040 }, // 15292/ 14916/ 320-14466/ 320-13528/ { "aperture": 2.2, "scale_factor": 1.020 }, // guessed { "aperture": 2.5, "scale_factor": 1.010 }, // guessed { "aperture": 2.8, "scale_factor": 1.000 }, // @@ -1048,12 +1181,12 @@ Camera constants: }, { // Quality B, - "make_model": [ "Canon PowerShot G5 X", "Canon PowerShot G9 X", "Canon PowerShot G7 X Mark II" ], + "make_model": [ "Canon PowerShot G5 X", "Canon PowerShot G9 X", "Canon PowerShot G7 X Mark II", "Canon PowerShot G9 X Mark II" ], "dcraw_matrix": [ 9602,-3823,-937,-2984,11495,1675,-407,1415,5049 ], // DNG_V8.7 D65 //"raw_crop": [ 116, 24, 5504, 3680 ], // Sensor size 5632x3710. Largest useful frame 120-5616X28-3702 = 5504x3682, 4pix RTborders, Left Border 120-4, Top border 28-4 "raw_crop": [ 128, 36, 5480, 3656 ], // Default official 3/2 frame 5472X3648, 4pix borders, Left Border 132-4, Top border 40-4 "masked_areas": [ 40, 4, 3680, 76 ], - "ranges": { "white": 16300 } + "ranges": { "white": 15500 } // some sporadic samples are clipped lower than 16383, one ISO125 sample at 15500 }, { // Quality A, changes for raw crop which is wrong (larger) in dcraw @@ -1072,12 +1205,13 @@ Camera constants: "ranges": { "white": 4050 } // nominal 4080-4093 }, - { // Quality C, color data guessed to be same with X-A3 + { // Quality B "make_model": "FUJIFILM GFX 50S", - "dcraw_matrix": [ 12407,-5222,-1086,-2971,11116,2120,-294,1029,5284 ], // copy from X-A3 DNGv9.8 D65 + "dcraw_matrix": [ 11756,-4754,-874,-3056,11045,2305,-381,1457,6006 ], // DNGv9.9 D65 + //"dcraw_matrix": [ 12407,-5222,-1086,-2971,11116,2120,-294,1029,5284 ], // copy from X-A3 DNGv9.8 D65 "raw_crop": [ 0, 0, 8280, 6208 ], // full raw 9216X6210 - usefull 8280x6208 - // "raw_crop": [ 6, 6, 8264, 6200 ], // fuji official JPEG 8256X6192 10,11,9,8 - experimental crop to match with official - "ranges": { "white": 16300 } + //"raw_crop": [ 6, 6, 8264, 6200 ], // fuji official JPEG 8256X6192 10,11,9,8 - experimental crop to match with official + "ranges": { "white": 16000 } }, { // Quality A @@ -1131,7 +1265,7 @@ Camera constants: }, { // Quality B - "make_model": [ "FUJIFILM X-PRO2", "FUJIFILM X-T2" ], + "make_model": [ "FUJIFILM X-PRO2", "FUJIFILM X-T2", "FUJIFILM X100F", "FUJIFILM X-T20" ], "dcraw_matrix": [ 11434,-4948,-1210,-3746,12042,1903,-666,1479,5235 ], // DNG_v9.4 D65 //"raw_crop": [ 0, 0, 6032, 4032 ], // full raw 6160,4032, Usable 6032,4032 - experimental crop "ranges": { "white": 16100 } @@ -1161,11 +1295,17 @@ Camera constants: "raw_crop": [ 4, 4, -4, -4 ] // full raw 6016x4016, Official 6000x4000 }, - { // Quality B, frame corrections + { // Quality C "make_model": "LG mobile LG-H815", "dcraw_matrix": [ 5859,547,-1250,-6484,15547,547,-2422,5625,3906 ], // DNG D65 - "raw_crop": [ 0, 0, 0, 0 ], // full frame 5312x2988, 8 black columns at the left - "ranges": { "white_max": 1023 } + //"dcraw_matrix": [ 11563,-2891,-3203,-5313,15625,625,-781,2813,5625 ], // DNG A + "ranges": { "white_max": 1000 } + }, + { // Quality C + "make_model": "LG mobile LG-H850", + //"dcraw_matrix": [ 10000,-2188,-2813,-5156,15469,625,-703,2734,5078 ], // DNG A + "dcraw_matrix": [ 5313,1016,-1172,-6250,15391,547,-2344,5547,3359 ], // DNG D65 + "ranges": { "white_max": 1000 } }, { // Quality A @@ -1288,6 +1428,12 @@ Camera constants: "ranges": { "white": 16300 } // WL value is for 14-bit files, RT auto adapts it for 12-bit files. WL typical 16383 set to 16300 for safety, }, + { // Quality B + "make_model": "Nikon D7500", + "dcraw_matrix": [ 8813,-3210,-1036,-4703,12868,2021,-1054,1940,6129 ], // adobe dng_v9.12 d65 + "ranges": { "white": 16300 } // WL value is for 14-bit files, RT auto adapts it for 12-bit files. WL typical 16383 set to 16300 for safety, + }, + { // Quality B, samples by joachip at RT forums, are measures at long exposures with LongExposureNoiseReduction // aperture scaling known to exist, but little to gain as the levels are so close to white_max "make_model": "Nikon D600", @@ -1337,7 +1483,7 @@ Camera constants: }, { // Quality B, data from RussellCottrell at RT forums. Largest aperture scale factor is 1.013, about 1/50th of a stop - "make_model": "Nikon D800E", + "make_model": [ "Nikon D800", "Nikon D800E" ], "dcraw_matrix": [ 7866,-2108,-555,-4869,12483,2681,-1176,2069,7501 ], // D800/D800E from dcraw.c "ranges": { "white": [ @@ -1355,6 +1501,12 @@ Camera constants: "ranges": { "white": 16300 } // WL values for 14-bit files, RT auto adapts it for 12-bit files. Typical WL at 16383 }, + { // Quality B + "make_model": "Nikon D80", + "dcraw_matrix": [ 8629,-2410,-883,-9055,16940,2171,-1490,1363,8520 ], // Dcraw.c d65 + "ranges": { "white": 3980 } // 12-bit files. + }, + { // Quality B, 16Mp and 64Mp raw frames "make_model": "OLYMPUS E-M5MarkII", "dcraw_matrix": [ 9422,-3258,-711,-2655,10898,2015,-512,1354,5512 ], // DNG_v8.8 D65 @@ -1428,6 +1580,12 @@ Camera constants: "ranges": { "white": 4050 } // safe for worst case detected, nominal is 4093 }, + { // Quality B, + "make_model": "OLYMPUS TG-5", + "dcraw_matrix": [ 10899,-3833,-1082,-2112,10736,1575,-267,1452,5269 ], // DNG_V9.12 D65 + "ranges": { "white": 4050 } // safe for worst case detected, nominal is 4093 + }, + /* Since dcraw_v9.21 Panasonic base BL is read from Exif (tags 0x001c BlackLevelRed15 is BL offset. dcraw/RT read the base black from Exif and calculates total BL = BLbase+BLoffset, 0x001d BlackLevelGreen, 0x001e BlackLevelBlue and we define here the needed offset of around 15. The total BL is base+offset @@ -1602,7 +1760,7 @@ Camera constants: { // Quality A, Replicated from rawimage.cc "make_model": "Panasonic DMC-GH2", - // "dcraw_matrix": [ 6855,-1765,-456,-4223,11600,2996,-1450,2602,5761 ], // Colin Walker - disabled due to problems with underwater + //"dcraw_matrix": [ 6855,-1765,-456,-4223,11600,2996,-1450,2602,5761 ], // Colin Walker - disabled due to problems with underwater "dcraw_matrix": [ 7780,-2410,-806,-3913,11724,2484,-1018,2390,5298 ], // dcraw d65 "ranges": { "black": 15, // 15 is BL offset. dcraw/RT read the base black from Exif and calculates total BL = BLbase+BLoffset @@ -1638,6 +1796,19 @@ Camera constants: } }, + { // Quality C + "make_model": "Panasonic DC-GH5", + "dcraw_matrix": [ 7641,-2336,-605,-3218,11299,2187,-485,1338,5121 ], // DNG_v9.9 D65 + "ranges": { + "black": 15, // 16 is BL offset. dcraw/RT read the base BL from Exif and calculates total BL = BLbase+BLoffset + "white": [ + { "iso": 100, "levels": 4080 }, // Exif_linearitylimit 2111 + { "iso": 125, "levels": 4080 }, // Exif_linearitylimit 2626 + { "iso": [ 160, 200, 250, 320, 400,500, 640, 800, 1000, 1250, 1600, 2000, 2500, 3200, 4000, 5000, 6400, 12800, 25600 ], "levels": 4080 } // nominal 4095 + ] + } + }, + { // Quality A "make_model": "Panasonic DMC-GM1", "dcraw_matrix": [ 6770,-1895,-744,-5232,13145,2303,-1664,2691,5703 ], @@ -1768,17 +1939,12 @@ Camera constants: "ranges": { "white": 4080 } // nominal at ISO200 4094 }, - { // Quality C, only Raw crop - "make_model": [ "RICOH PENTAX KP", "PENTAX KP" ], - "raw_crop": [ 52, 28, 6032, 4028 ] - }, - { // Quality B, Intemediate ISO samples missing, Pentax_DNG WLtags are after BL sutraction and not valid "make_model": [ "RICOH PENTAX K-70", "PENTAX K-70" ], //"dcraw_matrix": [ 8050,-2061,-1264,-4359,12953,1515,-1096,1965,6075 ], // PENTAX DNG D65 "dcraw_matrix": [ 8766,-3149,-747,-3976,11943,2292,-517,1259,5552 ], // Adobe DNGv9.8 D65 "raw_crop": [ 58, 28, 6022, 4020 ], // full frame 6080x4064, usefull raw frame 56,28,6080,4049, official DNG raw_crop 58,28,6080,4052, official jpeg crop 58+8,28+4 6000x4000 - // "raw_crop": [ 62, 28, 6000, 4000 ], // matched to official jpeg crop 58+8,28+4 6000x4000 + //"raw_crop": [ 62, 28, 6000, 4000 ], // matched to official jpeg crop 58+8,28+4 6000x4000 "ranges": { "white": [ { "iso": 100, "levels": 16300 }, // 16319-16377 @@ -1793,6 +1959,26 @@ Camera constants: } }, + { // Quality B, Intemediate ISO samples missing. Pentax_DNG WLtags are after BL sutraction and not valid + "make_model": [ "RICOH PENTAX KP", "PENTAX KP" ], + "dcraw_matrix": [ 7357,-2031,-1320,-4842,13555,1349,-1538,2416,5736 ], // Adobe DNGv9.12 D65 + "raw_crop": [ 52, 28, 6032, 4030 ], // full frame 6112x4060, usefull raw frame 52,28,6084,4049, official DNG raw_crop 54,28,6082,4060 + "ranges": { + "white": [ + { "iso": 100, "levels": 16300 }, // 16383 + { "iso": 200, "levels": 16250 }, // 16383 + { "iso": 400, "levels": 16250 }, // 16383 + { "iso": 800, "levels": 16200 }, // 16383 + { "iso": 1600, "levels": 16100 }, // 16383 + { "iso": [ 3200, 6400 ], "levels": 16000 }, // 16383 + { "iso": [ 12800, 25600 ], "levels": 15800 }, // 16383 + { "iso": [ 51200, 102400 ], "levels": 15500 }, // 16383 + { "iso": [ 204800, 409600 ], "levels": 15000 }, // 16383 + { "iso": [ 819200 ], "levels": 14500 } // 16383-16200 + ] + } + }, + { // Quality B, Intemediate ISO samples missing, Pentax_DNG WLtags are after BL sutraction and not valid "make_model": [ "RICOH PENTAX K-1", "PENTAX K-1" ], "dcraw_matrix": [ 8596,-2981,-639,-4202,12046,2431,-685,1424,6122 ], // adobe DNG v9.7 D65 @@ -1937,7 +2123,6 @@ Camera constants: "make_model": "Sigma sd Quattro", "raw_crop": [ 200, 74, 5632, 3698 ] }, - { // Quality A, correction for color matrix from Colin Walker's d50 to dng d65 "make_model": "Sony NEX-C3", //"dcraw_matrix": [ 5130,-1055,-269,-4473,11797,3050,-701,1310,7121 ], // Colin walker's d50 kept for possible consistency issues @@ -2021,6 +2206,13 @@ Camera constants: "ranges": { "black": 512, "white": 16300 } }, + { // Quality B, color matrix copied from a7rm2 + "make_model": "Sony ILCE-9", + "dcraw_matrix": [ 6389,-1703,-378,-4562,12265,2587,-670,1489,6550 ], // DNG_v9.12 D65 + "raw_crop": [ 8, 8, 6008, 4008 ], // full raw frame 6048x4024 Dcraw auto identify 6024x4024, jpeg 12,12,6000x4000 + "ranges": { "black": 512, "white": 16300 } + }, + { // Quality B, correction for frame width "make_model": [ "Sony ILCE-7S", "Sony ILCE-7SM2" ], "dcraw_matrix": [ 5838,-1430,-246,-3497,11477,2297,-748,1885,5778 ], // DNG_v9.2 D65 diff --git a/rtengine/dcraw.h b/rtengine/dcraw.h index c467ad5c0..a109b43c2 100644 --- a/rtengine/dcraw.h +++ b/rtengine/dcraw.h @@ -278,7 +278,6 @@ void copy_line_to_xtrans(struct fuji_compressed_block* info, int cur_line, int c void copy_line_to_bayer(struct fuji_compressed_block* info, int cur_line, int cur_block, int cur_block_width); void fuji_zerobits(struct fuji_compressed_block* info, int *count); void fuji_read_code(struct fuji_compressed_block* info, int *data, int bits_to_read); -int bitDiff(int value1, int value2); int fuji_decode_sample_even(struct fuji_compressed_block* info, const struct fuji_compressed_params * params, ushort* line_buf, int pos, struct int_pair* grads); int fuji_decode_sample_odd(struct fuji_compressed_block* info, const struct fuji_compressed_params * params, ushort* line_buf, int pos, struct int_pair* grads); void fuji_decode_interpolation_even(int line_width, ushort* line_buf, int pos); diff --git a/rtengine/dcrop.cc b/rtengine/dcrop.cc index a6cd63edc..7dec0d828 100644 --- a/rtengine/dcrop.cc +++ b/rtengine/dcrop.cc @@ -1617,13 +1617,13 @@ void Crop::update (int todo) if (settings->ciecamfloat) { float d; // not used after this block - parent->ipf.ciecam_02float (cieCrop, float (adap), begh, endh, 1, 2, labnCrop, ¶ms, parent->customColCurve1, parent->customColCurve2, parent->customColCurve3, - dummy, dummy, parent->CAMBrightCurveJ, parent->CAMBrightCurveQ, parent->CAMMean, 5, 1, execsharp, d, skip, 1); + parent->ipf.ciecam_02float (cieCrop, float(adap), begh, endh, 1, 2, labnCrop, ¶ms, parent->customColCurve1, parent->customColCurve2, parent->customColCurve3, + dummy, dummy, parent->CAMBrightCurveJ, parent->CAMBrightCurveQ, parent->CAMMean, 5, skip, execsharp, d, 1); } else { double dd; // not used after this block parent->ipf.ciecam_02 (cieCrop, adap, begh, endh, 1, 2, labnCrop, ¶ms, parent->customColCurve1, parent->customColCurve2, parent->customColCurve3, - dummy, dummy, parent->CAMBrightCurveJ, parent->CAMBrightCurveQ, parent->CAMMean, 5, 1, execsharp, dd, skip, 1); + dummy, dummy, parent->CAMBrightCurveJ, parent->CAMBrightCurveQ, parent->CAMMean, 5, skip, execsharp, dd, 1); } } else { // CIECAM is disbaled, we free up its image buffer to save some space diff --git a/rtengine/fujicompressed.cc b/rtengine/fujicompressed.cc index d9fa4d332..156c338d5 100644 --- a/rtengine/fujicompressed.cc +++ b/rtengine/fujicompressed.cc @@ -18,6 +18,21 @@ it under the terms of the one of three licenses as you choose: */ +namespace { + +int bitDiff (int value1, int value2) +{ + int decBits = 0; + + if ( value2 < value1 ) + while (decBits <= 12 && (value2 << ++decBits) < value1) + ; + + return decBits; +} + +} + void CLASS init_fuji_compr (struct fuji_compressed_params* info) { int cur_val; @@ -90,6 +105,10 @@ void CLASS fuji_fill_buffer (struct fuji_compressed_block *info) if (info->cur_pos >= info->cur_buf_size) { info->cur_pos = 0; info->cur_buf_offset += info->cur_buf_size; +#ifdef MYFILE_MMAP + info->cur_buf_size = info->max_read_size; + info->cur_buf = fdata(info->cur_buf_offset, info->input); +#else #ifdef _OPENMP #pragma omp critical #endif @@ -97,14 +116,13 @@ void CLASS fuji_fill_buffer (struct fuji_compressed_block *info) fseek (info->input, info->cur_buf_offset, SEEK_SET); info->cur_buf_size = fread (info->cur_buf, 1, std::min (info->max_read_size, FUJI_BUF_SIZE), info->input); } - +#endif if (info->cur_buf_size < 1) { // nothing read if (info->fillbytes > 0) { int ls = std::max (1, std::min (info->fillbytes, (int)FUJI_BUF_SIZE)); memset (info->cur_buf, 0, ls); info->fillbytes -= ls; - } else - ; + } } info->max_read_size -= info->cur_buf_size; @@ -128,8 +146,10 @@ void CLASS init_fuji_block (struct fuji_compressed_block* info, const struct fuj } // init buffer +#ifndef MYFILE_MMAP info->cur_buf = (uchar*)malloc (FUJI_BUF_SIZE); merror (info->cur_buf, "init_fuji_block()"); +#endif info->cur_bit = 0; info->cur_pos = 0; info->cur_buf_offset = raw_offset; @@ -172,14 +192,14 @@ void CLASS copy_line_to_xtrans (struct fuji_compressed_block* info, int cur_line while (static_cast<int>(pixel_count) < cur_block_width) { switch (xtrans_abs[row_count][ (pixel_count % 6)]) { - case 0: // red - line_buf = lineBufR[row_count >> 1]; - break; - case 1: // green line_buf = lineBufG[row_count]; break; + case 0: // red + line_buf = lineBufR[row_count >> 1]; + break; + case 2: // blue default: line_buf = lineBufB[row_count >> 1]; @@ -256,7 +276,7 @@ void CLASS copy_line_to_bayer (struct fuji_compressed_block *info, int cur_line, #define fuji_quant_gradient(i,v1,v2) (9*i->q_table[i->q_point[4]+(v1)] + i->q_table[i->q_point[4]+(v2)]) -void CLASS fuji_zerobits (struct fuji_compressed_block* info, int *count) +inline void CLASS fuji_zerobits (struct fuji_compressed_block* info, int *count) { uchar zero = 0; *count = 0; @@ -268,7 +288,9 @@ void CLASS fuji_zerobits (struct fuji_compressed_block* info, int *count) if (!info->cur_bit) { ++info->cur_pos; +#ifndef MYFILE_MMAP fuji_fill_buffer (info); +#endif } if (zero) { @@ -279,23 +301,26 @@ void CLASS fuji_zerobits (struct fuji_compressed_block* info, int *count) } } -void CLASS fuji_read_code (struct fuji_compressed_block* info, int *data, int bits_to_read) +inline void CLASS fuji_read_code (struct fuji_compressed_block* info, int *data, int bits_to_read) { - uchar bits_left = bits_to_read; - uchar bits_left_in_byte = 8 - (info->cur_bit & 7); *data = 0; if (!bits_to_read) { return; } + uchar bits_left = bits_to_read; + uchar bits_left_in_byte = 8 - (info->cur_bit & 7); + if (bits_to_read >= bits_left_in_byte) { do { *data <<= bits_left_in_byte; bits_left -= bits_left_in_byte; *data |= info->cur_buf[info->cur_pos] & ((1 << bits_left_in_byte) - 1); ++info->cur_pos; +#ifndef MYFILE_MMAP fuji_fill_buffer (info); +#endif bits_left_in_byte = 8; } while (bits_left >= 8); } @@ -311,17 +336,6 @@ void CLASS fuji_read_code (struct fuji_compressed_block* info, int *data, int bi info->cur_bit = (8 - (bits_left_in_byte & 7)) & 7; } -int CLASS bitDiff (int value1, int value2) -{ - int decBits = 0; - - if ( value2 < value1 ) - while (decBits <= 12 && (value2 << ++decBits) < value1) - ; - - return decBits; -} - int CLASS fuji_decode_sample_even (struct fuji_compressed_block* info, const struct fuji_compressed_params * params, ushort* line_buf, int pos, struct int_pair* grads) { int interp_val = 0; @@ -878,7 +892,9 @@ void CLASS fuji_decode_strip (const struct fuji_compressed_params* info_common, // release data free (info.linealloc); +#ifndef MYFILE_MMAP free (info.cur_buf); +#endif } static unsigned sgetn (int n, uchar *s) diff --git a/rtengine/improccoordinator.cc b/rtengine/improccoordinator.cc index 967c79e37..cf3e17cfa 100644 --- a/rtengine/improccoordinator.cc +++ b/rtengine/improccoordinator.cc @@ -3459,7 +3459,7 @@ void ImProcCoordinator::updatePreviewImage (int todo, Crop* cropCall) CAMBrightCurveJ.dirty = true; CAMBrightCurveQ.dirty = true; - ipf.ciecam_02float (ncie, float (adap), begh, endh, pW, 2, nprevl, ¶ms, customColCurve1, customColCurve2, customColCurve3, histLCAM, histCCAM, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, execsharp, d, scale, 1); + ipf.ciecam_02float (ncie, float(adap), begh, endh, pW, 2, nprevl, ¶ms, customColCurve1, customColCurve2, customColCurve3, histLCAM, histCCAM, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, scale, execsharp, d, 1); if (params.colorappearance.autodegree && acListener && params.colorappearance.enabled) { acListener->autoCamChanged (100.* (double)d); diff --git a/rtengine/improcfun.cc b/rtengine/improcfun.cc index 42f2da230..3cbfcb6ec 100644 --- a/rtengine/improcfun.cc +++ b/rtengine/improcfun.cc @@ -211,11 +211,11 @@ void ImProcFunctions::firstAnalysis (const Imagefloat* const original, const Pro // Copyright (c) 2012 Jacques Desmis <jdesmis@gmail.com> void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params , const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve2, const ColorAppearance & customColCurve3, - LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, int scalecd, int rtt) + LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, int rtt) { if (params->colorappearance.enabled) { //int lastskip; -//if(rtt==1) {lastskip=scalecd;} //not for Rtthumbnail +//if(rtt==1) {lastskip=scale;} //not for Rtthumbnail #ifdef _DEBUG MyTime t1e, t2e; @@ -561,7 +561,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh #ifndef _DEBUG - #pragma omp parallel default(shared) firstprivate(lab,xw1,xw2,yw1,yw2,zw1,zw2,pilot,jli,chr,yb,la,yb2,la2,fl,nc,f,c, height,width,begh, endh,nc2,f2,c2, alg,algepd, gamu, highlight, rstprotection, pW, scalecd) + #pragma omp parallel default(shared) firstprivate(lab,xw1,xw2,yw1,yw2,zw1,zw2,pilot,jli,chr,yb,la,yb2,la2,fl,nc,f,c, height,width,begh, endh,nc2,f2,c2, alg,algepd, gamu, highlight, rstprotection, pW, scale) #endif { //matrix for current working space @@ -1254,7 +1254,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh float b_r = static_cast<float> (params->dirpyrequalizer.hueskin.value[2]) / 100.0f; float t_r = static_cast<float> (params->dirpyrequalizer.hueskin.value[3]) / 100.0f; int choice = 0; //not disabled in case of ! always 0 - dirpyr_equalizercam (ncie, ncie->sh_p, ncie->sh_p, ncie->W, ncie->H, ncie->h_p, ncie->C_p, params->dirpyrequalizer.mult, params->dirpyrequalizer.threshold, params->dirpyrequalizer.skinprotect, true, params->dirpyrequalizer.gamutlab, b_l, t_l, t_r, b_r, choice, scalecd); //contrast by detail adapted to CIECAM + dirpyr_equalizercam (ncie, ncie->sh_p, ncie->sh_p, ncie->W, ncie->H, ncie->h_p, ncie->C_p, params->dirpyrequalizer.mult, params->dirpyrequalizer.threshold, params->dirpyrequalizer.skinprotect, true, params->dirpyrequalizer.gamutlab, b_l, t_l, t_r, b_r, choice, scale); //contrast by detail adapted to CIECAM } } @@ -1460,7 +1460,7 @@ void ImProcFunctions::ciecam_02 (CieImage* ncie, double adap, int begh, int endh // Copyright (c) 2012 Jacques Desmis <jdesmis@gmail.com> void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve2, const ColorAppearance & customColCurve3, - LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, int scalecd, int rtt) + LUTu & histLCAM, LUTu & histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, int rtt) { if (params->colorappearance.enabled) { @@ -2617,7 +2617,7 @@ void ImProcFunctions::ciecam_02float (CieImage* ncie, float adap, int begh, int float t_r = static_cast<float> (params->dirpyrequalizer.hueskin.value[3]) / 100.0f; int choice = 0; // I have not suppress this statement in case of !! always to 0 lab->deleteLab(); - dirpyr_equalizercam (ncie, ncie->sh_p, ncie->sh_p, ncie->W, ncie->H, ncie->h_p, ncie->C_p, params->dirpyrequalizer.mult, params->dirpyrequalizer.threshold, params->dirpyrequalizer.skinprotect, true, params->dirpyrequalizer.gamutlab, b_l, t_l, t_r, b_r, choice, scalecd); //contrast by detail adapted to CIECAM + dirpyr_equalizercam (ncie, ncie->sh_p, ncie->sh_p, ncie->W, ncie->H, ncie->h_p, ncie->C_p, params->dirpyrequalizer.mult, params->dirpyrequalizer.threshold, params->dirpyrequalizer.skinprotect, true, params->dirpyrequalizer.gamutlab, b_l, t_l, t_r, b_r, choice, scale); //contrast by detail adapted to CIECAM lab->reallocLab(); } diff --git a/rtengine/improcfun.h b/rtengine/improcfun.h index 9eeed46b7..559b07cc9 100644 --- a/rtengine/improcfun.h +++ b/rtengine/improcfun.h @@ -227,10 +227,10 @@ public: void luminanceCurve (LabImage* lold, LabImage* lnew, LUTf &curve); void ciecam_02float (CieImage* ncie, float adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve, const ColorAppearance & customColCurve3, - LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, int scalecd, int rtt); + LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, float &d, int rtt); void ciecam_02 (CieImage* ncie, double adap, int begh, int endh, int pW, int pwb, LabImage* lab, const ProcParams* params, const ColorAppearance & customColCurve1, const ColorAppearance & customColCurve, const ColorAppearance & customColCurve3, - LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, int scalecd, int rtt); + LUTu &histLCAM, LUTu &histCCAM, LUTf & CAMBrightCurveJ, LUTf & CAMBrightCurveQ, float &mean, int Iterates, int scale, bool execsharp, double &d, int rtt); void chromiLuminanceCurve (PipetteBuffer *pipetteBuffer, int pW, LabImage* lold, LabImage* lnew, LUTf &acurve, LUTf &bcurve, LUTf & satcurve, LUTf & satclcurve, LUTf &clcurve, LUTf &curve, bool utili, bool autili, bool butili, bool ccutili, bool cclutili, bool clcutili, LUTu &histCCurve, LUTu &histLurve); void vibrance (LabImage* lab);//Jacques' vibrance void colorCurve (LabImage* lold, LabImage* lnew); diff --git a/rtengine/ipresize.cc b/rtengine/ipresize.cc index dde43fe6c..644e180c7 100644 --- a/rtengine/ipresize.cc +++ b/rtengine/ipresize.cc @@ -18,9 +18,12 @@ */ #include "improcfun.h" + +#include "alignedbuffer.h" +#include "opthelper.h" #include "rt_math.h" #include "sleef.c" -#include "opthelper.h" + //#define PROFILE #ifdef PROFILE @@ -180,9 +183,9 @@ SSEFUNCTION void ImProcFunctions::Lanczos (const LabImage* src, LabImage* dst, f const int support = static_cast<int> (2.0f * a / sc) + 1; // storage for precomputed parameters for horizontal interpolation - float * wwh = new float[support * dst->W]; - int * jj0 = new int[dst->W]; - int * jj1 = new int[dst->W]; + float* const wwh = new float[support * dst->W]; + int* const jj0 = new int[dst->W]; + int* const jj1 = new int[dst->W]; // Phase 1: precompute coefficients for horizontal interpolation for (int j = 0; j < dst->W; j++) { @@ -218,9 +221,12 @@ SSEFUNCTION void ImProcFunctions::Lanczos (const LabImage* src, LabImage* dst, f #endif { // temporal storage for vertically-interpolated row of pixels - float * lL = new float[src->W]; - float * la = new float[src->W]; - float * lb = new float[src->W]; + AlignedBuffer<float> aligned_buffer_ll(src->W); + AlignedBuffer<float> aligned_buffer_la(src->W); + AlignedBuffer<float> aligned_buffer_lb(src->W); + float* const lL = aligned_buffer_ll.data; + float* const la = aligned_buffer_la.data; + float* const lb = aligned_buffer_lb.data; // weights for interpolation in y direction float w[support] ALIGNED64; @@ -315,10 +321,6 @@ SSEFUNCTION void ImProcFunctions::Lanczos (const LabImage* src, LabImage* dst, f dst->b[i][j] = b; } } - - delete[] lL; - delete[] la; - delete[] lb; } delete[] jj0; delete[] jj1; diff --git a/rtengine/rawimage.cc b/rtengine/rawimage.cc index 7b6ee8782..f36e798d9 100644 --- a/rtengine/rawimage.cc +++ b/rtengine/rawimage.cc @@ -112,7 +112,7 @@ void RawImage::get_colorsCoeff( float *pre_mul_, float *scale_mul_, float *cblac } } - if ( this->get_cam_mul(0) == -1 || forceAutoWB) { + if (data && (this->get_cam_mul(0) == -1 || forceAutoWB)) { memset(dsum, 0, sizeof dsum); if (this->isBayer()) { @@ -552,7 +552,7 @@ int RawImage::loadRaw (bool loadData, unsigned int imageNum, bool closeFile, Pro crop_masked_pixels(); free (raw_image); raw_image = nullptr; - } else { + } else { if (get_maker() == "Sigma" && cc && cc->has_rawCrop()) { // foveon images int lm, tm, w, h; cc->get_rawCrop(lm, tm, w, h); diff --git a/rtengine/rtthumbnail.cc b/rtengine/rtthumbnail.cc index 6e5b0c9e2..919893212 100644 --- a/rtengine/rtthumbnail.cc +++ b/rtengine/rtthumbnail.cc @@ -1297,7 +1297,7 @@ IImage8* Thumbnail::processImage (const procparams::ProcParams& params, int rhei CAMMean = NAN; CAMBrightCurveJ.dirty = true; CAMBrightCurveQ.dirty = true; - ipf.ciecam_02float (cieView, adap, begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 6, execsharp, d, sk, rtt); + ipf.ciecam_02float (cieView, adap, begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, sk, execsharp, d, rtt); delete cieView; } diff --git a/rtengine/simpleprocess.cc b/rtengine/simpleprocess.cc index caeb60db4..a91378d23 100644 --- a/rtengine/simpleprocess.cc +++ b/rtengine/simpleprocess.cc @@ -2173,18 +2173,18 @@ private: if (params.sharpening.enabled) { if (settings->ciecamfloat) { float d; - ipf.ciecam_02float (cieView, float (adap), begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, d, 1, 1); + ipf.ciecam_02float (cieView, float(adap), begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, d, 1); } else { double dd; - ipf.ciecam_02 (cieView, adap, begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, dd, 1, 1); + ipf.ciecam_02 (cieView, adap, begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, dd, 1); } } else { if (settings->ciecamfloat) { float d; - ipf.ciecam_02float (cieView, float (adap), begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, d, 1, 1); + ipf.ciecam_02float (cieView, float(adap), begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, d, 1); } else { double dd; - ipf.ciecam_02 (cieView, adap, begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, dd, 1, 1); + ipf.ciecam_02 (cieView, adap, begh, endh, 1, 2, labView, ¶ms, customColCurve1, customColCurve2, customColCurve3, dummy, dummy, CAMBrightCurveJ, CAMBrightCurveQ, CAMMean, 5, 1, true, dd, 1); } } } diff --git a/rtgui/editorpanel.cc b/rtgui/editorpanel.cc index 389c16a4e..8d2d6251a 100644 --- a/rtgui/editorpanel.cc +++ b/rtgui/editorpanel.cc @@ -1901,10 +1901,10 @@ bool EditorPanel::saveImmediately(const Glib::ustring &filename, const SaveForma { rtengine::procparams::ProcParams pparams; ipc->getParams (&pparams); - std::unique_ptr<rtengine::ProcessingJob> job(rtengine::ProcessingJob::create (ipc->getInitialImage(), pparams)); + rtengine::ProcessingJob *job = rtengine::ProcessingJob::create(ipc->getInitialImage(), pparams); // save immediately - rtengine::IImage16 *img = rtengine::processImage(job.get(), err, nullptr, options.tunnelMetaData, false); + rtengine::IImage16 *img = rtengine::processImage(job, err, nullptr, options.tunnelMetaData, false); int err = 0; if (sf.format == "tif") { diff --git a/rtgui/main.cc b/rtgui/main.cc index b987c2e21..1ccb388ac 100644 --- a/rtgui/main.cc +++ b/rtgui/main.cc @@ -255,6 +255,12 @@ RTWindow *create_rt_window() Gtk::Settings::get_for_screen(screen)->property_gtk_theme_name() = "Adwaita"; Gtk::Settings::get_for_screen(screen)->property_gtk_application_prefer_dark_theme() = true; +#if defined(__APPLE__) + // This will force screen resolution regarding font, but I don't think it's compliant with Gtk guidelines... + // Do not confuse with screen scaling, where everything is scaled up ! + screen->set_resolution (96.); +#endif + Glib::RefPtr<Glib::Regex> regex = Glib::Regex::create(THEMEREGEXSTR, Glib::RegexCompileFlags::REGEX_CASELESS); Glib::ustring filename = Glib::build_filename(argv0, "themes", options.theme + ".css"); if (!regex->match(options.theme + ".css") || !Glib::file_test(filename, Glib::FILE_TEST_EXISTS)) { @@ -411,6 +417,19 @@ private: RTWindow *rtWindow; }; +void show_gimp_plugin_info_dialog(Gtk::Window *parent) +{ + if (options.gimpPluginShowInfoDialog) { + Gtk::MessageDialog info(*parent, M("GIMP_PLUGIN_INFO"), false, Gtk::MESSAGE_INFO, Gtk::BUTTONS_OK, true); + Gtk::Box *box = info.get_message_area(); + Gtk::CheckButton dontshowagain(M("DONT_SHOW_AGAIN")); + dontshowagain.show(); + box->pack_start(dontshowagain); + info.run(); + options.gimpPluginShowInfoDialog = !dontshowagain.get_active(); + } +} + } // namespace @@ -597,6 +616,9 @@ int main (int argc, char **argv) Gtk::Main m(&argc, &argv); gdk_threads_enter(); const std::unique_ptr<RTWindow> rtWindow(create_rt_window()); + if (gimpPlugin) { + show_gimp_plugin_info_dialog(rtWindow.get()); + } m.run(*rtWindow); gdk_threads_leave(); diff --git a/rtgui/options.cc b/rtgui/options.cc index 2b1e5a033..b4f0463cd 100644 --- a/rtgui/options.cc +++ b/rtgui/options.cc @@ -519,117 +519,117 @@ void Options::setDefaults () // Reminder: 0 = SET mode, 1 = ADD mode baBehav = { - 0, // ADDSET_TC_EXPCOMP - 0, // ADDSET_TC_BRIGHTNESS - 0, // ADDSET_TC_BLACKLEVEL - 0, // ADDSET_TC_CONTRAST - 0, // ADDSET_SH_HIGHLIGHTS - 0, // ADDSET_SH_SHADOWS - 0, // ADDSET_SH_LOCALCONTRAST - 0, // ADDSET_LC_BRIGHTNESS - 0, // ADDSET_LC_CONTRAST - 0, // ADDSET_SHARP_AMOUNT - 0, // ADDSET_WB_TEMPERATURE - 0, // ADDSET_WB_GREEN - 0, // ADDSET_ROTATE_DEGREE - 0, // ADDSET_DIST_AMOUNT - 0, // ADDSET_PERSPECTIVE - 0, // ADDSET_CA - 0, // ADDSET_VIGN_AMOUNT - 0, // ADDSET_VIGN_RADIUS - 0, // ADDSET_VIGN_STRENGTH - 0, // ADDSET_VIGN_CENTER - 0, // ADDSET_LC_CHROMATICITY - 0, // ADDSET_TC_SATURATION - 0, // ADDSET_TC_HLCOMPAMOUNT - 0, // ADDSET_TC_HLCOMPTHRESH - 0, // ADDSET_TC_SHCOMP - 0, // ADDSET_DIRPYREQ - 0, // ADDSET_DIRPYRDN_LUMA - 0, // ADDSET_DIRPYRDN_LUDET - 0, // ADDSET_DIRPYRDN_CHROMA - 0, // ADDSET_DIRPYRDN_CHROMARED - 0, // ADDSET_DIRPYRDN_CHROMABLUE - 0, // ADDSET_DIRPYRDN_GAMMA - 0, // ADDSET_CHMIXER - 0, // ADDSET_PREPROCESS_GREENEQUIL - 0, // ADDSET_PREPROCESS_LINEDENOISE - 0, // ADDSET_RAWCACORR - 0, // ADDSET_RAWEXPOS_LINEAR - 0, // ADDSET_RAWEXPOS_PRESER - 0, // ADDSET_RAWEXPOS_BLACKS - 0, // ADDSET_SHARPENEDGE_AMOUNT - 0, // ADDSET_SHARPENMICRO_AMOUNT - 0, // ADDSET_SHARPENEDGE_PASS - 0, // ADDSET_SHARPENMICRO_UNIFORMITY - 0, // ADDSET_VIBRANCE_PASTELS - 0, // ADDSET_VIBRANCE_SATURATED - 0, // ADDSET_FREE_OUPUT_GAMMA - 0, // ADDSET_FREE_OUTPUT_SLOPE - 0, // ADDSET_CAT_DEGREE - 0, // ADDSET_CAT_ADAPSCEN - 0, // ADDSET_CAT_ADAPLUM - 0, // ADDSET_CAT_LIGHT - 0, // ADDSET_CAT_RSTPRO - 0, // ADDSET_CAT_BADPIX - 0, // ADDSET_CAT_JLIGHT - 0, // ADDSET_CAT_CHROMA - 0, // ADDSET_CAT_CONTRAST - 0, // ADDSET_CAT_CHROMA_S - 0, // ADDSET_CAT_CHROMA_M - 0, // ADDSET_CAT_HUE - 0, // ADDSET_CAT_BADPIX - 0, // ADDSET_WB_EQUAL - 0, // ADDSET_GRADIENT_DEGREE - 0, // ADDSET_GRADIENT_FEATHER - 0, // ADDSET_GRADIENT_STRENGTH - 0, // ADDSET_GRADIENT_CENTER - 0, // ADDSET_PCVIGNETTE_STRENGTH - 0, // ADDSET_PCVIGNETTE_FEATHER - 0, // ADDSET_PCVIGNETTE_ROUNDNESS - 0, // ADDSET_BLACKWHITE_HUES - 0, // ADDSET_BLACKWHITE_GAMMA - 0, // ADDSET_DIRPYREQ_THRESHOLD - 0, // ADDSET_DIRPYREQ_SKINPROTECT - 0, // ADDSET_COLORTONING_SPLIT - 0, // ADDSET_COLORTONING_SATTHRESHOLD - 0, // ADDSET_COLORTONING_SATOPACITY - 0, // ADDSET_COLORTONING_BALANCE - 0, // ADDSET_COLORTONING_STRENGTH - 0, // ADDSET_DIRPYRDN_PASSES - 0, // ADDSET_RAWFFCLIPCONTROL - 0, // ADDSET_FILMSIMULATION_STRENGTH - 0, // ADDSET_WA - 0, // ADDSET_WA_SKINPROTECT - 0, // ADDSET_WA_THRESHOLD2 - 0, // ADDSET_WA_THRR - 0, // ADDSET_WA_THRRH - 0, // ADDSET_WA_THRESHOLD - 0, // ADDSET_WA_THRESHOLD2 - 0, // ADDSET_WA_CHRO - 0, // ADDSET_WA_CHROMA - 0, // ADDSET_WA_CONTRAST - 0, // ADDSET_WA_RESCON - 0, // ADDSET_WA_RESCONH - 0, // ADDSET_WA_RESCHRO - 0, // ADDSET_WA_SKYPROTECT - 0, // ADDSET_WA_EDGRAD - 0, // ADDSET_WA_EDGVAL - 0, // ADDSET_WA_STRENGTH - 0, // ADDSET_WA_EDGEDETECT - 0, // ADDSET_WA_EDGEDETECTTHR - 0, // ADDSET_WA_EDGEDETECTTHR2 - 0, // ADDSET_WA_TMRS - 0, // ADDSET_WA_GAMMA - 0, // ADDSET_RETI_STR - 0, // ADDSET_RETI_NEIGH - 0, // ADDSET_RETI_LIMD - 0, // ADDSET_RETI_GAIN - 0, // ADDSET_RETI_OFFS - 0, // ADDSET_RETI_VART - 0, // ADDSET_RETI_GAM - 0, // ADDSET_RETI_SLO - 0, // ADDSET_WB_TEMPBIAS + 1, // ADDSET_TC_EXPCOMP + 1, // ADDSET_TC_BRIGHTNESS + 1, // ADDSET_TC_BLACKLEVEL + 1, // ADDSET_TC_CONTRAST + 1, // ADDSET_SH_HIGHLIGHTS + 1, // ADDSET_SH_SHADOWS + 1, // ADDSET_SH_LOCALCONTRAST + 1, // ADDSET_LC_BRIGHTNESS + 1, // ADDSET_LC_CONTRAST + 1, // ADDSET_SHARP_AMOUNT + 1, // ADDSET_WB_TEMPERATURE + 1, // ADDSET_WB_GREEN + 1, // ADDSET_ROTATE_DEGREE + 1, // ADDSET_DIST_AMOUNT + 1, // ADDSET_PERSPECTIVE + 1, // ADDSET_CA + 1, // ADDSET_VIGN_AMOUNT + 1, // ADDSET_VIGN_RADIUS + 1, // ADDSET_VIGN_STRENGTH + 1, // ADDSET_VIGN_CENTER + 1, // ADDSET_LC_CHROMATICITY + 1, // ADDSET_TC_SATURATION + 1, // ADDSET_TC_HLCOMPAMOUNT + 1, // ADDSET_TC_HLCOMPTHRESH + 1, // ADDSET_TC_SHCOMP + 1, // ADDSET_DIRPYREQ + 1, // ADDSET_DIRPYRDN_LUMA + 1, // ADDSET_DIRPYRDN_LUDET + 1, // ADDSET_DIRPYRDN_CHROMA + 1, // ADDSET_DIRPYRDN_CHROMARED + 1, // ADDSET_DIRPYRDN_CHROMABLUE + 1, // ADDSET_DIRPYRDN_GAMMA + 1, // ADDSET_CHMIXER + 1, // ADDSET_PREPROCESS_GREENEQUIL + 1, // ADDSET_PREPROCESS_LINEDENOISE + 1, // ADDSET_RAWCACORR + 1, // ADDSET_RAWEXPOS_LINEAR + 1, // ADDSET_RAWEXPOS_PRESER + 1, // ADDSET_RAWEXPOS_BLACKS + 1, // ADDSET_SHARPENEDGE_AMOUNT + 1, // ADDSET_SHARPENMICRO_AMOUNT + 1, // ADDSET_SHARPENEDGE_PASS + 1, // ADDSET_SHARPENMICRO_UNIFORMITY + 1, // ADDSET_VIBRANCE_PASTELS + 1, // ADDSET_VIBRANCE_SATURATED + 1, // ADDSET_FREE_OUPUT_GAMMA + 1, // ADDSET_FREE_OUTPUT_SLOPE + 1, // ADDSET_CAT_DEGREE + 1, // ADDSET_CAT_ADAPSCEN + 1, // ADDSET_CAT_ADAPLUM + 1, // ADDSET_CAT_LIGHT + 1, // ADDSET_CAT_RSTPRO + 1, // ADDSET_CAT_BADPIX + 1, // ADDSET_CAT_JLIGHT + 1, // ADDSET_CAT_CHROMA + 1, // ADDSET_CAT_CONTRAST + 1, // ADDSET_CAT_CHROMA_S + 1, // ADDSET_CAT_CHROMA_M + 1, // ADDSET_CAT_HUE + 1, // ADDSET_CAT_BADPIX + 1, // ADDSET_WB_EQUAL + 1, // ADDSET_GRADIENT_DEGREE + 1, // ADDSET_GRADIENT_FEATHER + 1, // ADDSET_GRADIENT_STRENGTH + 1, // ADDSET_GRADIENT_CENTER + 1, // ADDSET_PCVIGNETTE_STRENGTH + 1, // ADDSET_PCVIGNETTE_FEATHER + 1, // ADDSET_PCVIGNETTE_ROUNDNESS + 1, // ADDSET_BLACKWHITE_HUES + 1, // ADDSET_BLACKWHITE_GAMMA + 1, // ADDSET_DIRPYREQ_THRESHOLD + 1, // ADDSET_DIRPYREQ_SKINPROTECT + 1, // ADDSET_COLORTONING_SPLIT + 1, // ADDSET_COLORTONING_SATTHRESHOLD + 1, // ADDSET_COLORTONING_SATOPACITY + 1, // ADDSET_COLORTONING_BALANCE + 1, // ADDSET_COLORTONING_STRENGTH + 1, // ADDSET_DIRPYRDN_PASSES + 1, // ADDSET_RAWFFCLIPCONTROL + 1, // ADDSET_FILMSIMULATION_STRENGTH + 1, // ADDSET_WA + 1, // ADDSET_WA_SKINPROTECT + 1, // ADDSET_WA_THRESHOLD2 + 1, // ADDSET_WA_THRR + 1, // ADDSET_WA_THRRH + 1, // ADDSET_WA_THRESHOLD + 1, // ADDSET_WA_THRESHOLD2 + 1, // ADDSET_WA_CHRO + 1, // ADDSET_WA_CHROMA + 1, // ADDSET_WA_CONTRAST + 1, // ADDSET_WA_RESCON + 1, // ADDSET_WA_RESCONH + 1, // ADDSET_WA_RESCHRO + 1, // ADDSET_WA_SKYPROTECT + 1, // ADDSET_WA_EDGRAD + 1, // ADDSET_WA_EDGVAL + 1, // ADDSET_WA_STRENGTH + 1, // ADDSET_WA_EDGEDETECT + 1, // ADDSET_WA_EDGEDETECTTHR + 1, // ADDSET_WA_EDGEDETECTTHR2 + 1, // ADDSET_WA_TMRS + 1, // ADDSET_WA_GAMMA + 1, // ADDSET_RETI_STR + 1, // ADDSET_RETI_NEIGH + 1, // ADDSET_RETI_LIMD + 1, // ADDSET_RETI_GAIN + 1, // ADDSET_RETI_OFFS + 1, // ADDSET_RETI_VART + 1, // ADDSET_RETI_GAM + 1, // ADDSET_RETI_SLO + 1, // ADDSET_WB_TEMPBIAS }; rtSettings.darkFramesPath = ""; @@ -741,6 +741,7 @@ void Options::setDefaults () lastProfilingReferenceDir = ""; lastBWCurvesDir = ""; lastLensProfileDir = ""; + gimpPluginShowInfoDialog = true; maxRecentFolders = 15; } @@ -1905,6 +1906,9 @@ int Options::readFromFile (Glib::ustring fname) safeDirGet (keyFile, "Dialogs", "LastVibranceCurvesDir", lastVibranceCurvesDir); safeDirGet (keyFile, "Dialogs", "LastProfilingReferenceDir", lastProfilingReferenceDir); safeDirGet (keyFile, "Dialogs", "LastLensProfileDir", lastLensProfileDir); + if (keyFile.has_key ("Dialogs", "GimpPluginShowInfoDialog")) { + gimpPluginShowInfoDialog = keyFile.get_boolean("Dialogs", "GimpPluginShowInfoDialog"); + } } // -------------------------------------------------------------------------------------------------------- @@ -2281,6 +2285,7 @@ int Options::saveToFile (Glib::ustring fname) keyFile.set_string ("Dialogs", "LastVibranceCurvesDir", lastVibranceCurvesDir); keyFile.set_string ("Dialogs", "LastProfilingReferenceDir", lastProfilingReferenceDir); keyFile.set_string ("Dialogs", "LastLensProfileDir", lastLensProfileDir); + keyFile.set_boolean("Dialogs", "GimpPluginShowInfoDialog", gimpPluginShowInfoDialog); keyData = keyFile.to_data (); diff --git a/rtgui/options.h b/rtgui/options.h index 4b31b7c8b..00e8bb07d 100644 --- a/rtgui/options.h +++ b/rtgui/options.h @@ -320,6 +320,7 @@ public: Glib::ustring lastProfilingReferenceDir; Glib::ustring lastBWCurvesDir; Glib::ustring lastLensProfileDir; + bool gimpPluginShowInfoDialog; size_t maxRecentFolders; // max. number of recent folders stored in options file std::vector<Glib::ustring> recentFolders; // List containing all recent folders diff --git a/rtgui/preferences.cc b/rtgui/preferences.cc index c305cf7da..343f751b3 100644 --- a/rtgui/preferences.cc +++ b/rtgui/preferences.cc @@ -2091,16 +2091,15 @@ void Preferences::fillPreferences () addc.block (true); setc.block (true); - if (moptions.baBehav.size() == ADDSET_PARAM_NUM) { - for (size_t i = 0; i < moptions.baBehav.size(); i++) - for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) - for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) - if (adjs->get_value (behavColumns.addsetid) == (int)i) { - adjs->set_value (behavColumns.badd, moptions.baBehav[i] == 1); - adjs->set_value (behavColumns.bset, moptions.baBehav[i] != 1); - break; - } - } + moptions.baBehav.resize (ADDSET_PARAM_NUM); + for (size_t i = 0; i < moptions.baBehav.size(); i++) + for (Gtk::TreeIter sections = behModel->children().begin(); sections != behModel->children().end(); sections++) + for (Gtk::TreeIter adjs = sections->children().begin(); adjs != sections->children().end(); adjs++) + if (adjs->get_value (behavColumns.addsetid) == (int)i) { + adjs->set_value (behavColumns.badd, moptions.baBehav[i] == 1); + adjs->set_value (behavColumns.bset, moptions.baBehav[i] != 1); + break; + } addc.block (false); setc.block (false); diff --git a/rtgui/previewwindow.cc b/rtgui/previewwindow.cc index 66f49f61e..015c30d4c 100644 --- a/rtgui/previewwindow.cc +++ b/rtgui/previewwindow.cc @@ -211,16 +211,15 @@ bool PreviewWindow::on_motion_notify_event (GdkEventMotion* event) int x, y, w, h; getObservedFrameArea (x, y, w, h); if (x>imgX || y>imgY || w < imgW || h < imgH) { - bool inside = event->x > x - 6 && event->x < x + w - 1 + 6 && event->y > y - 6 && event->y < y + h - 1 + 6; - bool moreInside = event->x > x + 6 && event->x < x + w - 1 - 6 && event->y > y + 6 && event->y < y + h - 1 - 6; + bool inside = event->x > x - 6 && event->x < x + w - 1 + 6 && event->y > y - 6 && event->y < y + h - 1 + 6; CursorShape newType = cursor_type; if (isMoving) { - mainCropWin->remoteMove ((event->x - press_x) / zoom, (event->y - press_y) / zoom); + mainCropWin->remoteMove ((int)((event->x - (double)press_x) / zoom), (int)((event->y - (double)press_y) / zoom)); press_x = event->x; press_y = event->y; - } else if (inside && !moreInside) { + } else if (inside) { newType = CSClosedHand; } else { newType = CSArrow; @@ -247,18 +246,10 @@ bool PreviewWindow::on_button_press_event (GdkEventButton* event) if (x>imgX || y>imgY || w < imgW || h < imgH) { if (!isMoving) { - bool inside = event->x > x - 6 && event->x < x + w - 1 + 6 && event->y > y - 6 && event->y < y + h - 1 + 6; - bool moreInside = event->x > x + 6 && event->x < x + w - 1 - 6 && event->y > y + 6 && event->y < y + h - 1 - 6; isMoving = true; - if (!inside || moreInside) { - mainCropWin->remoteMove ((event->x - (x + w / 2)) / zoom, (event->y - (y + h / 2)) / zoom); - press_x = x + w / 2; - press_y = y + h / 2; - } else { - press_x = event->x; - press_y = event->y; - } + press_x = event->x; + press_y = event->y; if (cursor_type != CSClosedHand) { cursor_type = CSClosedHand; diff --git a/tools/gimp-plugin/file-rawtherapee.c b/tools/gimp-plugin/file-rawtherapee.c index 9df3f17da..d78c30a10 100644 --- a/tools/gimp-plugin/file-rawtherapee.c +++ b/tools/gimp-plugin/file-rawtherapee.c @@ -109,14 +109,13 @@ init (void) NULL, NULL)) { - char *rtversion = NULL; + int rtmajor = 0, rtminor = 0; if (sscanf (rawtherapee_stdout, - "RawTherapee, version %ms", - &rtversion) == 1) + "RawTherapee, version %d.%d", + &rtmajor, &rtminor) == 2 && rtmajor >= 5 && rtminor >= 2) { have_rawtherapee = TRUE; - free (rtversion); } g_free (rawtherapee_stdout); diff --git a/tools/osx/macosx_bundle.sh b/tools/osx/macosx_bundle.sh index c819fae76..40cfe195f 100644 --- a/tools/osx/macosx_bundle.sh +++ b/tools/osx/macosx_bundle.sh @@ -169,6 +169,7 @@ done msg "Registering @loader_path into the executable:" echo " install_name_tool -add_rpath @loader_path/../Frameworks '${EXECUTABLE}'" | bash -v +echo " install_name_tool -add_rpath @loader_path/../Frameworks '${EXECUTABLE}-cli'" | bash -v msg "Installing required application bundle files:" PROJECT_SOURCE_DATA_DIR="${PROJECT_SOURCE_DIR}/tools/osx"