On Fri, 20 Jan 2023, Jorge Moraleda wrote: > > I searched for some definition that says, that a .pfb file has to > > be prefixed with 80 01 91 03 00 00 (in front of %!PS-AdobeFont-1.), > > but didn't find such a specification.
> I found this in case it helps > https://personal.math.ubc.ca/~cass/piscript/type1.pdf That's quite interesting. Chapter 1 of this document explains, that .pfb files have multiple of these "segment headers" but I miss them in the fonts-urw-base35 .t1 fonts (not only at the beginning of the file, but also at the beginning of the binary part as well as at the end of the binary part). It's not possible to simply prefix the .t1 files with 6 bytes, since the other headers have to be added, too, and byte 3-6 of each header contains the segment size. But for me it seems that the .t1 files are neither .pfa files (since they contain binary content, which isn't ascii armored) nor .pfb files (since the segment headers are missing). So we should think about "repairing" these files and make them real .pfb files with segment headers. Only problem is, that t1binary doesn't handle C059-Italic.t1 correctly but generates a completely broken font file. So I did some perl hacking and created a addsegmentheaders.pl, which adds segment headers at the beginning of the file, at the beginning of the binary data and at the end. First tests with the patched files look good, but someone else should have a look on this... You find my changes in my segmentheaders branch: https://salsa.debian.org/roland/fonts-urw-base35/-/tree/segmentheaders Next problem: lintian complains about E: fonts-urw-base35: license-problem-font-adobe-copyrighted-fragment-no-credit [usr/share/fonts/type1/urw-base35/C059-BdIta.t1] N: N: This type 1 font file includes some postscript fragment with a non-free N: license of Adobe. In order to check if this tag is genuine please follow N: the procedure described in the reference. N: N: Moreover the fragment was likely verbatim copied from black book without N: any credit to Adobe. N: N: Should this be a false-positive, please override the tag. N: N: Please refer to https://wiki.debian.org/qa.debian.org/type1nondfsg for N: details. N: N: Visibility: error N: Show-Always: no N: Check: fonts/postscript/type1 N for all the fonts now. This is because the disassembled code contains "startlock get exec" which may be a fragment from Adobe from the following book: https://web.archive.org/web/20150321034514/http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF Appendix 3, page 95 (of the book) page 101 (of the PDF). It wasn't tested before, since the file type wasn't detected as "PostScript Type 1 font program data" before, so lintian didn't check the files... Greetings Roland