-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
epstopdf embeds standard fonts within "only for me" installations, but it should not #393
Comments
MiKTeX sets the environment variable
( You can check it on your system by opening a Terminal window via MiKTeX console and running That said: your fix is already implemented... |
It ( Not sure what else I can provide to convince that issue exists. 😕 Please suggest. |
|
On my system, running
Please:
|
Here is everything recorded, step by step. It seems that Steps Recorder did not capture the output of
|
Do you have true Ghostscript installed on your system in |
No, I do not have another Ghostscript installed. By the way, since
|
I would agree on that if mgs had its own These are the facts:
Please, do not get me wrong. You are the maintainer and owner, and you will decide what to do. I am just afraid that some other peers will experience the same issue and start digging from scratch not knowing that issue has been discussed already. The use case (IEEE article) I mentioned here #386 (comment) was not mine but friends'. I started to investigate it (April 2019) because I could not believed "it works on my system but not on theirs". It ended with having 9 VMs in total combining various Win10 and MiKTeX installations. Hopefully someone else will see this issue (Open), and eventually help on it one day, with some proper? explanation and the fix proposal. Kind regards, Ivan |
On the other hand,
could make sense. |
|
Can you try it without the
|
You should note: by default Ghostscript does not embed standard fonts like Courier-Bold. That said, its totally fine that Courier-Bold is not embedded. |
I totally agree with that (I guess that used Check https://stackoverflow.com/a/41243959/9402145. (My comment there dates back in May when only #296 was being discussed; just neglect the part about 32-bit vs 64-bit.) Here we notice inconsistent behavior - can we resolve that?
I am in favor of embedding (and probably not the only one?) but I would be happy with any behavior if it is consistent. Nevertheless, one can (apparently) always force embedding this way I mean, the font packages are installed by default (except
but then the alias is set |
I agree that the behaviour should be consistent. We can force font embedding by specifying |
In a shared installation you could have multiple
|
Here they are:
...both having Round 1I suspected that Windows' Courier fonts are the root cause. After deleting them on VMs having MiKTeX installed in two different ways (https://www.wikihow.com/Delete-Protected-System-Fonts-in-Windows-7), and running
again, I got the same subset prefixes as before ( Round 2I tried adding Round 3Motivated by "
Conclusion: installation for "all users" definitely uses
I cannot find any other Courier resource. Could it be that it is available in |
Renaming all files (mostly Renaming some additional files that contain |
I just set up two new Win10 32-bit VMs with MiKTeX installed in two different ways:
Upon installations, some updates were available - including Testing
|
Please note: |
Still the same within PDF, clearly different font than with |
I think the issue has been fixed with the latest updates. |
Looking forward to testing. :) |
Yes, I assume so. The per-user installation has non-existing directories in the search path. Maybe Ghostscript 9.25 has a problem with it. |
Hi. I am glad to verify that the recent commits resolved all issues! Tests on all four combinations (32-bit / 64-bit x "only for me" / for "all users") yields:
SummaryThis was the original behavior of
What has changed?
Remaining
Thank you for all the effort! It was a long journey... |
Hi. I tested the behavior in Ubuntu on both installation types with the latest updates. PDF outputs are equal and both have embedded Courier-Bold (subset prefix
I guess the root cause is that regular Ghostscript does not see/use paths in Would it be possible to make
|
This will be available with the next |
Ah, sorry. I should have recognized that fix is not available yet since there are no new arguments here:
How about
Can |
Hi. I tried this:
and got the wanted font from It seems that setting |
@edocevoli Looks like the updates arrived to Linux systems? Everything works as expected and However, I noticed that Standalone Ghostscript 9.26 is available on the testing Ubuntu system, I got no error message like in #429. It probably used its own resources after I uninstalled |
I tried to trace which font resources were used - no success. It could be that URW++ fonts are pre-compiled and included in the Ghostscript executable (https://www.ghostscript.com/doc/9.26/Fonts.htm#Free_fonts). On the other hand, I leave this information here for someone else keen to investigate, or for the future occasions if some other issues happen. |
I am in an urgent need to get some document compiled on a brand new installation of MikTeX on a new computer - and sure with Murphy behind my back, exactly this problem kicked me in the behind and I do not get wiser from the long discussion above... |
@uwezi well you are not giving any details and it is not clear if you really have "exactly" this problem. If you installed a basic miktex: install more font packages, in the basic miktex something seems to be missing. |
@uwezi If it is about missing fonts, install all font resources. Instructions at the bottom of: MiKTeX/miktex-packaging#112. Also make sure you have MiKTeX updated. |
@uwezi So, installing missing/all fonts resolved the issues with |
Yes, the culprit were eps-figures which I had created with Xcircuit like the one included in the following zip-file. More details:
Absolute MWE:
If I look into the eps-file I can only see that it uses times-italic and helvetica. After re-removing these two packages now from MikTeX the document still compiles without problem. But I am too lazy to go back and try to find out which of the 246 additional packages helped... |
Looking inside, I found that Associations in
Associations in
So, needed packages are |
...then I wonder why it still works now if I uninstall these packages again - or well I actually don't care right now. Let me know if I can contribute with some more tests on my system. |
|
neither nor... I now retested the whole thing and found out that I must have missed something yesterday... When I have either times or helvetica or both installed, everything works fine. (I was sure I had tested the complete uninstall yesterday, but somehow I must have messed up my experiment.) |
Hi @edocevoli, @u-fischer.
I found the root cause of #296, #339 and #386, and hereby I explain how to resolve them.
Firstly, here is how I managed to get embedded fonts within 32-bit and 64-bit MiKTeX installations for "all users":
The crucial part is the
-I
switch (https://www.ghostscript.com/doc/current/Use.htm#I_switch), and I got the idea from https://stackoverflow.com/a/52887749/9402145:Considering that MiKTeX's
epstopdf
usesmgs
of version 9.25 (and things within Ghostscript changed in this context in version 9.25), it is mandatory to use-I
switch pointing toFontmap
(placed underC:\Program Files\MiKTeX 2.9\ghostscript\base
orC:\Users\<user>\AppData\Local\Programs\MiKTeX 2.9\ghostscript\base
) that utilizes MiKTeX's font packages (defines fonts from MiKTeX's font packages by(Fontmap.MiKTeX) .runlibfile
and then defines aliases by(Fontmap.aliases) .runlibfile
).The issue can be resolved adding
-I
switch with appropriate arguments somewhere around here:miktex/Programs/MiKTeX/epstopdf/epstopdf.cpp
Lines 683 to 690 in d23da52
(Explicitly using
-I
switch within "only for me" MiKTeX installations, with proper path toFontmap
, preserves the wanted behavior.)I hope it is at least clear how to resolve the issue (if you still have trouble understanding it :)).
Kind regards, Ivan
The text was updated successfully, but these errors were encountered: