AbiWord
Tomasz Kłoczko
kloczek w rudy.mif.pg.gda.pl
Pią, 9 Sie 2002, 13:45:33 CEST
On 9 Aug 2002, Tomasz Witek wrote:
> W liście z pią, 09-08-2002, godz. 11:13, Tomasz Kłoczko pisze:
> > On 9 Aug 2002, Tomasz Witek wrote:
> >
> > > Ja mam takie niedyskretne pytanie. Swego czasu po liscie przewijal sie
> > > taki zastaw jak abiword-linked_fonts-pl, kiedys byl nawet w cvsie, teraz
> > > nie moge go znalezc, ale nie o to chodzi. Tam jest smieszna latka ktora
> > > powoduje zrobienie wielu linkow do fontów z /usr/share/fonts/Type1 do
> > > /usr/X11R6/share/AbiSuite/fonts/pl. Po tym zabiegu pliterki w AbiWordzie
> > > dzialaja. Wiem, ze tomek i paru innych zaraz powie, ze to nieeleganckie
> > > i nalezy zmusic AbiWorda do uzywania fontow ze standardowej sciezki, ale
> > > jak nik tego nie zobi to AbiWord nie umie pisac po polsku, a jesdak taka
> > > wlasnosc by sie przydala, szczegolnie wiekszej czesci uzytkownikow.
> > >
> > > W sumie mozna dorzucic skrypt do /usr/share/doc ktory to na zyczenie
> > > admina zrobi ale po co.
> >
> > .. skoro możnaby zrobić patcha który spowoduje czytanie fontów z
> > systemopwych ścieżek :)
> >
> A nie mowilem ? Ale kto to zrobi, ja probowalem ale sie poddalem, a do
> 1.0 tuz, tuz, wiec mozna by zrobic wprowadzic latke ktora wiadomo jak
> zrobic.
Pogrepowałem i znalazłem.
Wsio co trzeba jest w abi/src/af/xap/unix/xap_UnixFont.cpp. Jest tam:
const encoding_pair * XAP_UnixFont::loadEncodingFile(char * encfile)
{
if(m_pEncodingTable)
{
//UT_DEBUGMSG(("UnixFont: font table already exists\n"));
return m_pEncodingTable;
}
if(!encfile)
{
UT_ASSERT(UT_SHOULD_NOT_HAPPEN);
return 0;
}
xxx_UT_DEBUGMSG(("Loading encoding file %s \n",encfile));
FILE * ef = fopen(encfile, "r");
if(!ef)
{
//if the file does not exist, we will load a generic one
//get the path from m_fontfile
char * full_name = new char[strlen(XAP_App::getApp()->getAbiSuiteLibDir())+30];
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
strcpy(full_name, m_fontfile);
char * slash = strrchr(full_name, '/');
if(slash)
*(slash+1) = 0;
//first we look for a locale specific file locale.u2g in the same directory as this font
strcat(full_name, "locale.u2g");
UT_DEBUGMSG(("UnixFont: trying to open locale specific encoding file [%s]\n", full_name));
Generalnie trzebaby pooglądać wszystkie wołania
XAP_App::getApp()->getAbiSuiteLibDir() i powymieniać na wstawienie
konkretnej ściżki.
Przy okzji .. sa tam takei kwiatki jak:
sprintf(cmdline, "%s/bin/ttftool -f %sttf -a %safm -u %su2g -p %st42 -e %s",
^^^^^^^^^^^^^^
libdir, fontfile, fontfile, fontfile, fontfile,enc);
^^^^^^
Czy inne podobne które szukaj konkretnych nrzędzie w $(libdir)/bin/ :>
To też trzebaby powymieniać. Mówiąc inaczje abiqword wygląda, że w obecnej
postaci tak wogóle średnio nadaje się do użytku.
kloczek
--
-----------------------------------------------------------
*Ludzie nie mają problemów, tylko sobie sami je stwarzają*
-----------------------------------------------------------
Tomasz Kłoczko, sys adm @zie.pg.gda.pl|*e-mail: kloczek w rudy.mif.pg.gda.pl*
Więcej informacji o liście dyskusyjnej pld-devel-pl