OldComp.cz http://oldcomp.cz/ |
|
Generátor znaků pro XY4131 http://oldcomp.cz/viewtopic.php?f=144&t=7721 |
Stránka 1 z 1 |
Autor: | zxcygnus [ 07.10.2019, 15:25 ] |
Předmět příspěvku: | Re: Generátor znaků pro XY4131 |
Standard asi není. V manuálu Alfi je popsán jejich způsob uložení znaků, ale i když je možná velmi úsporný, je taky velmi omezený na znaky složené pouze z čar svislých, vodorovných a šikmých 45°. Co mě ale velmi zaujalo je, že existují docela pěkná písma od pana Alana Hersheyho cca z 1960-1970 určená pro CRT tiskárny (to není překlep a opravdu to znamená CRT obrazovku). Viz external links z Wikipedie https://en.wikipedia.org/wiki/Hershey_fonts Tady je malá přednáška o autorovi a písmech https://vimeo.com/178015110 vč. vysvětlení jak funguje původní formát. Někde jinde to je ještě lépe a detailněji, příp. popíšu, není to těžké. Jediná záludnost je, že jako command se počítá i pen_up a pen_up se skládá z mezery a znaku R. Vtipné je, že čísla souřadnic včetně znaménka jsou zakódovaná jako vzdálenost znaku od R v ASCII. Oproti fontům se kterými jsme zvyklí pracovat jsou Hersheyho písma v rastru 32 x 32 souřadnic. resp. v rozsahu -16 až + 16 s nulou uprostřed a přehozenými znaménky pro osu X. Rozhodně to jsou písma, která bych rád na některém ze svých plotrů viděl. Pár písmenek jsem zkoušel vyplotrovat a vypadají moc pěkně. A krom toho mám nakreslené písmo v rastru 40x20 souřadnic, ale ještě jsem ho z SVG nepřevedl do použitelných dat. Narozdíl od Hersheyho je vyšší, podobně detailní, záměrně neproporcionální a zároveň připravené na diakritiku. Mám do SVG překreslené i písmo z MZXR pro Aritmu 0507 (podle ukázky v manuálu), které narozdíl od Alfi není tak omezené a vyskytují se v něm čáry i v jiných úhlech než 0°, 90° a 45°. Jak přesně je kódované zatím netuším. Nicméně data jsou na mém webu ke stažení, povede-li se rozkódovat. https://cygnus.speccy.cz/download/aritm ... er.tar.bz2 |
Autor: | Jiiira [ 07.10.2019, 16:16 ] |
Předmět příspěvku: | Re: Generátor znaků pro XY4131 |
RaceSoft: Já bych se ještě přimlouval - jestli budeš řešit kódování češtiny, tak kdyby to mohlo být ISO Latin-2 (ISO-8859-2) |
Autor: | RaceSoft [ 07.10.2019, 18:30 ] |
Předmět příspěvku: | Re: Generátor znaků pro XY4131 |
Díky za odpovědi. Odkazy se budu snažit nastudovat v samostudiu. Kódování češtiny jsem zatím neřešil, předpokládám jen znaky do 127. Pokud se mi podaří něco rozumně vykoumat, nebráním se ani druhé polovině tabulky. Petr |
Autor: | RaceSoft [ 08.10.2019, 13:20 ] | ||
Předmět příspěvku: | Re: Generátor znaků pro XY4131 | ||
Takže, domácí úkol jsem částečně splnil a problematiku Hersheyových fontů jsem si přečetl a video shlédl. Jsou sice krásné, ale pro můj účel nepoužitelné - zabírají spoustu místa. Uložení ve formátu Alfi je hodně podobné tomu, co používám já. V mém případě ale každý bajt obsahuje i informaci o tom, zda je písátko nahoře nebo dole (viz 1. příspěvek). Každý znak je definován v matici 8x6 kroků + 2 kroky meziznaková mezera. Každý znak se začíná kreslit od jeho levého dolního okraje a po jeho dokončení je písátko na levém dolním okraji dalšího znaku. Oba směry pohybu (X i Y) mají ještě svůj vlastní koeficient zvětšení, což umožňuje písmo zvětšovat v obou osách navzájem nezávisle. Třeba zápis 007h,00B6h,031h,021h,000h (pro znak "\") znamená: 007h - udělěj 7 kroků směrem vzhůru se zvednutým perem 0B6h - udělěj 6 kroků směrem vpravo dolů se spuštěným perem 031h - udělej 1 krok směrem vpravo dolů se zvednutým perem 021h - udělěj 1 krok směrem v pravo se zvednutým perem Pro vlastní výpočty přesunu písátka používám Bresenhamův algoritmus pro výpočet čáry - pro neznalé, vyznačuje se tím, že je rychlý a používá pouze celočíselnou aritmetiku. Stejný algoritmus jsem použil i pro kreslení souborů ve formátu HPGL/PLT. Oba programy (tisk znaků a obrázků) zprovozňuji na svém Stone64kB se systémem CP/M 2.2 s CF kartou 64MB. Výhoda je v tom, že zdrojový soubor HPGL může být i hodně velký, systém si ho postupně načítá do paměti. Na přiloženém scanu písma je zvětšení jednotlivých bloků: 3x; 4x; 6x; 4x osa X a 6x osa Y; 6x osa X a 4x osa Y Petr
|
Autor: | l00k [ 12.11.2019, 13:37 ] |
Předmět příspěvku: | Re: Generátor znaků pro XY4131 |
Ahoj, pokud by si se chtěl vrtat v datech můžu poslat definiční soubory pro kreslení znaků čárama z IQ151-Grafik, dále pak definiční soubory jak pro XY tak Minigraf opět z modulů IQ151. L. |
Autor: | l00k [ 12.11.2019, 15:44 ] |
Předmět příspěvku: | Re: Generátor znaků pro XY4131 |
Jestli ještě bádáš nad fontama pro zapisovač, můžu poskytnout data z Modulů pro IQ151 jak pro minigraf tak pro XY, případně data z modulu jemné grafiky, kde je ale v interpolátoru možnost kreslit oblouky, takže to font využívá při definici... |
Autor: | RaceSoft [ 13.11.2019, 15:26 ] |
Předmět příspěvku: | Re: Generátor znaků pro XY4131 |
Ahoj, dík za nabídku, .BIN soubory tu samozřejmě zveřejnit můžeš, rád se do nich podívám (a možná nejen já). Prozatím je to uzavřený projekt, ale nevylučuji, že bude obnoven - třeba právě na základě souborů z IQ-čka. Díky Petr |
Stránka 1 z 1 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |