From 80a713d89502ed1ea24992e1fcdeb7e3b96317b1 Mon Sep 17 00:00:00 2001 From: charras Date: Thu, 28 May 2009 18:27:50 +0000 Subject: [PATCH] commit hershey patch --- common/base_struct.cpp | 11 +- common/drawtxt.cpp | 2 +- eeschema/plot.cpp | 3 +- include/{grfonte.h => grfonte.h.notused} | 0 include/hershey_fonts.h | 214 +++++++++++++++++++++++ 5 files changed, 221 insertions(+), 9 deletions(-) rename include/{grfonte.h => grfonte.h.notused} (100%) create mode 100644 include/hershey_fonts.h diff --git a/common/base_struct.cpp b/common/base_struct.cpp index 68f321f91c..b2ef720adb 100644 --- a/common/base_struct.cpp +++ b/common/base_struct.cpp @@ -1,8 +1,8 @@ -/********************************************************/ -/* methodes pour les structures de base: */ -/* EDA_BaseStruct (classe non utilisable seule) */ -/* EDA_TextStruct (classe non utilisable seule) */ -/********************************************************/ +/****************************************/ +/* Basic classes for Kicad: */ +/* EDA_BaseStruct */ +/* EDA_TextStruct */ +/****************************************/ /* Fichier base_struct.cpp */ @@ -10,7 +10,6 @@ #include "gr_basic.h" #include "trigo.h" #include "common.h" -#include "grfonte.h" #include "macros.h" #include "wxstruct.h" #include "class_drawpanel.h" diff --git a/common/drawtxt.cpp b/common/drawtxt.cpp index 5254914e53..b9d61c8402 100644 --- a/common/drawtxt.cpp +++ b/common/drawtxt.cpp @@ -18,7 +18,7 @@ #endif #define EDA_DRAWBASE -#include "hershey.h" +#include "hershey_fonts.h" #define HERSHEY_SIZE 32.0 diff --git a/eeschema/plot.cpp b/eeschema/plot.cpp index 7fee0b0dc3..d6577cdcd3 100644 --- a/eeschema/plot.cpp +++ b/eeschema/plot.cpp @@ -7,7 +7,6 @@ #include "common.h" #include "plot_common.h" #include "worksheet.h" -#include "grfonte.h" #include "base_struct.h" #include "drawtxt.h" #include "trigo.h" @@ -694,7 +693,7 @@ void PlotTextStruct( EDA_BaseStruct* Struct ) delete (list); } - + else PlotGraphicText( g_PlotFormat, textpos, color, schText->m_Text, schText->m_Orient, schText->m_Size, diff --git a/include/grfonte.h b/include/grfonte.h.notused similarity index 100% rename from include/grfonte.h rename to include/grfonte.h.notused diff --git a/include/hershey_fonts.h b/include/hershey_fonts.h new file mode 100644 index 0000000000..e33fb3fca0 --- /dev/null +++ b/include/hershey_fonts.h @@ -0,0 +1,214 @@ +/* Hershey fonts */ + +/* + * Hershey fonts are vectored fonts. + * Note one can find many formats for these vectored fonts + * here is the formats used : + * >shapes are a set of polygons. + * >A given shape includes one or more polygons. + * >corner coordinates are coded by a XY pair. + * >The value of each coordinate is - 'R' + * >The coordinate (-50,0) or " R" is the Pen Up command (end of the current polygon) + */ + +/* Hershey Simplex Roman (sans) definition */ +const static char* hershey_simplex[] = +{ + "JZ", + "MWRFRT RRYQZR[SZRY", + "JZNFNM RVFVM", + "H]SBLb RYBRb RLOZO RKUYU", + "H\\PBP_ RTBT_ RYIWGTFPFMGKIKKLMMNOOUQWRXSYUYXWZT[P[MZKX", + "F^[FI[ RNFPHPJOLMMKMIKIIJGLFNFPGSHVHYG[F RWTUUTWTYV[X[ZZ[X[VYTWT", + "E_\\O\\N[MZMYNXPVUTXRZP[L[JZIYHWHUISJRQNRMSKSIRGPFNGMIMKNNPQUXWZY[[[\\Z\\Y", + "MWRHQGRFSGSIRKQL", + "KYVBTDRGPKOPOTPYR]T`Vb", + "KYNBPDRGTKUPUTTYR]P`Nb", + "JZRFRR RMIWO RWIMO", + "E_RIR[ RIR[R", + "MWSZR[QZRYSZS\\R^Q_", + "E_IR[R", + "MWRYQZR[SZRY", + "G][BIb", + "H\\QFNGLJKOKRLWNZQ[S[VZXWYRYOXJVGSFQF", + "H\\NJPISFS[", + "H\\LKLJMHNGPFTFVGWHXJXLWNUQK[Y[", + "H\\MFXFRNUNWOXPYSYUXXVZS[P[MZLYKW", + "H\\UFKTZT RUFU[", + "H\\WFMFLOMNPMSMVNXPYSYUXXVZS[P[MZLYKW", + "H\\XIWGTFRFOGMJLOLTMXOZR[S[VZXXYUYTXQVOSNRNOOMQLT", + "H\\YFO[ RKFYF", + "H\\PFMGLILKMMONSOVPXRYTYWXYWZT[P[MZLYKWKTLRNPQOUNWMXKXIWGTFPF", + "H\\XMWPURRSQSNRLPKMKLLINGQFRFUGWIXMXRWWUZR[P[MZLX", + "MWRMQNROSNRM RRYQZR[SZRY", + "MWRMQNROSNRM RSZR[QZRYSZS\\R^Q_", + "F^ZIJRZ[", + "E_IO[O RIU[U", + "F^JIZRJ[", + "I[LKLJMHNGPFTFVGWHXJXLWNVORQRT RRYQZR[SZRY", + "E`WNVLTKQKOLNMMPMSNUPVSVUUVS RQKOMNPNSOUPV RWKVSVUXVZV\\T]Q]O\\L[JYHWGTFQFNGLHJJILHOHRIUJWLYNZQ[T[WZYYZX RXKWSWUXV", + "I[RFJ[ RRFZ[ RMTWT", + "G\\KFK[ RKFTFWGXHYJYLXNWOTP RKPTPWQXRYTYWXYWZT[K[", + "H]ZKYIWGUFQFOGMILKKNKSLVMXOZQ[U[WZYXZV", + "G\\KFK[ RKFRFUGWIXKYNYSXVWXUZR[K[", + "H[LFL[ RLFYF RLPTP RL[Y[", + "HZLFL[ RLFYF RLPTP", + "H]ZKYIWGUFQFOGMILKKNKSLVMXOZQ[U[WZYXZVZS RUSZS", + "G]KFK[ RYFY[ RKPYP", + "NVRFR[", + "JZVFVVUYTZR[P[NZMYLVLT", + "G\\KFK[ RYFKT RPOY[", + "HYLFL[ RL[X[", + "F^JFJ[ RJFR[ RZFR[ RZFZ[", + "G]KFK[ RKFY[ RYFY[", + "G]PFNGLIKKJNJSKVLXNZP[T[VZXXYVZSZNYKXIVGTFPF", + "G\\KFK[ RKFTFWGXHYJYMXOWPTQKQ", + "G]PFNGLIKKJNJSKVLXNZP[T[VZXXYVZSZNYKXIVGTFPF RSWY]", + "G\\KFK[ RKFTFWGXHYJYLXNWOTPKP RRPY[", + "H\\YIWGTFPFMGKIKKLMMNOOUQWRXSYUYXWZT[P[MZKX", + "JZRFR[ RKFYF", + "G]KFKULXNZQ[S[VZXXYUYF", + "I[JFR[ RZFR[", + "F^HFM[ RRFM[ RRFW[ R\\FW[", + "H\\KFY[ RYFK[", + "I[JFRPR[ RZFRP", + "H\\YFK[ RKFYF RK[Y[", + "KYOBOb RPBPb ROBVB RObVb", + "KYKFY^", + "KYTBTb RUBUb RNBUB RNbUb", + "JZPLRITL RMORJWO RRJR[", + "JZJ]Z]", + "MWSFRGQIQKRLSKRJ", + "I\\XMX[ RXPVNTMQMONMPLSLUMXOZQ[T[VZXX", + "H[LFL[ RLPNNPMSMUNWPXSXUWXUZS[P[NZLX", + "I[XPVNTMQMONMPLSLUMXOZQ[T[VZXX", + "I\\XFX[ RXPVNTMQMONMPLSLUMXOZQ[T[VZXX", + "I[LSXSXQWOVNTMQMONMPLSLUMXOZQ[T[VZXX", + "MYWFUFSGRJR[ ROMVM", + "I\\XMX]W`VaTbQbOa RXPVNTMQMONMPLSLUMXOZQ[T[VZXX", + "I\\MFM[ RMQPNRMUMWNXQX[", + "NVQFRGSFREQF RRMR[", + "MWRFSGTFSERF RSMS^RaPbNb", + "IZMFM[ RWMMW RQSX[", + "NVRFR[", + "CaGMG[ RGQJNLMOMQNRQR[ RRQUNWMZM\\N]Q][", + "I\\MMM[ RMQPNRMUMWNXQX[", + "I\\QMONMPLSLUMXOZQ[T[VZXXYUYSXPVNTMQM", + "H[LMLb RLPNNPMSMUNWPXSXUWXUZS[P[NZLX", + "I\\XMXb RXPVNTMQMONMPLSLUMXOZQ[T[VZXX", + "KXOMO[ ROSPPRNTMWM", + "J[XPWNTMQMNNMPNRPSUTWUXWXXWZT[Q[NZMX", + "MYRFRWSZU[W[ ROMVM", + "I\\MMMWNZP[S[UZXW RXMX[", + "JZLMR[ RXMR[", + "G]JMN[ RRMN[ RRMV[ RZMV[", + "J[MMX[ RXMM[", + "JZLMR[ RXMR[P_NaLbKb", + "J[XMM[ RMMXM RM[X[", + "KYTBRCQDPFPHQJRKSMSOQQ RRCQEQGRISJTLTNSPORSTTVTXSZR[Q]Q_Ra RQSSUSWRYQZP\\P^Q`RaTb", + "NVRBRb", + "KYPBRCSDTFTHSJRKQMQOSQ RRCSESGRIQJPLPNQPURQTPVPXQZR[S]S_Ra RSSQUQWRYSZT\\T^S`RaPb", + "F^IUISJPLONOPPTSVTXTZS[Q RISJQLPNPPQTTVUXUZT[Q[O", + "KYQFOGNINKOMQNSNUMVKVIUGSFQF" +}; + +/* Hershey Duplex Roman (sans bold) definition */ +const static char* hershey_duplex[] = +{ + "JZ", + "MXRFRTST RRFSFST RRXQYQZR[S[TZTYSXRX RRYRZSZSYRY", + "I[NFMGMM RNGMM RNFOGMM RWFVGVM RWGVM RWFXGVM", + "H]SFLb RYFRb RLQZQ RKWYW", + "I\\RBR_S_ RRBSBS_ RWIYIWGTFQFNGLILKMMNNVRWSXUXWWYTZQZOYNX RWIVHTGQGNHMIMKNMVQXSYUYWXYWZT[Q[NZLXNX RXXUZ", + "F^[FI[ RNFPHPJOLMMKMIKIIJGLFNFPGSHVHYG[F RWTUUTWTYV[X[ZZ[X[VYTWT", + "F_\\MZMXNWPUVTXSYQZMZKYJWJUKSLRQOSMTKTISGQFPFNGMIMKNNPQUWXZZ[\\[ R\\M\\NZNXO RYNXPVVUXSZQ[M[KZJYIWIUJSLQQNRMSKSIRG RSHQGPGNH ROGNINKONQQVWXYZZ\\Z\\[", + "MXTHSIRIQHQGRFSFTGTJSLQM RRGRHSHSGRG RSITJ RTHSL", + "KYUBSDQGOKNPNTOYQ]S`UbVb RUBVBTDRGPKOPOTPYR]T`Vb", + "KYNBPDRGTKUPUTTYR]P`NbOb RNBOBQDSGUKVPVTUYS]Q`Ob", + "JZRFQGSQRR RRFRR RRFSGQQRR RMINIVOWO RMIWO RMIMJWNWO RWIVINOMO RWIMO RWIWJMNMO", + "F_RIRZSZ RRISISZ RJQ[Q[R RJQJR[R", + "MXTZS[R[QZQYRXSXTYT\\S^Q_ RRYRZSZSYRY RS[T\\ RTZS^", + "F_JQ[Q[R RJQJR[R", + "MXRXQYQZR[S[TZTYSXRX RRYRZSZSYRY", + "G^[BIbJb R[B\\BJb", + "H\\QFNGLJKOKRLWNZQ[S[VZXWYRYOXJVGSFQF ROGMJLOLRMWOZ RNYQZSZVY RUZWWXRXOWJUG RVHSGQGNH", + "H\\NJPISFS[ RNJNKPJRHR[S[", + "H\\LKLJMHNGPFTFVGWHXJXLWNUQL[ RLKMKMJNHPGTGVHWJWLVNTQK[ RLZYZY[ RK[Y[", + "H\\MFXFQO RMFMGWG RWFPO RQNSNVOXQYTYUXXVZS[P[MZLYKWLW RPOSOVPXS RTOWQXTXUWXTZ RXVVYSZPZMYLW ROZLX", + "H\\UIU[V[ RVFV[ RVFKVZV RUILV RLUZUZV", + "H\\MFLO RNGMN RMFWFWG RNGWG RMNPMSMVNXPYSYUXXVZS[P[MZLYKWLW RLOMOONSNVOXR RTNWPXSXUWXTZ RXVVYSZPZMYLW ROZLX", + "H\\VGWIXIWGTFRFOGMJLOLTMXOZR[S[VZXXYUYTXQVOSNRNOOMQ RWHTGRGOH RPGNJMOMTNXQZ RMVOYRZSZVYXV RTZWXXUXTWQTO RXSVPSOROOPMS RQONQMT", + "H\\KFYFO[ RKFKGXG RXFN[O[", + "H\\PFMGLILKMMNNPOTPVQWRXTXWWYTZPZMYLWLTMRNQPPTOVNWMXKXIWGTFPF RNGMIMKNMPNTOVPXRYTYWXYWZT[P[MZLYKWKTLRNPPOTNVMWKWIVG RWHTGPGMH RLXOZ RUZXX", + "H\\WPURRSQSNRLPKMKLLINGQFRFUGWIXMXRWWUZR[P[MZLXMXNZ RWMVPSR RWNUQRRQRNQLN RPRMPLMLLMIPG RLKNHQGRGUHWK RSGVIWMWRVWTZ RUYRZPZMY", + "MXRMQNQORPSPTOTNSMRM RRNROSOSNRN RRXQYQZR[S[TZTYSXRX RRYRZSZSYRY", + "MXRMQNQORPSPTOTNSMRM RRNROSOSNRN RTZS[R[QZQYRXSXTYT\\S^Q_ RRYRZSZSYRY RS[T\\ RTZS^", + "F^ZIJRZ[", + "F_JM[M[N RJMJN[N RJU[U[V RJUJV[V", + "F^JIZRJ[", + "I\\LKLJMHNGQFTFWGXHYJYLXNWOUPRQ RLKMKMJNHQGTGWHXJXLWNUORP RMIPG RUGXI RXMTP RRPRTSTSP RRXQYQZR[S[TZTYSXRX RRYRZSZSYRY", + "E`WNVLTKQKOLNMMPMSNUPVSVUUVS RQKOMNPNSOUPV RWKVSVUXVZV\\T]Q]O\\L[JYHWGTFQFNGLHJJILHOHRIUJWLYNZQ[T[WZYYZX RXKWSWUXV", + "H\\RFJ[ RRIK[J[ RRIY[Z[ RRFZ[ RMUWU RLVXV", + "H\\LFL[ RMGMZ RLFTFWGXHYJYMXOWPTQ RMGTGWHXJXMWOTP RMPTPWQXRYTYWXYWZT[L[ RMQTQWRXTXWWYTZMZ", + "H]ZKYIWGUFQFOGMILKKNKSLVMXOZQ[U[WZYXZV RZKYKXIWHUGQGOHMKLNLSMVOYQZUZWYXXYVZV", + "H]LFL[ RMGMZ RLFSFVGXIYKZNZSYVXXVZS[L[ RMGSGVHWIXKYNYSXVWXVYSZMZ", + "I\\MFM[ RNGNZ RMFYF RNGYGYF RNPTPTQ RNQTQ RNZYZY[ RM[Y[", + "I[MFM[ RNGN[M[ RMFYF RNGYGYF RNPTPTQ RNQTQ", + "H]ZKYIWGUFQFOGMILKKNKSLVMXOZQ[U[WZYXZVZRUR RZKYKXIWHUGQGOHNIMKLNLSMVNXOYQZUZWYXXYVYSUSUR", + "G]KFK[ RKFLFL[K[ RYFXFX[Y[ RYFY[ RLPXP RLQXQ", + "NWRFR[S[ RRFSFS[", + "J[VFVVUYSZQZOYNVMV RVFWFWVVYUZS[Q[OZNYMV", + "H]LFL[M[ RLFMFM[ RZFYFMR RZFMS RPOY[Z[ RQOZ[", + "IZMFM[ RMFNFNZ RNZYZY[ RM[Y[", + "F^JFJ[ RKKK[J[ RKKR[ RJFRX RZFRX RYKR[ RYKY[Z[ RZFZ[", + "G]KFK[ RLIL[K[ RLIY[ RKFXX RXFXX RXFYFY[", + "G]PFNGLIKKJNJSKVLXNZP[T[VZXXYVZSZNYKXIVGTFPF RQGNHLKKNKSLVNYQZSZVYXVYSYNXKVHSGQG", + "H\\LFL[ RMGM[L[ RLFUFWGXHYJYMXOWPUQMQ RMGUGWHXJXMWOUPMP", + "G]PFNGLIKKJNJSKVLXNZP[T[VZXXYVZSZNYKXIVGTFPF RQGNHLKKNKSLVNYQZSZVYXVYSYNXKVHSGQG RSXX]Y] RSXTXY]", + "H\\LFL[ RMGM[L[ RLFTFWGXHYJYMXOWPTQMQ RMGTGWHXJXMWOTPMP RRQX[Y[ RSQY[", + "H\\YIWGTFPFMGKIKKLMMNOOTQVRWSXUXXWYTZPZNYMXKX RYIWIVHTGPGMHLILKMMONTPVQXSYUYXWZT[P[MZKX", + "J[RGR[ RSGS[R[ RLFYFYG RLFLGYG", + "G]KFKULXNZQ[S[VZXXYUYF RKFLFLUMXNYQZSZVYWXXUXFYF", + "H\\JFR[ RJFKFRX RZFYFRX RZFR[", + "E_GFM[ RGFHFMX RRFMX RRIM[ RRIW[ RRFWX R]F\\FWX R]FW[", + "H\\KFX[Y[ RKFLFY[ RYFXFK[ RYFL[K[", + "I\\KFRPR[S[ RKFLFSP RZFYFRP RZFSPS[", + "H\\XFK[ RYFL[ RKFYF RKFKGXG RLZYZY[ RK[Y[", + "KYOBOb RPBPb ROBVB RObVb", + "KYKFY^", + "KYTBTb RUBUb RNBUB RNbUb", + "JZPLRITL RMORJWO RRJR[", + "JZJ]Z]", + "MXTFRGQIQLRMSMTLTKSJRJQK RRKRLSLSKRK RRGQK RQIRJ", + "H\\WMW[X[ RWMXMX[ RWPUNSMPMNNLPKSKULXNZP[S[UZWX RWPSNPNNOMPLSLUMXNYPZSZWX", + "H\\LFL[M[ RLFMFM[ RMPONQMTMVNXPYSYUXXVZT[Q[OZMX RMPQNTNVOWPXSXUWXVYTZQZMX", + "I[XPVNTMQMONMPLSLUMXOZQ[T[VZXX RXPWQVOTNQNOONPMSMUNXOYQZTZVYWWXX", + "H\\WFW[X[ RWFXFX[ RWPUNSMPMNNLPKSKULXNZP[S[UZWX RWPSNPNNOMPLSLUMXNYPZSZWX", + "I[MTXTXQWOVNTMQMONMPLSLUMXOZQ[T[VZXX RMSWSWQVOTNQNOONPMSMUNXOYQZTZVYWWXX", + "LZWFUFSGRJR[S[ RWFWGUGSH RTGSJS[ ROMVMVN ROMONVN", + "H\\XMWMW\\V_U`SaQaO`N_L_ RXMX\\W_UaSbPbNaL_ RWPUNSMPMNNLPKSKULXNZP[S[UZWX RWPSNPNNOMPLSLUMXNYPZSZWX", + "H\\LFL[M[ RLFMFM[ RMQPNRMUMWNXQX[ RMQPORNTNVOWQW[X[", + "NWRFQGQHRISITHTGSFRF RRGRHSHSGRG RRMR[S[ RRMSMS[", + "NWRFQGQHRISITHTGSFRF RRGRHSHSGRG RRMRbSb RRMSMSb", + "H[LFL[M[ RLFMFM[ RXMWMMW RXMMX RPTV[X[ RQSX[", + "NWRFR[S[ RRFSFS[", + "CbGMG[H[ RGMHMH[ RHQKNMMPMRNSQS[ RHQKOMNONQORQR[S[ RSQVNXM[M]N^Q^[ RSQVOXNZN\\O]Q][^[", + "H\\LML[M[ RLMMMM[ RMQPNRMUMWNXQX[ RMQPORNTNVOWQW[X[", + "I\\QMONMPLSLUMXOZQ[T[VZXXYUYSXPVNTMQM RQNOONPMSMUNXOYQZTZVYWXXUXSWPVOTNQN", + "H\\LMLbMb RLMMMMb RMPONQMTMVNXPYSYUXXVZT[Q[OZMX RMPQNTNVOWPXSXUWXVYTZQZMX", + "H\\WMWbXb RWMXMXb RWPUNSMPMNNLPKSKULXNZP[S[UZWX RWPSNPNNOMPLSLUMXNYPZSZWX", + "KYOMO[P[ ROMPMP[ RPSQPSNUMXM RPSQQSOUNXNXM", + "J[XPWNTMQMNNMPNRPSUUWV RVUWWWXVZ RWYTZQZNY ROZNXMX RXPWPVN RWOTNQNNO RONNPOR RNQPRUTWUXWXXWZT[Q[NZMX", + "MXRFR[S[ RRFSFS[ ROMVMVN ROMONVN", + "H\\LMLWMZO[R[TZWW RLMMMMWNYPZRZTYWW RWMW[X[ RWMXMX[", + "JZLMR[ RLMMMRY RXMWMRY RXMR[", + "F^IMN[ RIMJMNX RRMNX RRPN[ RRPV[ RRMVX R[MZMVX R[MV[", + "I[LMW[X[ RLMMMX[ RXMWML[ RXMM[L[", + "JZLMR[ RLMMMRY RXMWMRYNb RXMR[ObNb", + "I[VNL[ RXMNZ RLMXM RLMLNVN RNZXZX[ RL[X[", + "KYTBRCQDPFPHQJRKSMSOQQ RRCQEQGRISJTLTNSPORSTTVTXSZR[Q]Q_Ra RQSSUSWRYQZP\\P^Q`RaTb", + "NVRBRb", + "KYPBRCSDTFTHSJRKQMQOSQ RRCSESGRIQJPLPNQPURQTPVPXQZR[S]S_Ra RSSQUQWRYSZT\\T^S`RaPb", + "F^IUISJPLONOPPTSVTXTZS[Q RISJQLPNPPQTTVUXUZT[Q[O", + "KYQFOGNINKOMQNSNUMVKVIUGSFQF RQFNIOMSNVKUGQF RSFOGNKQNUMVISF" +};