🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.dtp.tex
Article #16393

Konwersja fontów na potrzeby TeXa

#16393
From: Jarosław Sokołowski
Date: Fri, 14 Aug 2009 20:16
65 lines
3788 bytes
Pan Michal Jankowski napisał:

>> Nie wiem co mam dalej zrobić z tymi moimi zmodyfikowanymi plikami.
>> Patcha tu wkleić? To ledwie jakieś dwadzieścia linijek, ale nie
>> wiem czy to praktykowane. I czy to komu rzeczywiście potrzebne.
>
> Dawaj, dawaj. 8-)

Ponieważ licencje na to pozwalają, publikuję całe zmodyfikowane
źródła do programów FontForge i ttf2pt1. Można je pobrać z:

http://www.lasek.waw.pl/ttf/

Jeden program klikalny, drugi działa z linii poleceń, więc fullserwis,
wszyscy powinni być zadowoleni. FontForge ma taką przewagę, że można
nim przerabiać również fonty OTF i Type 1 (o nieTeXowym kodowaniu).
Jednym i drugim można wygenerować font Type 1 (PFB) o TeXowym kodowaniu
(w związku z tym nie nadaje się do niczego innego) oraz towarzyszący
mu plik metryki TFM. Programy nie używają fontów wirtualnych, dlatego
wszystkie potrzebne glify muszą być w fontach źródłowych. Ale to nie
problem. Źródła kompiluja się bez problemów w normalny sposób, niczego
specjalnego im nie potrzeba.

1. Ttf2pt1 wywołać najlepiej tak:

$  ttf2pt1 -b -l tex pxxr8t.ttf
$  afm2tfm  pxxr8t.afm

Załkadam, że program afm2tfm jest dostępny w systemie, powinien być
razem z dvips, czy ogólnie z TeXem. Efektem konwersji są pliki *.pfb
i *.tfm. Plik AFM można skasować.

2. FontForge

Po wczytaniu fontu źródłowego należy wybrać z menu opcję "Encoding"
(Kodowanie) a w niej "Reencode" (Przekoduj), z listy wybieramy
"TeX Extended (8t)". Następnie wybieramy "File" (Plik) i dalej
"Generate Fonts" (Generuj fonty). Z listy "PS Type 1 (Binary)",
do tego powinna być zaznaczona opcja "Output TFM & ENC". Tutaj też
są ważne tylko dwa pliki, jeśli coś więcej powstało, można skasować.


Tym, którzy mają z takimi rzeczami do czynienia po raz pierwszy,
radzę, by trzymali się przyjętej konwencji nazywania plików.
Czyli pierwsza litera "p", dalej dwie litery skrótu nazwy fontu,
następnie "r" lub "b" (bold) i ewentualnie "i" (italic) lub "o"
(oblique). Na końcu zawsze "8t".

O powstałych plikach mogę powiedzieć tyle, że należy umieścić we
"waściwych katalogach". Jakich -- to już sprawa głównie porządkowa.

Żeby powiadomić dvips (i innych takich) o nowym foncie, powinna
zostać dopisana linia do pliku psfonts.map. Gdzie on jest, to
trzeba sobie samemu poszukać, bo różnie bywa. Wpis wygląda tak:

pxxr8t XXFont-Regular <pxxr8t.ttf

To w środku, to oczywiście nazwa postscriptowa. Można ją znaleźć
na początku pliku AFM lub PFB (jako FontName).

Tyle tytułem instrukcji obsługi i dokumentacji. Jak ktoś ma pytania,
to proszę śmiało.

-- 
Jarek
Technical Details
Message-ID: <slrnh8bhhc.dg0.jaros@falcon.lasek.waw.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.nask.pl!news.nask.org.pl!news.task.gda.pl!not-for-mail
References: <h618eh$2rh$2@nemesis.news.neostrada.pl> <0b2cc54d-c31e-440e-9ad9-9d2418bc5048@s15g2000yqs.googlegroups.com> <slrnh8946n.69r.jaros@falcon.lasek.waw.pl> <h632do$itp$1@atlantis.news.neostrada.pl> <slrnh8aijc.5mg.jaros@falcon.lasek.waw.pl> <kjzvdkqdxx6.fsf@ccfs1.fuw.edu.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!news.nask.pl!news.nask.org.pl!news.task.gda.pl!not-for-mail
From: Jarosław Sokołowski <jaros@lasek.waw.pl>
Newsgroups: pl.comp.dtp.tex
Subject: Konwersja fontów na potrzeby TeXa
Date: Fri, 14 Aug 2009 20:16:39 +0000 (UTC)
Organization: : : :
Lines: 65
Message-ID: <slrnh8bhhc.dg0.jaros@falcon.lasek.waw.pl>
References: <h618eh$2rh$2@nemesis.news.neostrada.pl> <0b2cc54d-c31e-440e-9ad9-9d2418bc5048@s15g2000yqs.googlegroups.com> <slrnh8946n.69r.jaros@falcon.lasek.waw.pl> <h632do$itp$1@atlantis.news.neostrada.pl> <slrnh8aijc.5mg.jaros@falcon.lasek.waw.pl> <kjzvdkqdxx6.fsf@ccfs1.fuw.edu.pl>
NNTP-Posting-Host: 87-205-198-247.adsl.inetia.pl
Mime-Version: 1.0
X-Trace: news.task.gda.pl 1250280999 6659 87.205.198.247 (14 Aug 2009 20:16:39 GMT)
X-Complaints-To: abuse@news.task.gda.pl
NNTP-Posting-Date: Fri, 14 Aug 2009 20:16:39 +0000 (UTC)
User-Agent: slrn/0.9.8.1 (Linux)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit