You are here

[Fixed] Inkscape Portable PortableApps.com Font handling

19 posts / 0 new
Last post
Gord Caswell
Gord Caswell's picture
Offline
Last seen: 1 month 2 weeks ago
DeveloperModerator
Joined: 2008-07-24 18:46
[Fixed] Inkscape Portable PortableApps.com Font handling

Inkscape Portable currently does not recognize font handling as provided by the PortableApps.com Platform.

This will be fixed in the next release.

In the meantime, do the following to handle it:

Save a copy of X:\PortableApps\InkscapePortable\App\Inkscape\etc\fonts\conf.d\51-local.conf as X:\PortableApps\InkscapePortable\Data\01-portableapps.conf. Following this, add the line X:\PortableApps\PortableApps.com\Data\Fonts immediately after <fontconfig>, with X being replaced with your drive letter.

Following this, add the following to X:\PortableApps\InkscapePortable\App\AppInfo\Launcher\InkscapePortable.ini:

In the [FilesMove] section, add
01-local.conf=%PAL:AppDir%\App\Inkscape\etc\fonts\conf.d
and add the following at the end of the file:

[FileWrite8]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=%PAL:LastDrive%%PAL:LastPackagePartialDir%\
Replace=%PAL:Drive%%PAL:PackagePartialDir%\

[FileWrite9]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=%PAL:LastPortableAppsBaseDir%\
Replace=%PAL:PortableAppsBaseDir%\

[FileWrite10]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=%PAL:LastDrive%\
Replace=%PAL:Drive%\
SidCharming
Offline
Last seen: 7 years 1 month ago
Joined: 2017-08-24 19:22
Question...

I am not following your last portion of "Save a copy of " where you state "Immediately after (space), With X being replaced..." Not sure where that *is* directing me to add the line.

Here is the content of my 51-local.conf file

<?xml version="1.0"??>local.conf

Thanks for your help! Much appreciated and also thank you for your time!
Rob

Gord Caswell
Gord Caswell's picture
Offline
Last seen: 1 month 2 weeks ago
DeveloperModerator
Joined: 2008-07-24 18:46
Didn't display

I apologize, evidently that line didn't display properly. I've now fixed it.

SidCharming
Offline
Last seen: 7 years 1 month ago
Joined: 2017-08-24 19:22
Update (Working)

I ended up editing my 51-local.conf file as it sits without copying it to another location. I altered it this way... I added my local directory below the local.confC:\Users\user\Documents\PortableApps\PortableApps.com\Data\Fonts

And this worked for me... I tried the copy the conf file and updating with my c:\drive info... it didn't work for me (Windows 10). Unless there is a major reason this shouldn't be working, I'll keep this as the new fonts are showing up and functional in InkScape.

THANKS for the detailed help Gord!!
Rob

SidCharming
Offline
Last seen: 7 years 1 month ago
Joined: 2017-08-24 19:22
Something change?

I had this working and now it isn't working. Has Portable Apps changed or Inkscape? ** honestly I think one of these apps went through an update which I didn't think it would effect the font function**

Gord Caswell
Gord Caswell's picture
Offline
Last seen: 1 month 2 weeks ago
DeveloperModerator
Joined: 2008-07-24 18:46
Not yet supported

This is not yet supported in Inkscape Portable. It will be supported upon the release of 0.92.3.

Until then, you'll need to follow the instructions above. Note that the edits you made originally would not have been saved, as this isn't supported yet, so the 0.92.2 release did not know about them.

SidCharming
Offline
Last seen: 7 years 1 month ago
Joined: 2017-08-24 19:22
Thanks Gord for the response

Thanks Gord for the response and update! Smile

John T. Haller
John T. Haller's picture
Online
Last seen: 52 min 44 sec ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Fixed in 0.92.3

This is fixed in Inkscape Portable 0.92.3

Sometimes, the impossible can become possible, if you're awesome!

Yeet
Offline
Last seen: 6 years 6 months ago
Joined: 2018-05-30 13:06
So is 0.92.3 supposed to have

So is 0.92.3 supposed to have fonts work by default? I'm running 0.92.3 on win7 and am still having issues. I cannot get fonts to load into inkscape portable on a fresh install, nor after the workaround described above.

Gord Caswell
Gord Caswell's picture
Offline
Last seen: 1 month 2 weeks ago
DeveloperModerator
Joined: 2008-07-24 18:46
Yes

Provided that you're using fonts through the platform as indicated here, Inkscape Portable will see those fonts and add them to the list of available fonts to use.

If this is not working for you, please start a new topic describing exactly what is occurring, along with system details (OS version, 32 vs 64-bit, install path, new vs upgrade, etc).

yclmichael
Offline
Last seen: 6 years 4 months ago
Joined: 2018-06-28 22:38
Hello Gord, I am now in the

Hello Gord, I am now in the same situation as Yeet was. I installed both PortableApps.com Platform 15.0.2 and Inkscape Portable 0.92.3 on Windows 7 64bit [Build: 7601]. I put my OTF files into the PortableApps' Fonts folder and my Photoshop could show them correctly. However, the Inkscape could not load the OTF files. I followed the above instructions, still could not make it.

For your information, both PortableApps.com Platform and Inkscape were fresh installs. The install path was "D:\Documents and Settings\Michael\PortableApps".

Your help is appreciated.

ypcyc
Offline
Last seen: 6 years 4 months ago
Joined: 2018-07-18 03:20
Yesterday I've spend all day

Yesterday I've spend all day trying to make fonts work with no luck! Today I made PortableApps fresh install and still nothing is working.
I'm on Win10 64bit.
1. Also I've discovered that latest Inkscape Portable version config ( 01-portableapps.conf ) points to different Font folder:
C:\Users\XXX\PortableApps\InkscapePortable\Data\Fonts
not to
C:\Users\XXX\PortableApps\PortableApps.com\Data\Fonts
2. location to fonts folder in 01-portableapps.conf is also not as described above: not added straight after line, but after section.

I've tried to make changes as it was described in header, but that didn't solve anything. Hope it will be fixed.

ypcyc
Offline
Last seen: 6 years 4 months ago
Joined: 2018-07-18 03:20
Finally I was able to solve

Finally I was able to solve the issue!
This is my solution:
1. Go to C:\Users\XXX\PortableApps\InkscapePortable\App\Inkscape\etc\fonts Folder
2. Open fonts.conf file in Editor
3. Find line with "<dir>WINDOWSFONTDIR</dir>"
3. Add new line below with any custom font folder location.
(I used C:\Users\XXX\PortableApps\InkscapePortable\Data and copied my font files there)
<dir>C:\Users\XXX\PortableApps\InkscapePortable\Data</dir>
4. Save. Restart Inkscape, Enjoy!

yclmichael
Offline
Last seen: 6 years 4 months ago
Joined: 2018-06-28 22:38
It works!

Wow! I just tried your method and now it works like charm!
Thank you so much!

nnewton
Offline
Last seen: 2 years 8 months ago
Joined: 2007-07-06 02:14
Solution for v1.0.1

Apparently in v1.0.1 there are options for loading fonts from "Inkscape's fonts directory" and "User's fonts directory" (might be in previous versions too, I never checked). I didn't want to put fonts in Inkscape's font directory in App\Inkscape\share as they may be deleted in an upgrade. And I couldn't get it to load fonts from the user directory (Data\settings\fonts) either. I don't use the platform app so I didn't want them in the portableapps.com font folder.

I found that during startup, Inkscape tries to read a Data\settings\.fonts.conf file, if you create this file and put the below XML in it, then it will load the fonts from Data\settings\fonts. To make this file in Windows, name it with a leading space character, i.e.: ".fonts.conf". Windows will take out the space and leave the dot.

Looks like you'll have to do a search and replace on this to get the <, > and " symbols back (&lt; = <, &lt; = >, &quot; = "), this forum does not play well with XML.

&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;!DOCTYPE fontconfig SYSTEM &quot;fonts.dtd&quot;&gt;
&lt;fontconfig&gt;
  &lt;its:rules xmlns:its=&quot;http://www.w3.org/2005/11/its&quot; version=&quot;1.0&quot;&gt;
    &lt;its:translateRule translate=&quot;no&quot; selector=&quot;/fontconfig/*[not(self::description)]&quot;/&gt;
  &lt;/its:rules&gt;
  &lt;!-- Additional font directories to load --&gt;
  &lt;dir&gt;Data\settings\fonts&lt;/dir&gt;
&lt;/fontconfig&gt;

There's no variable paths in it either, so you don't need rewrite lines in the launcher.ini.

John T. Haller
John T. Haller's picture
Online
Last seen: 52 min 44 sec ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Data\Fonts

It's set to load from Data\Fonts by default, not Data\settings\Fonts. The 01-portableapps.conf handles this and the launcher moves it around and portablizes it. If you somehow altered this, you can reset it by copying 01-portableapps.conf from InkscapePortable\App\DefaultData to InkscapePortable\Data while the app is closed.

Sometimes, the impossible can become possible, if you're awesome!

nnewton
Offline
Last seen: 2 years 8 months ago
Joined: 2007-07-06 02:14
Still no-go

I just copied my fonts into Data\Fonts and copied the 01-portableapps.conf file into Data\, then renamed my previously created conf file so Inkscape wouldn't use it. Still no good.

I can see that the path in the 01-portableapps.conf file is being modified with the absolute path to my Data\Fonts but they still don't appear in the app.

I even re-downloaded the InkscapePortable installer and did an install into a new directory, ran it once, then closed it. I see that it has created more directories in Data\settings than I have in my existing InkscapePortable (I've been using it a long time, I think I might have copied my settings over from a portable zip version from the Inkscape site) and the 01-portableapps.conf file is there. I then copied my fonts to Data\Fonts (with a capital F as well, on the slight chance that it would matter), Inkscape still didn't load them.

Oh well, my way works, just in case anyone has the same issues I was having, it's here for posterity.

John T. Haller
John T. Haller's picture
Online
Last seen: 52 min 44 sec ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Updated Fix for 1.1

I have an updated fix I'm going to implement for current Inkscape Portable. To test, please open up your InkspacePortable.ini file within the InkspacePortable\App\AppInfo\Launcher directory and replace with this:

[Launch]
ProgramExecutable=Inkscape\bin\inkscape.exe
DirectoryMoveOK=yes
SupportsUNC=yes
MinOS=7

[Activate]
Ghostscript=find
XML=true

[Environment]
INKSCAPE_PROFILE_DIR=%PAL:DataDir%\settings
HOME=%PAL:DataDir%\settings
APPDATA=%PAL:DataDir%\settings
PYTHONPATH=%PAL:AppDir%\Inkscape\lib\python3.8
PATH=%PATH%

[DirectoriesMove]
fontconfig=%LOCALAPPDATA%\fontconfig

[FilesMove]
recently-used.xbel=%LOCALAPPDATA%
01-portableapps.conf=%PAL:AppDir%\Inkscape\etc\fonts\conf.d

[Language]
Base=%PortableApps.comLocaleglibc%
CheckIfExists=%PAL:AppDir%\Inkscape\share\locale\%PAL:LanguageCustom%\*.*
DefaultIfNotExists=en_US

[LanguageFile]
Type=XML attribute
File=%PAL:DataDir%\settings\preferences.xml
XPath=/inkscape/group[@id="ui"]
Attribute=language

[FileWrite1]
Type=XML attribute
File=%PAL:DataDir%\settings\preferences.xml
XPath=/inkscape/group[@id="ui"]
Attribute=language
Value=%PAL:LanguageCustom%

[FileWrite2]
Type=Replace
File=%PAL:DataDir%\settings\preferences.xml
Find=%PAL:LastDrive%%PAL:LastPackagePartialDir%\
Replace=%PAL:Drive%%PAL:PackagePartialDir%\

[FileWrite3]
Type=Replace
File=%PAL:DataDir%\settings\preferences.xml
Find=%PAL:LastPortableAppsBaseDir%\
Replace=%PAL:PortableAppsBaseDir%\

[FileWrite4]
Type=Replace
File=%PAL:DataDir%\settings\preferences.xml
Find=%PAL:LastDrive%\
Replace=%PAL:Drive%\

[FileWrite5]
Type=Replace
File=%PAL:DataDir%\settings\.recently-used.xbel
Find=file:///%PAL:LastDrive%%PAL:LastPackagePartialDir:ForwardSlash%/
Replace=file:///%PAL:Drive%%PAL:PackagePartialDir:ForwardSlash%/

[FileWrite6]
Type=Replace
File=%PAL:DataDir%\settings\.recently-used.xbel
Find=file:///%PAL:LastPortableAppsBaseDir:ForwardSlash%/
Replace=file:///%PAL:PortableAppsBaseDir:ForwardSlash%/

[FileWrite7]
Type=Replace
File=%PAL:DataDir%\settings\.recently-used.xbel
Find=file:///%PAL:LastDrive%/
Replace=file:///%PAL:Drive%/

[FileWrite8]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=INITIALDATADIR
Replace=%PAL:DataDir%

[FileWrite9]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=INITIALPORTABLEAPPSDIR
Replace=%PAL:PortableAppsBaseDir%

[FileWrite10]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=%PAL:LastDrive%%PAL:LastPackagePartialDir%\
Replace=%PAL:Drive%%PAL:PackagePartialDir%\

[FileWrite11]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=%PAL:LastPortableAppsBaseDir%\
Replace=%PAL:PortableAppsBaseDir%\

[FileWrite12]
Type=Replace
File=%PAL:DataDir%\01-portableapps.conf
Find=%PAL:LastDrive%\
Replace=%PAL:Drive%\

Next, explore to InkscapePortable\App\DefaultData, open up the 01-portableapps.conf and replace with this:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <its:rules xmlns:its="http://www.w3.org/2005/11/its" version="1.0">
    <its:translateRule translate="no" selector="/fontconfig/*[not(self::description)]"/>
  </its:rules>

  <description>Load local customization file</description>
	<!-- Load local system customization file -->
  <dir>INITIALDATADIR\Fonts</dir>
  <dir>INITIALPORTABLEAPPSDIR\PortableApps\PortableApps.com\Data\Fonts</dir>
  <include ignore_missing="yes">local.conf</include>
</fontconfig>

Now copy that file to your InkscapePortable\Data directory and replace the existing one if there is one. This should allow both the PA.c\Data\Fonts folder to work as well as the InkscapePortable\Data\Fonts folder

Sometimes, the impossible can become possible, if you're awesome!

John T. Haller
John T. Haller's picture
Online
Last seen: 52 min 44 sec ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Fixed in 1.1.1

This is fixed in Inkscape Portable 1.1.1 released today

Sometimes, the impossible can become possible, if you're awesome!

Log in or register to post comments