Jump to content
You must now use your email address to sign in [click for more info] ×

Recommended Posts

Hi,

What technique is used to support multiple languages in Affinity Photo ? Sometimes, it’s necessary to fix some translation errors without having to wait for the next release (which will not necessarily fix the error). Usually, skilled users can fix the problem by editing string files or by modifying the resources in an executable or a DLL. AP seems to use a different technique that I could not identify but that seems to be used in other commercial applications.

For example in Lightroom, all the localization can be made by editing string files. It’s rather easy. Some information about the system used by AP would be welcome.

Thanks.

 

 

--Patrick
Hamburg ist der wahre Grund
warum Kompassnadeln nach Norden zeigen.

Link to comment
Share on other sites

Yes, my opinion is that updates should be separated into program itself and translation file.
So Serif can provide small fix for translation often separately.
Currently there are many translation errors but update cycle is not so often so it's kinda irritating.
 

Link to comment
Share on other sites

Actually, some translated strings are stored in sub-folders of C:\Program Files\Affinity\Affinity Photo\Resources\Affinity Photo. Unfortunately, not all. For example, the translations for the blend modes are not there. This is very strange. I looked at the various resources compiled into binaries (exe+DLLs), no strings there.

I also discovered other strange things :

- The .dic files used by the program are the same those used by other applications like the CEWE book editing program, Photoshop, Lightroom or Bridge. Maybe are they used only for spell checking ?

- Strangely enough, I could find in the Lightroom string files a sequence of translations that exactly reflects the translation in AP for blend modes. In the file for french, for example :

"$$$/Menu/TransferMode/ColorDodge=Densité couleur -"
"$$$/Menu/TransferMode/Darken=Obscurcir"
"$$$/Menu/TransferMode/DarkerColor=Couleur plus foncée"
"$$$/Menu/TransferMode/HardLight=Lumière crue"
"$$$/Menu/TransferMode/HardMix=Mélange maximal"
"$$$/Menu/TransferMode/Lighten=Eclaircir"
"$$$/Menu/TransferMode/LighterColor=Couleur plus claire"
"$$$/Menu/TransferMode/LinearBurn=Densité linéaire +"
"$$$/Menu/TransferMode/LinearDodge=Densité linéaire - (Ajout)"
"$$$/Menu/TransferMode/LinearLight=Lumière linéaire"
"$$$/Menu/TransferMode/Multiply=Produit"
"$$$/Menu/TransferMode/Overlay=Incrustation"
"$$$/Menu/TransferMode/PinLight=Lumière ponctuelle"
"$$$/Menu/TransferMode/Screen=Ecran"
"$$$/Menu/TransferMode/SoftLight=Lumière tamisée"
"$$$/Menu/TransferMode/VividLight=Lumière vive"

This is exactly the same translation as in AP (note that Lightroom doesn't use blend modes since it has no layers - so, I'm wondering what are these strings for in LR but that's not the problem).

--Patrick
Hamburg ist der wahre Grund
warum Kompassnadeln nach Norden zeigen.

Link to comment
Share on other sites

OK. Got it. The translations for Affinity Photo are stored in C:\Program Files\Affinity\Affinity Photo\xx\Serif.Interop.Persona.resources.dll , xx being the relevant language subfolder. However, they are not stored there as standard string resources but as a binary stream. This makes impossible to edit them in a classical way (that is, with a resource editor without affecting the program's behavior).

Corrections could probably be made with an hex editor but care should be taken to use the same string length when editing the translation. Moreover, this appears to be UTF-8, so accented characters will be a problem. Minor fixes could be made this way but unfortunately, more important changes are practically not possible without recompiling the DLL. If the DLL CRC is checked when loaded (which is likely to happen with .Net stuff), any change is impossible. The DLL should be backed up before any attempt to modify it.

Not making the translation strings accessible to the user is a rather unfortunate decision, especially when corrections are made at a very slow rate.

 

--Patrick
Hamburg ist der wahre Grund
warum Kompassnadeln nach Norden zeigen.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use | Privacy Policy | Guidelines | We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.