While testing Norbert's latest Debian packages, I ran across the
following font problem with the recent ConTeXt minimals.
The following test file:
========= cut here =============
\usetypescript[palatino][ec]
\definetypeface [palatino] [mm] [math] [euler] [euler] [rscale=1.03]
\setupbodyfont[palatino,11pt]
\starttext
$\equiv$
\stoptext
========= cut here =============
fails with:
!pdfTeX error: pdftex (file cmsy10.pfb): cannot open Type 1 font file for readi
ng
==> Fatal error occurred, no output PDF file produced!
Among the many map files that are read in, only original-public-lm.map
mentions cmsy10.pfb, and it contains this mapping:
cmsy10 CMSY10
On Mon, Dec 1, 2008 at 4:50 AM, Sanjoy Mahajan wrote:
While testing Norbert's latest Debian packages, I ran across the following font problem with the recent ConTeXt minimals.
The following test file:
========= cut here ============= \usetypescript[palatino][ec] \definetypeface [palatino] [mm] [math] [euler] [euler] [rscale=1.03] \setupbodyfont[palatino,11pt]
\starttext $\equiv$ \stoptext ========= cut here =============
fails with:
!pdfTeX error: pdftex (file cmsy10.pfb): cannot open Type 1 font file for readi ng ==> Fatal error occurred, no output PDF file produced!
Among the many map files that are read in, only original-public-lm.map mentions cmsy10.pfb, and it contains this mapping:
cmsy10 CMSY10
Since cmsy10.pfb isn't in the minimals, I tried to fake it by symlinking to the texlive fonts and running mktexlsr, but that didn't work. The ls-R database contained cmsy10.pfb, but kpsewhich cmsy10.pfb wouldn't find it.
Hello Sanjoy, we somehow deliberately decided not to put any cmr files into distribution, but if some of them are needed, it would make sense to fix that.
Another workaround that I tried was to add this line
\pdfmapfile{+pdftex.map}
to the start of the test file. But that trick only produced errors about duplicated fontmap entries.
That's the trick that we used to be able *not to include* the cmr
files. It's used by pdftex format and declared cmsy10 to be:
cmsy10 LMMathSymbols10-Regular "enclmmathsy ReEncodeFont"
I'm using Debian GNU/Linux i386, context minimals 2008.11.10 w/ MKII. I tested it with the 2008.10.31 minimals but found the same problem. I
can also test it with other versions. Is there a list of available
dates to feed the --context=YYYY.MM.DD switch? See:
http://minimals.contextgarden.net/current/context/
(though Hans just implemented a way to fetch that list and list the
available modules, so this could be used to list available versions as
well. Not included yet.)
I deleted older distributions since there was a critical lack of space
on the garden. But this would not solve your problem. It lies in
distribution, not in ConTeXt itself.
I would suggest you to put cmsy10.pfb to texmf-local/fonts/... in
order to solve your problem right away. But for the general solution
... any ideas? I can still include CM Type1 fonts if really needed ...
it's just that noone has complained so far.
Mojca
Mojca Miklavec wrote:
cmsy10 LMMathSymbols10-Regular "enclmmathsy ReEncodeFont"
But I guess that the problem lies somewhere else. I'm almost sure that the virtual font in Euler calls for cmsy10.pfb in which case you cannot trick TeX with map files pointing to some other font.
The vf calls for the "cmsy10" tfm. That name is then passed through the
font mapping machinery, so the trick above should have worked.
The fact that the name "cmsy10.pfb" is discovered means that there
is a mapfile line for "cmsy10 CMSY10
On Mon, Dec 1, 2008 at 11:48 AM, Taco Hoekwater wrote:
Mojca Miklavec wrote:
cmsy10 LMMathSymbols10-Regular "enclmmathsy ReEncodeFont"
But I guess that the problem lies somewhere else. I'm almost sure that the virtual font in Euler calls for cmsy10.pfb in which case you cannot trick TeX with map files pointing to some other font.
The vf calls for the "cmsy10" tfm. That name is then passed through the font mapping machinery, so the trick above should have worked.
The fact that the name "cmsy10.pfb" is discovered means that there is a mapfile line for "cmsy10 CMSY10
Hello, Taco, thanks for the remark (and sorry for my stupid thinking - there are too many ConTeXt files lying around on my machine). I'm attaching a fixed original-public-lm.map. Hans, can you please have a look and possibly include the file in next version if it seems ok (I added some more really minor fixes)? Mojca
"Mojca Miklavec"
I'm attaching a fixed original-public-lm.map.
After testing that file, I emailed that: 1. this new .map file fixed the small test file, but 2. the larger test file did not work (couldn't find cmex10.pfb). #1 is true, but #2 was my error: I hadn't copied the fixed .map file to the subdirectory with the large test file. Once I did so, it compiled fine. So, I think you are right that there's no need for the minimals to contain the cm* fonts; the new .map file points pdftex to available replacements. Thanks for the fix, -Sanjoy `Until lions have their historians, tales of the hunt shall always glorify the hunters.' --African Proverb
On Mon, 1 Dec 2008, Sanjoy Mahajan wrote:
"Mojca Miklavec"
wrote: I'm attaching a fixed original-public-lm.map.
After testing that file, I emailed that:
1. this new .map file fixed the small test file, but 2. the larger test file did not work (couldn't find cmex10.pfb).
#1 is true, but #2 was my error: I hadn't copied the fixed .map file to the subdirectory with the large test file. Once I did so, it compiled fine.
So, I think you are right that there's no need for the minimals to contain the cm* fonts; the new .map file points pdftex to available replacements.
Thanks for the fix,
I can confirm that the fix is working. I had a project using Euler and so far I had simply copied all the CM pfb files from texlive in my working directory. With the new lm.map file, I do not need any CM pfb file. However, the CM tfm files are still read (and they are part of the minimals). Mojca, thanks a lot for the fix. Aditya
Taco Hoekwater
The fact that the name "cmsy10.pfb" is discovered means that there is a mapfile line for "cmsy10 CMSY10
Right, in my message I had also suspected the same file:
Among the many map files that are read in, only original-public-lm.map
mentions cmsy10.pfb, and it contains this mapping:
cmsy10 CMSY10
I'm attaching a fixed original-public-lm.map.
I just tested with this fixed file, and my small test file compiles fine. However, the longer file from which it came (100+-page math textbook) fails because it cannot find cmex10.pfb. I'll do some more debugging on the longer file to make a minimal (sorry) test. -Sanjoy `Until lions have their historians, tales of the hunt shall always glorify the hunters.' --African Proverb
participants (4)
-
Aditya Mahajan
-
Mojca Miklavec
-
Sanjoy Mahajan
-
Taco Hoekwater