123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203 |
- <?xml version="1.0"?>
- <doc>
- <assembly>
- <name>SharpFont</name>
- </assembly>
- <members>
- <member name="T:SharpFont.BBox">
- <summary>
- A structure used to hold an outline's bounding box, i.e., the
- coordinates of its extrema in the horizontal and vertical directions.
- </summary>
- </member>
- <member name="P:SharpFont.BBox.Left">
- <summary>
- Gets the horizontal minimum (left-most).
- </summary>
- </member>
- <member name="P:SharpFont.BBox.Bottom">
- <summary>
- Gets the vertical minimum (bottom-most).
- </summary>
- </member>
- <member name="P:SharpFont.BBox.Right">
- <summary>
- Gets the horizontal maximum (right-most).
- </summary>
- </member>
- <member name="P:SharpFont.BBox.Top">
- <summary>
- Gets the vertical maximum (top-most).
- </summary>
- </member>
- <member name="T:SharpFont.Bdf.Property">
- <summary>
- This structure models a given BDF/PCF property.
- </summary>
- </member>
- <member name="P:SharpFont.Bdf.Property.Type">
- <summary>
- Gets the property type.
- </summary>
- </member>
- <member name="P:SharpFont.Bdf.Property.Atom">
- <summary>
- Gets the atom string, if type is <see cref="F:SharpFont.Bdf.PropertyType.Atom"/>.
- </summary>
- </member>
- <member name="P:SharpFont.Bdf.Property.Integer">
- <summary>
- Gets a signed integer, if type is <see cref="F:SharpFont.Bdf.PropertyType.Integer"/>.
- </summary>
- </member>
- <member name="P:SharpFont.Bdf.Property.Cardinal">
- <summary>
- Gets an unsigned integer, if type is <see cref="F:SharpFont.Bdf.PropertyType.Cardinal"/>.
- </summary>
- </member>
- <member name="T:SharpFont.Bdf.PropertyType">
- <summary>
- A list of BDF property types.
- </summary>
- </member>
- <member name="F:SharpFont.Bdf.PropertyType.None">
- <summary>Value 0 is used to indicate a missing property.</summary>
- </member>
- <member name="F:SharpFont.Bdf.PropertyType.Atom">
- <summary>Property is a string atom.</summary>
- </member>
- <member name="F:SharpFont.Bdf.PropertyType.Integer">
- <summary>Property is a 32-bit signed integer.</summary>
- </member>
- <member name="F:SharpFont.Bdf.PropertyType.Cardinal">
- <summary>Property is a 32-bit unsigned integer.</summary>
- </member>
- <member name="T:SharpFont.ClassicKernValidationFlags">
- <summary>
- A list of bit-field constants used with <see cref="M:SharpFont.Face.ClassicKernValidate(SharpFont.ClassicKernValidationFlags)"/> to indicate the classic kern
- dialect or dialects. If the selected type doesn't fit, <see cref="M:SharpFont.Face.ClassicKernValidate(SharpFont.ClassicKernValidationFlags)"/> regards the table
- as invalid.
- </summary>
- </member>
- <member name="F:SharpFont.ClassicKernValidationFlags.Microsoft">
- <summary>Handle the ‘kern’ table as a classic Microsoft kern table.</summary>
- </member>
- <member name="F:SharpFont.ClassicKernValidationFlags.Apple">
- <summary>Handle the ‘kern’ table as a classic Apple kern table.</summary>
- </member>
- <member name="F:SharpFont.ClassicKernValidationFlags.All">
- <summary>Handle the ‘kern’ as either classic Apple or Microsoft kern table.</summary>
- </member>
- <member name="T:SharpFont.FTBitmap">
- <summary>
- A structure used to describe a bitmap or pixmap to the raster. Note that we now manage pixmaps of various
- depths through the <see cref="P:SharpFont.FTBitmap.PixelMode"/> field.
- </summary>
- <remarks>
- For now, the only pixel modes supported by FreeType are mono and grays. However, drivers might be added in the
- future to support more ‘colorful’ options.
- </remarks>
- </member>
- <member name="M:SharpFont.FTBitmap.#ctor(SharpFont.Library)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FTBitmap"/> class.
- </summary>
- <param name="library">The parent <see cref="T:SharpFont.Library"/>.</param>
- </member>
- <member name="M:SharpFont.FTBitmap.Finalize">
- <summary>
- Finalizes an instance of the <see cref="T:SharpFont.FTBitmap"/> class.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.IsDisposed">
- <summary>
- Gets a value indicating whether the <see cref="T:SharpFont.FTBitmap"/> has been disposed.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.Rows">
- <summary>
- Gets the number of bitmap rows.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.Width">
- <summary>
- Gets the number of pixels in bitmap row.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.Pitch">
- <summary><para>
- Gets the pitch's absolute value is the number of bytes taken by one bitmap row, including padding. However,
- the pitch is positive when the bitmap has a ‘down’ flow, and negative when it has an ‘up’ flow. In all
- cases, the pitch is an offset to add to a bitmap pointer in order to go down one row.
- </para><para>
- Note that ‘padding’ means the alignment of a bitmap to a byte border, and FreeType functions normally align
- to the smallest possible integer value.
- </para><para>
- For the B/W rasterizer, ‘pitch’ is always an even number.
- </para><para>
- To change the pitch of a bitmap (say, to make it a multiple of 4), use <see cref="M:SharpFont.FTBitmap.Convert(SharpFont.Library,System.Int32)"/>.
- Alternatively, you might use callback functions to directly render to the application's surface; see the
- file ‘example2.cpp’ in the tutorial for a demonstration.
- </para></summary>
- </member>
- <member name="P:SharpFont.FTBitmap.Buffer">
- <summary>
- Gets a typeless pointer to the bitmap buffer. This value should be aligned on 32-bit boundaries in most
- cases.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.GrayLevels">
- <summary>
- Gets the number of gray levels used in the bitmap. This field is only used with
- <see cref="F:SharpFont.PixelMode.Gray"/>.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.PixelMode">
- <summary>
- Gets the pixel mode, i.e., how pixel bits are stored.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.PaletteMode">
- <summary>
- Gets how the palette is stored. This field is intended for paletted pixel modes.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.Palette">
- <summary>
- Gets a typeless pointer to the bitmap palette; this field is intended for paletted pixel modes.
- </summary>
- </member>
- <member name="P:SharpFont.FTBitmap.BufferData">
- <summary>
- Gets the <see cref="T:SharpFont.FTBitmap"/>'s buffer as a byte array.
- </summary>
- </member>
- <member name="M:SharpFont.FTBitmap.Copy(SharpFont.Library)">
- <summary>
- Copy a bitmap into another one.
- </summary>
- <param name="library">A handle to a library object.</param>
- <returns>A handle to the target bitmap.</returns>
- </member>
- <member name="M:SharpFont.FTBitmap.Embolden(SharpFont.Library,System.Int32,System.Int32)">
- <summary>
- Embolden a bitmap. The new bitmap will be about ‘xStrength’ pixels wider and ‘yStrength’ pixels higher. The
- left and bottom borders are kept unchanged.
- </summary>
- <remarks><para>
- The current implementation restricts ‘xStrength’ to be less than or equal to 8 if bitmap is of pixel_mode
- <see cref="F:SharpFont.PixelMode.Mono"/>.
- </para><para>
- If you want to embolden the bitmap owned by a <see cref="T:SharpFont.GlyphSlot"/>, you should call
- <see cref="M:SharpFont.GlyphSlot.OwnBitmap"/> on the slot first.
- </para></remarks>
- <param name="library">A handle to a library object.</param>
- <param name="xStrength">
- How strong the glyph is emboldened horizontally. Expressed in 26.6 pixel format.
- </param>
- <param name="yStrength">
- How strong the glyph is emboldened vertically. Expressed in 26.6 pixel format.
- </param>
- </member>
- <member name="M:SharpFont.FTBitmap.Convert(SharpFont.Library,System.Int32)">
- <summary>
- Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, or 8bpp to a bitmap object with depth 8bpp, making the
- number of used bytes per line (a.k.a. the ‘pitch’) a multiple of ‘alignment’.
- </summary>
- <remarks><para>
- It is possible to call <see cref="M:SharpFont.FTBitmap.Convert(SharpFont.Library,System.Int32)"/> multiple times without calling
- <see cref="M:SharpFont.FTBitmap.Dispose"/> (the memory is simply reallocated).
- </para><para>
- Use <see cref="M:SharpFont.FTBitmap.Dispose"/> to finally remove the bitmap object.
- </para><para>
- The ‘library’ argument is taken to have access to FreeType's memory handling functions.
- </para></remarks>
- <param name="library">A handle to a library object.</param>
- <param name="alignment">
- The pitch of the bitmap is a multiple of this parameter. Common values are 1, 2, or 4.
- </param>
- <returns>The target bitmap.</returns>
- </member>
- <member name="M:SharpFont.FTBitmap.ToGdipBitmap">
- <summary>
- Copies the contents of the <see cref="T:SharpFont.FTBitmap"/> to a <see cref="T:System.Drawing.Bitmap"/>.
- </summary>
- <returns>A <see cref="T:System.Drawing.Bitmap"/> containing this bitmap's data.</returns>
- </member>
- <member name="M:SharpFont.FTBitmap.Dispose">
- <summary>
- Disposes an instance of the <see cref="T:SharpFont.FTBitmap"/> class.
- </summary>
- </member>
- <member name="T:SharpFont.BitmapGlyph">
- <summary>
- A structure used for bitmap glyph images. This really is a ‘sub-class’ of <see cref="T:SharpFont.Glyph"/>.
- </summary>
- <remarks><para>
- You can typecast an <see cref="T:SharpFont.Glyph"/> to <see cref="T:SharpFont.BitmapGlyph"/> if you have ‘<see cref="P:SharpFont.Glyph.Format"/> ==
- <see cref="F:SharpFont.GlyphFormat.Bitmap"/>’. This lets you access the bitmap's contents easily.
- </para><para>
- The corresponding pixel buffer is always owned by <see cref="T:SharpFont.BitmapGlyph"/> and is thus created and destroyed
- with it.
- </para></remarks>
- </member>
- <member name="P:SharpFont.BitmapGlyph.Root">
- <summary>
- Gets the root <see cref="T:SharpFont.Glyph"/> fields.
- </summary>
- </member>
- <member name="P:SharpFont.BitmapGlyph.Left">
- <summary>
- Gets the left-side bearing, i.e., the horizontal distance from the current pen position to the left border
- of the glyph bitmap.
- </summary>
- </member>
- <member name="P:SharpFont.BitmapGlyph.Top">
- <summary>
- Gets the top-side bearing, i.e., the vertical distance from the current pen position to the top border of
- the glyph bitmap. This distance is positive for upwards y!
- </summary>
- </member>
- <member name="P:SharpFont.BitmapGlyph.Bitmap">
- <summary>
- Gets a descriptor for the bitmap.
- </summary>
- </member>
- <member name="T:SharpFont.BitmapSize">
- <summary>
- This structure models the metrics of a bitmap strike (i.e., a set of
- glyphs for a given point size and resolution) in a bitmap font. It is
- used for the <see cref="P:SharpFont.Face.AvailableSizes"/> field of
- <see cref="T:SharpFont.Face"/>.
- </summary>
- <remarks><para>
- Windows FNT: The nominal size given in a FNT font is not reliable. Thus
- when the driver finds it incorrect, it sets ‘size’ to some calculated
- values and sets ‘x_ppem’ and ‘y_ppem’ to the pixel width and height
- given in the font, respectively.
- </para><para>
- TrueType embedded bitmaps: ‘size’, ‘width’, and ‘height’ values are not
- contained in the bitmap strike itself. They are computed from the
- global font parameters.
- </para></remarks>
- </member>
- <member name="P:SharpFont.BitmapSize.Height">
- <summary>
- Gets the vertical distance, in pixels, between two consecutive
- baselines. It is always positive.
- </summary>
- </member>
- <member name="P:SharpFont.BitmapSize.Width">
- <summary>
- Gets the average width, in pixels, of all glyphs in the strike.
- </summary>
- </member>
- <member name="P:SharpFont.BitmapSize.Size">
- <summary>
- Gets the nominal size of the strike in 26.6 fractional points. This
- field is not very useful.
- </summary>
- </member>
- <member name="P:SharpFont.BitmapSize.NominalWidth">
- <summary>
- Gets the horizontal ppem (nominal width) in 26.6 fractional pixels.
- </summary>
- </member>
- <member name="P:SharpFont.BitmapSize.NominalHeight">
- <summary>
- Gets the vertical ppem (nominal height) in 26.6 fractional pixels.
- </summary>
- </member>
- <member name="T:SharpFont.Cache.CMapCache">
- <summary>
- An opaque handle used to model a charmap cache. This cache is to hold character codes -> glyph indices
- mappings.
- </summary>
- </member>
- <member name="M:SharpFont.Cache.CMapCache.#ctor(SharpFont.Cache.Manager)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Cache.CMapCache"/> class.
- </summary>
- <remarks>
- Like all other caches, this one will be destroyed with the cache manager.
- </remarks>
- <param name="manager">A handle to the cache manager.</param>
- </member>
- <member name="M:SharpFont.Cache.CMapCache.Lookup(System.IntPtr,System.Int32,System.UInt32)">
- <summary>
- Translate a character code into a glyph index, using the charmap cache.
- </summary>
- <param name="faceId">The source face ID.</param>
- <param name="cmapIndex">
- The index of the charmap in the source face. Any negative value means to use the cache <see cref="T:SharpFont.Face"/>'s
- default charmap.
- </param>
- <param name="charCode">The character code (in the corresponding charmap).</param>
- <returns>Glyph index. 0 means ‘no glyph’.</returns>
- </member>
- <member name="T:SharpFont.Cache.FaceRequester">
- <summary>
- A callback function provided by client applications. It is used by the cache manager to translate a given
- FTC_FaceID into a new valid <see cref="T:SharpFont.Face"/> object, on demand.
- </summary>
- <remarks><para>
- The third parameter ‘req_data’ is the same as the one passed by the client when
- <see cref="M:SharpFont.Cache.Manager.#ctor(SharpFont.Library,System.UInt32,System.UInt32,System.UInt64,SharpFont.Cache.FaceRequester,System.IntPtr)"/> is called.
- </para><para>
- The face requester should not perform funny things on the returned face object, like creating a new
- <see cref="T:SharpFont.FTSize"/> for it, or setting a transformation through <see cref="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)"/>!
- </para></remarks>
- <param name="faceId">The face ID to resolve.</param>
- <param name="library">A handle to a FreeType library object.</param>
- <param name="requestData">Application-provided request data (see note below).</param>
- <param name="aface">A new <see cref="T:SharpFont.Face"/> handle.</param>
- <returns>FreeType error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.Cache.ImageCache">
- <summary>
- A handle to an glyph image cache object. They are designed to hold many distinct glyph images while not
- exceeding a certain memory threshold.
- </summary>
- </member>
- <member name="M:SharpFont.Cache.ImageCache.#ctor(SharpFont.Cache.Manager)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Cache.ImageCache"/> class.
- </summary>
- <param name="manager">The parent manager for the image cache.</param>
- </member>
- <member name="M:SharpFont.Cache.ImageCache.Lookup(SharpFont.Cache.ImageType,System.UInt32,SharpFont.Cache.Node@)">
- <summary>
- Retrieve a given glyph image from a glyph image cache.
- </summary>
- <remarks><para>
- The returned glyph is owned and managed by the glyph image cache. Never try to transform or discard it
- manually! You can however create a copy with <see cref="M:SharpFont.Glyph.Copy"/> and modify the new one.
- </para><para>
- If ‘node’ is not NULL, it receives the address of the cache node containing the glyph image,
- after increasing its reference count. This ensures that the node (as well as the <see cref="T:SharpFont.Glyph"/>) will
- always be kept in the cache until you call <see cref="M:SharpFont.Cache.Node.Unref(SharpFont.Cache.Manager)"/> to ‘release’ it.
- </para><para>
- If ‘node’ is NULL, the cache node is left unchanged, which means that the <see cref="T:SharpFont.Glyph"/>
- could be flushed out of the cache on the next call to one of the caching sub-system APIs. Don't assume that
- it is persistent!
- </para></remarks>
- <param name="type">A pointer to a glyph image type descriptor.</param>
- <param name="gIndex">The glyph index to retrieve.</param>
- <param name="node">
- Used to return the address of of the corresponding cache node after incrementing its reference count (see
- note below).
- </param>
- <returns>The corresponding <see cref="T:SharpFont.Glyph"/> object. 0 in case of failure.</returns>
- </member>
- <member name="M:SharpFont.Cache.ImageCache.LookupScaler(SharpFont.Cache.Scaler,SharpFont.LoadFlags,System.UInt32,SharpFont.Cache.Node@)">
- <summary>
- A variant of <see cref="M:SharpFont.Cache.ImageCache.Lookup(SharpFont.Cache.ImageType,System.UInt32,SharpFont.Cache.Node@)"/> that uses a <see cref="T:SharpFont.Cache.Scaler"/> to specify the face ID and its
- size.
- </summary>
- <remarks><para>
- The returned glyph is owned and managed by the glyph image cache. Never try to transform or discard it
- manually! You can however create a copy with <see cref="M:SharpFont.Glyph.Copy"/> and modify the new one.
- </para><para>
- If ‘node’ is not NULL, it receives the address of the cache node containing the glyph image,
- after increasing its reference count. This ensures that the node (as well as the <see cref="T:SharpFont.Glyph"/>) will
- always be kept in the cache until you call <see cref="M:SharpFont.Cache.Node.Unref(SharpFont.Cache.Manager)"/> to ‘release’ it.
- </para><para>
- If ‘node’ is NULL, the cache node is left unchanged, which means that the <see cref="T:SharpFont.Glyph"/>
- could be flushed out of the cache on the next call to one of the caching sub-system APIs. Don't assume that
- it is persistent!
- </para><para>
- Calls to <see cref="M:SharpFont.Face.SetCharSize(System.Int32,System.Int32,System.UInt32,System.UInt32)"/> and friends have no effect on cached glyphs; you should always use
- the FreeType cache API instead.
- </para></remarks>
- <param name="scaler">A pointer to a scaler descriptor.</param>
- <param name="loadFlags">The corresponding load flags.</param>
- <param name="gIndex">The glyph index to retrieve.</param>
- <param name="node">
- Used to return the address of of the corresponding cache node after incrementing its reference count (see
- note below).
- </param>
- <returns>The corresponding <see cref="T:SharpFont.Glyph"/> object. 0 in case of failure.</returns>
- </member>
- <member name="T:SharpFont.Cache.ImageType">
- <summary>
- A structure used to model the type of images in a glyph cache.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.ImageType.FaceId">
- <summary>
- Gets the face ID.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.ImageType.Width">
- <summary>
- Gets the width in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.ImageType.Height">
- <summary>
- Gets the height in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.ImageType.Flags">
- <summary>
- Gets the load flags, as in <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>
- </summary>
- </member>
- <member name="T:SharpFont.Cache.Manager">
- <summary><para>
- This object corresponds to one instance of the cache-subsystem. It is used to cache one or more
- <see cref="T:SharpFont.Face"/> objects, along with corresponding <see cref="T:SharpFont.FTSize"/> objects.
- </para><para>
- The manager intentionally limits the total number of opened <see cref="T:SharpFont.Face"/> and <see cref="T:SharpFont.FTSize"/> objects
- to control memory usage. See the ‘max_faces’ and ‘max_sizes’ parameters of
- <see cref="M:SharpFont.Cache.Manager.#ctor(SharpFont.Library,System.UInt32,System.UInt32,System.UInt64,SharpFont.Cache.FaceRequester,System.IntPtr)"/>.
- </para><para>
- The manager is also used to cache ‘nodes’ of various types while limiting their total memory usage.
- </para><para>
- All limitations are enforced by keeping lists of managed objects in most-recently-used order, and flushing old
- nodes to make room for new ones.
- </para></summary>
- </member>
- <member name="M:SharpFont.Cache.Manager.#ctor(SharpFont.Library,System.UInt32,System.UInt32,System.UInt64,SharpFont.Cache.FaceRequester,System.IntPtr)">
- <summary>
- Initializes a new instance of the Manager class.
- </summary>
- <param name="library">The parent FreeType library handle to use.</param>
- <param name="maxFaces">
- Maximum number of opened <see cref="T:SharpFont.Face"/> objects managed by this cache instance. Use 0 for defaults.
- </param>
- <param name="maxSizes">
- Maximum number of opened <see cref="T:SharpFont.FTSize"/> objects managed by this cache instance. Use 0 for defaults.
- </param>
- <param name="maxBytes">
- Maximum number of bytes to use for cached data nodes. Use 0 for defaults. Note that this value does not
- account for managed <see cref="T:SharpFont.Face"/> and <see cref="T:SharpFont.FTSize"/> objects.
- </param>
- <param name="requester">
- An application-provided callback used to translate face IDs into real <see cref="T:SharpFont.Face"/> objects.
- </param>
- <param name="requestData">
- A generic pointer that is passed to the requester each time it is called (see <see cref="T:SharpFont.Cache.FaceRequester"/>).
- </param>
- </member>
- <member name="M:SharpFont.Cache.Manager.Finalize">
- <summary>
- Finalizes an instance of the Manager class.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.Manager.IsDisposed">
- <summary>
- Gets a value indicating whether the object has been disposed.
- </summary>
- </member>
- <member name="M:SharpFont.Cache.Manager.Reset">
- <summary>
- Empty a given cache manager. This simply gets rid of all the currently cached <see cref="T:SharpFont.Face"/> and
- <see cref="T:SharpFont.FTSize"/> objects within the manager.
- </summary>
- </member>
- <member name="M:SharpFont.Cache.Manager.LookupFace(System.IntPtr)">
- <summary>
- Retrieve the <see cref="T:SharpFont.Face"/> object that corresponds to a given face ID through a cache manager.
- </summary>
- <remarks><para>
- The returned <see cref="T:SharpFont.Face"/> object is always owned by the manager. You should never try to discard it
- yourself.
- </para><para>
- The <see cref="T:SharpFont.Face"/> object doesn't necessarily have a current size object (i.e., <see cref="P:SharpFont.Face.Size"/>
- can be 0). If you need a specific ‘font size’, use <see cref="M:SharpFont.Cache.Manager.LookupSize(SharpFont.Cache.Scaler)"/> instead.
- </para><para>
- Never change the face's transformation matrix (i.e., never call the <see cref="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)"/>
- function) on a returned face! If you need to transform glyphs, do it yourself after glyph loading.
- </para><para>
- When you perform a lookup, out-of-memory errors are detected within the lookup and force incremental
- flushes of the cache until enough memory is released for the lookup to succeed.
- </para><para>
- If a lookup fails with <see cref="F:SharpFont.Error.OutOfMemory"/> the cache has already been completely flushed, and
- still no memory was available for the operation.
- </para></remarks>
- <param name="faceId">The ID of the face object.</param>
- <returns>A handle to the face object.</returns>
- </member>
- <member name="M:SharpFont.Cache.Manager.LookupSize(SharpFont.Cache.Scaler)">
- <summary>
- Retrieve the <see cref="T:SharpFont.FTSize"/> object that corresponds to a given <see cref="T:SharpFont.Cache.Scaler"/> pointer through a
- cache manager.
- </summary>
- <remarks><para>
- The returned <see cref="T:SharpFont.FTSize"/> object is always owned by the/ manager. You should never try to discard
- it by yourself.
- </para><para>
- You can access the parent <see cref="T:SharpFont.Face"/> object simply as <see cref="P:SharpFont.FTSize.Face"/> if you need it.
- Note that this object is also owned by the manager.
- </para><para>
- When you perform a lookup, out-of-memory errors are detected within the lookup and force incremental
- flushes of the cache until enough memory is released for the lookup to succeed.
- </para><para>
- If a lookup fails with <see cref="F:SharpFont.Error.OutOfMemory"/> the cache has already been completely flushed, and
- still no memory is available for the operation.
- </para></remarks>
- <param name="scaler">A scaler handle.</param>
- <returns>A handle to the size object.</returns>
- </member>
- <member name="M:SharpFont.Cache.Manager.RemoveFaceId(System.IntPtr)">
- <summary>
- A special function used to indicate to the cache manager that a given FTC_FaceID is no longer valid, either
- because its content changed, or because it was deallocated or uninstalled.
- </summary>
- <remarks><para>
- This function flushes all nodes from the cache corresponding to this ‘faceID’, with the
- exception of nodes with a non-null reference count.
- </para><para>
- Such nodes are however modified internally so as to never appear in later lookups with the same
- ‘faceID’ value, and to be immediately destroyed when released by all their users.
- </para></remarks>
- <param name="faceId">The FTC_FaceID to be removed.</param>
- </member>
- <member name="M:SharpFont.Cache.Manager.Dispose">
- <summary>
- Disposes the Manager.
- </summary>
- </member>
- <member name="T:SharpFont.Cache.Node">
- <summary><para>
- An opaque handle to a cache node object. Each cache node is reference-counted. A node with a count of 0 might
- be flushed out of a full cache whenever a lookup request is performed.
- </para><para>
- If you look up nodes, you have the ability to ‘acquire’ them, i.e., to increment their reference count. This
- will prevent the node from being flushed out of the cache until you explicitly ‘release’ it.
- </para></summary>
- <see cref="M:SharpFont.Cache.Node.Unref(SharpFont.Cache.Manager)"/>
- <seealso cref="M:SharpFont.Cache.SBitCache.Lookup(SharpFont.Cache.ImageType,System.UInt32,SharpFont.Cache.Node@)"/>
- <seealso cref="M:SharpFont.Cache.ImageCache.Lookup(SharpFont.Cache.ImageType,System.UInt32,SharpFont.Cache.Node@)"/>
- </member>
- <member name="M:SharpFont.Cache.Node.Unref(SharpFont.Cache.Manager)">
- <summary>
- Decrement a cache node's internal reference count. When the count reaches 0, it is not destroyed but
- becomes eligible for subsequent cache flushes.
- </summary>
- <param name="manager">The cache manager handle.</param>
- </member>
- <member name="T:SharpFont.Cache.SBit">
- <summary>
- A handle to a small bitmap cache. These are special cache objects used to store small glyph bitmaps (and
- anti-aliased pixmaps) in a much more efficient way than the traditional glyph image cache implemented by
- <see cref="T:SharpFont.Cache.ImageCache"/>.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Width">
- <summary>
- Gets the bitmap width in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Height">
- <summary>
- Gets the bitmap height in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Left">
- <summary>
- Gets the horizontal distance from the pen position to the left bitmap border (a.k.a. ‘left side bearing’,
- or ‘lsb’).
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Top">
- <summary>
- Gets the vertical distance from the pen position (on the baseline) to the upper bitmap border (a.k.a. ‘top
- side bearing’). The distance is positive for upwards y coordinates.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Format">
- <summary>
- Gets the format of the glyph bitmap (monochrome or gray).
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.MaxGrays">
- <summary>
- Gets the maximum gray level value (in the range 1 to 255).
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Pitch">
- <summary>
- Gets the number of bytes per bitmap line. May be positive or negative.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.AdvanceX">
- <summary>
- Gets the horizontal advance width in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.AdvanceY">
- <summary>
- Gets the vertical advance height in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.SBit.Buffer">
- <summary>
- Gets a pointer to the bitmap pixels.
- </summary>
- </member>
- <member name="T:SharpFont.Cache.SBitCache">
- <summary>
- A handle to a small bitmap cache. These are special cache objects used to store small glyph bitmaps (and
- anti-aliased pixmaps) in a much more efficient way than the traditional glyph image cache implemented by
- <see cref="T:SharpFont.Cache.ImageCache"/>.
- </summary>
- </member>
- <member name="M:SharpFont.Cache.SBitCache.#ctor(SharpFont.Cache.Manager)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Cache.SBitCache"/> class.
- </summary>
- <param name="manager">A handle to the source cache manager.</param>
- </member>
- <member name="M:SharpFont.Cache.SBitCache.Lookup(SharpFont.Cache.ImageType,System.UInt32,SharpFont.Cache.Node@)">
- <summary>
- Look up a given small glyph bitmap in a given sbit cache and ‘lock’ it to prevent its flushing from the
- cache until needed.
- </summary>
- <remarks><para>
- The small bitmap descriptor and its bit buffer are owned by the cache and should never be freed by the
- application. They might as well disappear from memory on the next cache lookup, so don't treat them as
- persistent data.
- </para><para>
- The descriptor's ‘buffer’ field is set to 0 to indicate a missing glyph bitmap.
- </para><para>
- If ‘node’ is not NULL, it receives the address of the cache node containing the bitmap, after
- increasing its reference count. This ensures that the node (as well as the image) will always be kept in
- the cache until you call <see cref="M:SharpFont.Cache.Node.Unref(SharpFont.Cache.Manager)"/> to ‘release’ it.
- </para><para>
- If ‘node’ is NULL, the cache node is left unchanged, which means that the bitmap could be
- flushed out of the cache on the next call to one of the caching sub-system APIs. Don't assume that it is
- persistent!
- </para></remarks>
- <param name="type">A pointer to the glyph image type descriptor.</param>
- <param name="gIndex">The glyph index.</param>
- <param name="node">
- Used to return the address of of the corresponding cache node after incrementing its reference count (see
- note below).
- </param>
- <returns>A handle to a small bitmap descriptor.</returns>
- </member>
- <member name="M:SharpFont.Cache.SBitCache.LookupScaler(SharpFont.Cache.Scaler,SharpFont.LoadFlags,System.UInt32,SharpFont.Cache.Node@)">
- <summary>
- A variant of <see cref="M:SharpFont.Cache.SBitCache.Lookup(SharpFont.Cache.ImageType,System.UInt32,SharpFont.Cache.Node@)"/> that uses a <see cref="T:SharpFont.Cache.Scaler"/> to specify the face ID and its
- size.
- </summary>
- <remarks><para>
- The small bitmap descriptor and its bit buffer are owned by the cache and should never be freed by the
- application. They might as well disappear from memory on the next cache lookup, so don't treat them as
- persistent data.
- </para><para>
- The descriptor's ‘buffer’ field is set to 0 to indicate a missing glyph bitmap.
- </para><para>
- If ‘node’ is not NULL, it receives the address of the cache node containing the bitmap, after
- increasing its reference count. This ensures that the node (as well as the image) will always be kept in
- the cache until you call <see cref="M:SharpFont.Cache.Node.Unref(SharpFont.Cache.Manager)"/> to ‘release’ it.
- </para><para>
- If ‘node’ is NULL, the cache node is left unchanged, which means that the bitmap could be
- flushed out of the cache on the next call to one of the caching sub-system APIs. Don't assume that it is
- persistent!
- </para></remarks>
- <param name="scaler">A pointer to the scaler descriptor.</param>
- <param name="loadFlags">The corresponding load flags.</param>
- <param name="gIndex">The glyph index.</param>
- <param name="node">
- Used to return the address of of the corresponding cache node after incrementing its reference count (see
- note below).
- </param>
- <returns>A handle to a small bitmap descriptor.</returns>
- </member>
- <member name="T:SharpFont.Cache.Scaler">
- <summary>
- A structure used to describe a given character size in either pixels or points to the cache manager.
- </summary>
- <remarks>
- This type is mainly used to retrieve <see cref="T:SharpFont.FTSize"/> objects through the cache manager.
- </remarks>
- <see cref="M:SharpFont.Cache.Manager.LookupSize(SharpFont.Cache.Scaler)"/>
- </member>
- <member name="P:SharpFont.Cache.Scaler.FaceId">
- <summary>
- Gets the source face ID.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.Scaler.Width">
- <summary>
- Gets the character width.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.Scaler.Height">
- <summary>
- Gets the character height.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.Scaler.Pixel">
- <summary>
- Gets a boolean. If true, the ‘width’ and ‘height’ fields are interpreted as integer pixel character sizes.
- Otherwise, they are expressed as 1/64th of points.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.Scaler.ResolutionX">
- <summary>
- Gets the horizontal resolution in dpi; only used when ‘pixel’ is value 0.
- </summary>
- </member>
- <member name="P:SharpFont.Cache.Scaler.ResolutionY">
- <summary>
- Gets the vertical resolution in dpi; only used when ‘pixel’ is value 0.
- </summary>
- </member>
- <member name="T:SharpFont.CharMap">
- <summary>
- The base charmap structure.
- </summary>
- </member>
- <member name="P:SharpFont.CharMap.Face">
- <summary>
- Gets a handle to the parent face object.
- </summary>
- </member>
- <member name="P:SharpFont.CharMap.Encoding">
- <summary>
- Gets an <see cref="P:SharpFont.CharMap.Encoding"/> tag identifying the charmap. Use this with
- <see cref="M:SharpFont.Face.SelectCharmap(SharpFont.Encoding)"/>.
- </summary>
- </member>
- <member name="P:SharpFont.CharMap.PlatformId">
- <summary>
- Gets an ID number describing the platform for the following encoding ID. This comes directly from the
- TrueType specification and should be emulated for other formats.
- </summary>
- </member>
- <member name="P:SharpFont.CharMap.EncodingId">
- <summary>
- Gets a platform specific encoding number. This also comes from the TrueType specification and should be
- emulated similarly.
- </summary>
- </member>
- <member name="M:SharpFont.CharMap.GetCharmapIndex">
- <summary>
- Retrieve index of a given charmap.
- </summary>
- <returns>The index into the array of character maps within the face to which ‘charmap’ belongs.</returns>
- </member>
- <member name="M:SharpFont.CharMap.GetCMapLanguageId">
- <summary>
- Return TrueType/sfnt specific cmap language ID. Definitions of language ID values are in
- ‘freetype/ttnameid.h’.
- </summary>
- <returns>
- The language ID of ‘charmap’. If ‘charmap’ doesn't belong to a TrueType/sfnt face, just return 0 as the
- default value.
- </returns>
- </member>
- <member name="M:SharpFont.CharMap.GetCMapFormat">
- <summary>
- Return TrueType/sfnt specific cmap format.
- </summary>
- <returns>The format of ‘charmap’. If ‘charmap’ doesn't belong to a TrueType/sfnt face, return -1.</returns>
- </member>
- <member name="T:SharpFont.Data">
- <summary>
- Read-only binary data represented as a pointer and a length.
- </summary>
- </member>
- <member name="P:SharpFont.Data.Pointer">
- <summary>
- Gets the data.
- </summary>
- </member>
- <member name="P:SharpFont.Data.Length">
- <summary>
- Gets the length of the data in bytes.
- </summary>
- </member>
- <member name="T:SharpFont.Encoding">
- <summary>
- An enumeration used to specify character sets supported by charmaps.
- Used in the FT_Select_Charmap API function.
- </summary>
- <remarks><para>
- Despite the name, this enumeration lists specific character repertories
- (i.e., charsets), and not text encoding methods (e.g., UTF-8, UTF-16,
- etc.).
- </para><para>
- Other encodings might be defined in the future.
- </para></remarks>
- </member>
- <member name="F:SharpFont.Encoding.None">
- <summary>
- The encoding value 0 is reserved.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.MicrosoftSymbol">
- <summary>
- Corresponds to the Microsoft Symbol encoding, used to encode
- mathematical symbols in the 32..255 character code range.
- </summary>
- <see href="http://www.ceviz.net/symbol.htm"/>
- </member>
- <member name="F:SharpFont.Encoding.Unicode">
- <summary><para>
- Corresponds to the Unicode character set. This value covers all
- versions of the Unicode repertoire, including ASCII and Latin-1.
- Most fonts include a Unicode charmap, but not all of them.
- </para><para>
- For example, if you want to access Unicode value U+1F028 (and the
- font contains it), use value 0x1F028 as the input value for
- FT_Get_Char_Index.
- </para></summary>
- </member>
- <member name="F:SharpFont.Encoding.Sjis">
- <summary>
- Corresponds to Japanese SJIS encoding.
- </summary>
- <see href="http://langsupport.japanreference.com/encoding.shtml"/>
- </member>
- <member name="F:SharpFont.Encoding.GB2312">
- <summary>
- Corresponds to an encoding system for Simplified Chinese as used
- used in mainland China.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.Big5">
- <summary>
- Corresponds to an encoding system for Traditional Chinese as used
- in Taiwan and Hong Kong.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.Wansung">
- <summary>
- Corresponds to the Korean encoding system known as Wansung.
- </summary>
- <see href="http://www.microsoft.com/typography/unicode/949.txt"/>
- </member>
- <member name="F:SharpFont.Encoding.Johab">
- <summary>
- The Korean standard character set (KS C 5601-1992), which
- corresponds to MS Windows code page 1361. This character set
- includes all possible Hangeul character combinations.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.AdobeStandard">
- <summary>
- Corresponds to the Adobe Standard encoding, as found in Type 1,
- CFF, and OpenType/CFF fonts. It is limited to 256 character codes.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.AdobeExpert">
- <summary>
- Corresponds to the Adobe Expert encoding, as found in Type 1, CFF,
- and OpenType/CFF fonts. It is limited to 256 character codes.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.AdobeCustom">
- <summary>
- Corresponds to a custom encoding, as found in Type 1, CFF, and
- OpenType/CFF fonts. It is limited to 256 character codes.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.AdobeLatin1">
- <summary>
- Corresponds to a Latin-1 encoding as defined in a Type 1 PostScript
- font. It is limited to 256 character codes.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.OldLatin2">
- <summary>
- This value is deprecated and was never used nor reported by
- FreeType. Don't use or test for it.
- </summary>
- </member>
- <member name="F:SharpFont.Encoding.AppleRoman">
- <summary>
- Corresponds to the 8-bit Apple roman encoding. Many TrueType and
- OpenType fonts contain a charmap for this encoding, since older
- versions of Mac OS are able to use it.
- </summary>
- </member>
- <member name="T:SharpFont.Fnt.Header">
- <summary>
- Windows FNT Header info.
- </summary>
- </member>
- <member name="T:SharpFont.Fnt.WinFntId">
- <summary>
- A list of valid values for the ‘charset’ byte in <see cref="T:SharpFont.Fnt.Header"/>. Exact mapping tables for the various
- cpXXXX encodings (except for cp1361) can be found at <see href="ftp://ftp.unicode.org" /> in the
- MAPPINGS/VENDORS/MICSFT/WINDOWS subdirectory. cp1361 is roughly a superset of
- MAPPINGS/OBSOLETE/EASTASIA/KSC/JOHAB.TXT.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1252">
- <summary>
- ANSI encoding. A superset of ISO 8859-1.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.Default">
- <summary>
- This is used for font enumeration and font creation as a ‘don't care’ value. Valid font files don't contain
- this value. When querying for information about the character set of the font that is currently selected
- into a specified device context, this return value (of the related Windows API) simply denotes failure.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.Symbol">
- <summary>
- There is no known mapping table available.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.Mac">
- <summary>
- Mac Roman encoding.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP932">
- <summary>
- A superset of Japanese Shift-JIS (with minor deviations).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP949">
- <summary>
- A superset of Korean Hangul KS C 5601-1987 (with different ordering and minor deviations).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1361">
- <summary>
- Korean (Johab).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP936">
- <summary>
- A superset of simplified Chinese GB 2312-1980 (with different ordering and minor deviations).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP950">
- <summary>
- A superset of traditional Chinese Big 5 ETen (with different ordering and minor deviations).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1253">
- <summary>
- A superset of Greek ISO 8859-7 (with minor modifications).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1254">
- <summary>
- A superset of Turkish ISO 8859-9.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1258">
- <summary>
- For Vietnamese. This encoding doesn't cover all necessary characters.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1255">
- <summary>
- A superset of Hebrew ISO 8859-8 (with some modifications).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1256">
- <summary>
- A superset of Arabic ISO 8859-6 (with different ordering).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1257">
- <summary>
- A superset of Baltic ISO 8859-13 (with some deviations).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1251">
- <summary>
- A superset of Russian ISO 8859-5 (with different ordering).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP874">
- <summary>
- A superset of Thai TIS 620 and ISO 8859-11.
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.CP1250">
- <summary>
- A superset of East European ISO 8859-2 (with slightly different ordering).
- </summary>
- </member>
- <member name="F:SharpFont.Fnt.WinFntId.Oem">
- <summary><para>
- From Michael Pöttgen <michael@poettgen.de>:
- The ‘Windows Font Mapping’ article says that <see cref="F:SharpFont.Fnt.WinFntId.Oem"/> is used for the charset of vector
- fonts, like ‘modern.fon’, ‘roman.fon’, and ‘script.fon’ on Windows.
- </para><para>
- The ‘CreateFont’ documentation says: The <see cref="F:SharpFont.Fnt.WinFntId.Oem"/> value specifies a character set that is
- operating-system dependent.
- </para><para>
- The ‘IFIMETRICS’ documentation from the ‘Windows Driver Development Kit’ says: This font supports an
- OEM-specific character set. The OEM character set is system dependent.
- </para><para>
- In general OEM, as opposed to ANSI (i.e., cp1252), denotes the second default codepage that most
- international versions of Windows have. It is one of the OEM codepages from
- <see href="http://www.microsoft.com/globaldev/reference/cphome.mspx"/>, and is used for the ‘DOS boxes’, to
- support legacy applications. A German Windows version for example usually uses ANSI codepage 1252 and OEM
- codepage 850.
- </para></summary>
- </member>
- <member name="T:SharpFont.ListIterator">
- <summary>
- An <see cref="T:SharpFont.FTList"/> iterator function which is called during a list parse by <see cref="M:SharpFont.FTList.Iterate(SharpFont.ListIterator,System.IntPtr)"/>.
- </summary>
- <param name="node">The current iteration list node.</param>
- <param name="user">
- A typeless pointer passed to <see cref="T:SharpFont.ListIterator"/>. Can be used to point to the iteration's state.
- </param>
- <returns>Error code.</returns>
- </member>
- <member name="T:SharpFont.ListDestructor">
- <summary>
- An <see cref="T:SharpFont.FTList"/> iterator function which is called during a list finalization by
- <see cref="M:SharpFont.FTList.Finalize(SharpFont.ListDestructor,SharpFont.Memory,System.IntPtr)"/> to destroy all elements in a given list.
- </summary>
- <param name="memory">The current system object.</param>
- <param name="data">The current object to destroy.</param>
- <param name="user">
- A typeless pointer passed to <see cref="M:SharpFont.FTList.Iterate(SharpFont.ListIterator,System.IntPtr)"/>. It can be used to point to the iteration's state.
- </param>
- </member>
- <member name="T:SharpFont.FTList">
- <summary>
- A structure used to hold a simple doubly-linked list. These are used in many parts of FreeType.
- </summary>
- </member>
- <member name="P:SharpFont.FTList.Head">
- <summary>
- Gets the head (first element) of doubly-linked list.
- </summary>
- </member>
- <member name="P:SharpFont.FTList.Tail">
- <summary>
- Gets the tail (last element) of doubly-linked list.
- </summary>
- </member>
- <member name="M:SharpFont.FTList.Find(System.IntPtr)">
- <summary>
- Find the list node for a given listed object.
- </summary>
- <param name="data">The address of the listed object.</param>
- <returns>List node. NULL if it wasn't found.</returns>
- </member>
- <member name="M:SharpFont.FTList.Add(SharpFont.ListNode)">
- <summary>
- Append an element to the end of a list.
- </summary>
- <param name="node">The node to append.</param>
- </member>
- <member name="M:SharpFont.FTList.Insert(SharpFont.ListNode)">
- <summary>
- Insert an element at the head of a list.
- </summary>
- <param name="node">The node to insert.</param>
- </member>
- <member name="M:SharpFont.FTList.Remove(SharpFont.ListNode)">
- <summary>
- Remove a node from a list. This function doesn't check whether the node is in the list!
- </summary>
- <param name="node">The node to remove.</param>
- </member>
- <member name="M:SharpFont.FTList.Up(SharpFont.ListNode)">
- <summary>
- Move a node to the head/top of a list. Used to maintain LRU lists.
- </summary>
- <param name="node">The node to move.</param>
- </member>
- <member name="M:SharpFont.FTList.Iterate(SharpFont.ListIterator,System.IntPtr)">
- <summary>
- Parse a list and calls a given iterator function on each element. Note that parsing is stopped as soon as
- one of the iterator calls returns a non-zero value.
- </summary>
- <param name="iterator">An iterator function, called on each node of the list.</param>
- <param name="user">A user-supplied field which is passed as the second argument to the iterator.</param>
- </member>
- <member name="M:SharpFont.FTList.Finalize(SharpFont.ListDestructor,SharpFont.Memory,System.IntPtr)">
- <summary>
- Destroy all elements in the list as well as the list itself.
- </summary>
- <remarks>
- This function expects that all nodes added by <see cref="M:SharpFont.FTList.Add(SharpFont.ListNode)"/> or <see cref="M:SharpFont.FTList.Insert(SharpFont.ListNode)"/> have been
- dynamically allocated.
- </remarks>
- <param name="destroy">A list destructor that will be applied to each element of the list.</param>
- <param name="memory">The current memory object which handles deallocation.</param>
- <param name="user">A user-supplied field which is passed as the last argument to the destructor.</param>
- </member>
- <member name="T:SharpFont.Internal.BBoxRec">
- <summary>
- Internally represents a BBox.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.BBox"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.Internal.BitmapRec">
- <summary>
- Internally represents a Bitmap.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.FTBitmap"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.Internal.BitmapSizeRec">
- <summary>
- Internally represents a BitmapSize.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.BitmapSize"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.Internal.CharMapRec">
- <summary>
- Internally represents a CharMap.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.CharMap"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.Internal.FaceRec">
- <summary>
- Internally represents a Face.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.Face"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.Internal.GlyphMetricsRec">
- <summary>
- Internally represents a GlyphMetrics.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.GlyphMetrics"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.Internal.GlyphSlotRec">
- <summary>
- Internally represents a GlyphSlot.
- </summary>
- <remarks>
- Refer to <see cref="T:SharpFont.GlyphSlot"/> for FreeType documentation.
- </remarks>
- </member>
- <member name="T:SharpFont.LcdFilter">
- <summary>
- A list of values to identify various types of LCD filters.
- </summary>
- </member>
- <member name="F:SharpFont.LcdFilter.None">
- <summary>
- Do not perform filtering. When used with subpixel rendering, this results in sometimes severe color
- fringes.
- </summary>
- </member>
- <member name="F:SharpFont.LcdFilter.Default">
- <summary>
- The default filter reduces color fringes considerably, at the cost of a slight blurriness in the output.
- </summary>
- </member>
- <member name="F:SharpFont.LcdFilter.Light">
- <summary>
- The light filter is a variant that produces less blurriness at the cost of slightly more color fringes than
- the default one. It might be better, depending on taste, your monitor, or your personal vision.
- </summary>
- </member>
- <member name="F:SharpFont.LcdFilter.Legacy">
- <summary><para>
- This filter corresponds to the original libXft color filter. It provides high contrast output but can
- exhibit really bad color fringes if glyphs are not extremely well hinted to the pixel grid. In other words,
- it only works well if the TrueType bytecode interpreter is enabled and high-quality hinted fonts are used.
- </para><para>
- This filter is only provided for comparison purposes, and might be disabled or stay unsupported in the
- future.
- </para></summary>
- </member>
- <member name="T:SharpFont.ListNode">
- <summary>
- A structure used to hold a single list element.
- </summary>
- </member>
- <member name="P:SharpFont.ListNode.Previous">
- <summary>
- Gets the previous element in the list. NULL if first.
- </summary>
- </member>
- <member name="P:SharpFont.ListNode.Next">
- <summary>
- Gets the next element in the list. NULL if last.
- </summary>
- </member>
- <member name="P:SharpFont.ListNode.Data">
- <summary>
- Gets a typeless pointer to the listed object.
- </summary>
- </member>
- <member name="T:SharpFont.AllocFunc">
- <summary>
- A function used to allocate ‘size’ bytes from ‘memory’.
- </summary>
- <param name="memory">A handle to the source memory manager.</param>
- <param name="size">The size in bytes to allocate.</param>
- <returns>Address of new memory block. 0 in case of failure.</returns>
- </member>
- <member name="T:SharpFont.FreeFunc">
- <summary>
- A function used to release a given block of memory.
- </summary>
- <param name="memory">A handle to the source memory manager.</param>
- <param name="block">The address of the target memory block.</param>
- </member>
- <member name="T:SharpFont.ReallocFunc">
- <summary>
- A function used to re-allocate a given block of memory.
- </summary>
- <remarks>
- In case of error, the old block must still be available.
- </remarks>
- <param name="memory">A handle to the source memory manager.</param>
- <param name="currentSize">The block's current size in bytes.</param>
- <param name="newSize">The block's requested new size.</param>
- <param name="block">The block's current address.</param>
- <returns>New block address. 0 in case of memory shortage.</returns>
- </member>
- <member name="T:SharpFont.Memory">
- <summary>
- A structure used to describe a given memory manager to FreeType 2.
- </summary>
- </member>
- <member name="P:SharpFont.Memory.User">
- <summary>
- Gets a generic typeless pointer for user data.
- </summary>
- </member>
- <member name="P:SharpFont.Memory.Allocate">
- <summary>
- Gets a pointer type to an allocation function.
- </summary>
- </member>
- <member name="P:SharpFont.Memory.Free">
- <summary>
- Gets a pointer type to an memory freeing function.
- </summary>
- </member>
- <member name="P:SharpFont.Memory.Reallocate">
- <summary>
- Gets a pointer type to a reallocation function.
- </summary>
- </member>
- <member name="T:SharpFont.ModuleConstructor">
- <summary>
- A function used to initialize (not create) a new module object.
- </summary>
- <param name="module">The module to initialize.</param>
- <returns>FreeType error code.</returns>
- </member>
- <member name="T:SharpFont.ModuleDestructor">
- <summary>
- A function used to finalize (not destroy) a given module object.
- </summary>
- <param name="module">The module to finalize.</param>
- </member>
- <member name="T:SharpFont.ModuleRequester">
- <summary>
- A function used to query a given module for a specific interface.
- </summary>
- <param name="module">The module that contains the interface.</param>
- <param name="name">The name of the interface in the module.</param>
- <returns>The interface.</returns>
- </member>
- <member name="T:SharpFont.ModuleClass">
- <summary>
- The module class descriptor.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Flags">
- <summary>
- Gets bit flags describing the module.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Size">
- <summary>
- Gets the size of one module object/instance in bytes.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Name">
- <summary>
- Gets the name of the module.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Version">
- <summary>
- Gets the version, as a 16.16 fixed number (major.minor).
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Requires">
- <summary>
- Gets the version of FreeType this module requires, as a 16.16 fixed number (major.minor). Starts at version
- 2.0, i.e., 0x20000.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Init">
- <summary>
- Gets the initializing function.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.Done">
- <summary>
- Gets the finalizing function.
- </summary>
- </member>
- <member name="P:SharpFont.ModuleClass.GetInterface">
- <summary>
- Gets the interface requesting function.
- </summary>
- </member>
- <member name="T:SharpFont.MultipleMasters.MMAxis">
- <summary><para>
- A simple structure used to model a given axis in design space for Multiple Masters fonts.
- </para><para>
- This structure can't be used for GX var fonts.
- </para></summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMAxis.Name">
- <summary>
- Gets the axis's name.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMAxis.Minimum">
- <summary>
- Gets the axis's minimum design coordinate.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMAxis.Maximum">
- <summary>
- Gets the axis's maximum design coordinate.
- </summary>
- </member>
- <member name="T:SharpFont.MultipleMasters.MMVar">
- <summary><para>
- A structure used to model the axes and space of a Multiple Masters or GX var distortable font.
- </para><para>
- Some fields are specific to one format and not to the other.
- </para></summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMVar.AxisCount">
- <summary>
- Gets the number of axes. The maximum value is 4 for MM; no limit in GX.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMVar.DesignsCount">
- <summary>
- Gets the number of designs; should be normally 2^num_axis for MM fonts. Not meaningful for GX (where every
- glyph could have a different number of designs).
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMVar.NamedStylesCount">
- <summary>
- Gets the number of named styles; only meaningful for GX which allows certain design coordinates to have a
- string ID (in the ‘name’ table) associated with them. The font can tell the user that, for example,
- Weight=1.5 is ‘Bold’.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMVar.Axis">
- <summary>
- Gets a table of axis descriptors. GX fonts contain slightly more data than MM.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MMVar.NamedStyle">
- <summary>
- Gets a table of named styles. Only meaningful with GX.
- </summary>
- </member>
- <member name="T:SharpFont.MultipleMasters.MultiMaster">
- <summary><para>
- A structure used to model the axes and space of a Multiple Masters font.
- </para><para>
- This structure can't be used for GX var fonts.
- </para></summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MultiMaster.AxisCount">
- <summary>
- Gets the number of axes. Cannot exceed 4.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MultiMaster.DesignsCount">
- <summary>
- Gets the number of designs; should be normally 2^num_axis even though the Type 1 specification strangely
- allows for intermediate designs to be present. This number cannot exceed 16.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.MultiMaster.Axis">
- <summary>
- Gets a table of axis descriptors.
- </summary>
- </member>
- <member name="T:SharpFont.MultipleMasters.VarAxis">
- <summary>
- A simple structure used to model a given axis in design space for Multiple Masters and GX var fonts.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarAxis.Name">
- <summary>
- Gets the axis's name. Not always meaningful for GX.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarAxis.Minimum">
- <summary>
- Gets the axis's minimum design coordinate.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarAxis.Default">
- <summary>
- Gets the axis's default design coordinate. FreeType computes meaningful default values for MM; it is then
- an integer value, not in 16.16 format.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarAxis.Maximum">
- <summary>
- Gets the axis's maximum design coordinate.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarAxis.Tag">
- <summary>
- Gets the axis's tag (the GX equivalent to ‘name’). FreeType provides default values for MM if possible.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarAxis.StrId">
- <summary>
- Gets the entry in ‘name’ table (another GX version of ‘name’). Not meaningful for MM.
- </summary>
- </member>
- <member name="T:SharpFont.MultipleMasters.VarNamedStyle">
- <summary><para>
- A simple structure used to model a named style in a GX var font.
- </para><para>
- This structure can't be used for MM fonts.
- </para></summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarNamedStyle.Coordinates">
- <summary>
- Gets the design coordinates for this style. This is an array with one entry for each axis.
- </summary>
- </member>
- <member name="P:SharpFont.MultipleMasters.VarNamedStyle.StrId">
- <summary>
- Gets the entry in ‘name’ table identifying this style.
- </summary>
- </member>
- <member name="T:SharpFont.OpenTypeValidationFlags">
- <summary>
- A list of bit-field constants used with <see cref="M:SharpFont.Face.OpenTypeValidate(SharpFont.OpenTypeValidationFlags,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@)"/> to indicate which OpenType tables
- should be validated.
- </summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.Base">
- <summary>Validate BASE table.</summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.Gdef">
- <summary>Validate GDEF table.</summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.Gpos">
- <summary>Validate GPOS table.</summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.Gsub">
- <summary>Validate GSUB table.</summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.Jstf">
- <summary>Validate JSTF table.</summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.Math">
- <summary>Validate MATH table.</summary>
- </member>
- <member name="F:SharpFont.OpenTypeValidationFlags.All">
- <summary>Validate all OpenType tables.</summary>
- </member>
- <member name="T:SharpFont.Orientation">
- <summary><para>
- A list of values used to describe an outline's contour orientation.
- </para><para>
- The TrueType and PostScript specifications use different conventions to determine whether outline contours
- should be filled or unfilled.
- </para></summary>
- </member>
- <member name="F:SharpFont.Orientation.TrueType">
- <summary>
- According to the TrueType specification, clockwise contours must be filled, and counter-clockwise ones must
- be unfilled.
- </summary>
- </member>
- <member name="F:SharpFont.Orientation.PostScript">
- <summary>
- According to the PostScript specification, counter-clockwise contours must be filled, and clockwise ones
- must be unfilled.
- </summary>
- </member>
- <member name="F:SharpFont.Orientation.FillRight">
- <summary>
- This is identical to <see cref="F:SharpFont.Orientation.TrueType"/>, but is used to remember that in TrueType, everything that is
- to the right of the drawing direction of a contour must be filled.
- </summary>
- </member>
- <member name="F:SharpFont.Orientation.FillLeft">
- <summary>
- This is identical to <see cref="F:SharpFont.Orientation.PostScript"/>, but is used to remember that in PostScript, everything that
- is to the left of the drawing direction of a contour must be filled.
- </summary>
- </member>
- <member name="F:SharpFont.Orientation.None">
- <summary>
- The orientation cannot be determined. That is, different parts of the glyph have different orientation.
- </summary>
- </member>
- <member name="T:SharpFont.OutlineGlyph">
- <summary>
- A structure used for outline (vectorial) glyph images. This really is a ‘sub-class’ of <see cref="T:SharpFont.Glyph"/>.
- </summary>
- <remarks><para>
- You can typecast an <see cref="T:SharpFont.Glyph"/> to <see cref="T:SharpFont.OutlineGlyph"/> if you have ‘<see cref="P:SharpFont.Glyph.Format"/>
- == <see cref="F:SharpFont.GlyphFormat.Outline"/>’. This lets you access the outline's content easily.
- </para><para>
- As the outline is extracted from a glyph slot, its coordinates are expressed normally in 26.6 pixels, unless
- the flag <see cref="F:SharpFont.LoadFlags.NoScale"/> was used in <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> or
- <see cref="M:SharpFont.Face.LoadChar(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>.
- </para><para>
- The outline's tables are always owned by the object and are destroyed with it.
- </para></remarks>
- </member>
- <member name="P:SharpFont.OutlineGlyph.Root">
- <summary>
- Gets the root <see cref="T:SharpFont.Glyph"/> fields.
- </summary>
- </member>
- <member name="P:SharpFont.OutlineGlyph.Outline">
- <summary>
- Gets a descriptor for the outline.
- </summary>
- </member>
- <member name="T:SharpFont.PInvokeHelper">
- <summary>
- Helpful methods to make marshalling simpler.
- </summary>
- </member>
- <member name="M:SharpFont.PInvokeHelper.PtrToStructure``1(System.IntPtr)">
- <summary>
- A generic wrapper for <see cref="M:System.Runtime.InteropServices.Marshal.PtrToStructure(System.IntPtr,System.Type)"/>.
- </summary>
- <typeparam name="T">The type to cast to.</typeparam>
- <param name="reference">The pointer that holds the struct.</param>
- <returns>A marshalled struct.</returns>
- </member>
- <member name="T:SharpFont.PostScript.FaceDict">
- <summary>
- A structure used to represent data in a CID top-level dictionary.
- </summary>
- </member>
- <member name="T:SharpFont.PostScript.FaceInfo">
- <summary>
- A structure used to represent CID Face information.
- </summary>
- </member>
- <member name="T:SharpFont.PostScript.FontInfo">
- <summary>
- A structure used to model a Type 1 or Type 2 FontInfo dictionary. Note that for Multiple Master fonts, each
- instance has its own FontInfo dictionary.
- </summary>
- </member>
- <member name="T:SharpFont.PostScript.Private">
- <summary>
- A structure used to model a Type 1 or Type 2 private dictionary. Note that for Multiple Master fonts, each
- instance has its own Private dictionary.
- </summary>
- </member>
- <member name="T:SharpFont.PostScript.DictionaryKeys">
- <summary>
- An enumeration used in calls to <see cref="M:SharpFont.Face.GetPSFontValue(SharpFont.PostScript.DictionaryKeys,System.UInt32,System.IntPtr@,System.Int32)"/> to identify the Type 1 dictionary entry to
- retrieve.
- </summary>
- <see href="http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF"/>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.FontType">
- <summary>
- The font's type. Type 1 fonts must have a value of 1.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.FontMatrix">
- <summary>
- The font's matrix. Typically scaled 1000:1.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.FontBBox">
- <summary>
- The font's general bounding box.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.PaintType">
- <summary>
- The font's method of painting characters. Type 1 only supports fill (0) and outline (2).
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.FontName">
- <summary>
- The font's name.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.UniqueId">
- <summary>
- A unique identifier for popular fonts assigned by Adobe.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumCharStrings">
- <summary>
- The number of characters the font can draw.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumSubrs">
- <summary>
- The number of charstring subroutines in the font.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.Subr">
- <summary>
- The font's subroutines.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.StdHW">
- <summary>
- An array with only one real number entry expressing the dominant width of horizontal stems (measured
- vertically in character space units).
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.StdVW">
- <summary>
- An array with only one real number entry expressing the dominant width of vertical stems (measured
- horizontally in character space units).
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumBlueValues">
- <summary>
- The number of BlueValues the font defines. The value must be at least 0 and at most 14. (7 integer pairs).
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.BlueValue">
- <summary>
- An array of integer pairs. The first pair must be the base overshoot position and the base-line.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.BlueFuzz">
- <summary>
- An optional entry that specifies the number of character space units to extend (in both directions) the
- effect of an alignment zone on a horizontal stem. The default value is 1.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumOtherBlues">
- <summary>
- The number of OtherBlue values. The value must be at least 0 and at most 10 (5 integer pairs).
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.OtherBlue">
- <summary>
- An optional array of integer pairs very similar to those in <see cref="F:SharpFont.PostScript.DictionaryKeys.BlueValue"/>.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumFamilyBlues">
- <summary>
- The number of FamilyBlue values.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.FamilyBlue">
- <summary>
- An array of integer pairs very similar to those in <see cref="F:SharpFont.PostScript.DictionaryKeys.BlueValue"/>.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumFamilyOtherBlues">
- <summary>
- The number of FamilyOtherBlue values.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.FamilyOtherBlue">
- <summary>
- An array of integer pairs very similar to those in <see cref="F:SharpFont.PostScript.DictionaryKeys.OtherBlue"/>.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.BlueScale">
- <summary>
- An optional entry that controls the point size at which overshoot suppression ceases. The default value is
- 0.039625.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.BlueShift">
- <summary>
- An optional entry that indicates a character space distance beyond the flat position of alignment zones at
- which overshoot enforcement for character features occurs. The default value is 7.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumStemSnapH">
- <summary>
- The number of StemSnapH values. Cannot exceed 12.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.StemSnapH">
- <summary>
- An array of up to 12 real numbers of the most common widths (including the dominant width given in the
- StdHW array) for horizontal stems (measured vertically). These widths must be sorted in increasing order.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.NumStemSnapV">
- <summary>
- The number of StemSnapV values. Cannot exceed 12.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.StemSnapV">
- <summary>
- An array of up to 12 real numbers of the most common widths (including the dominant width given in the
- StdVW array) for vertical stems (measured horizontally). These widths must be sorted in increasing order.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.ForceBold">
- <summary>
- A boolean value indicating whether to force bold characters when a regular character is drawn 1-pixel wide.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.RndStemUp">
- <summary>
- Compatibility entry. Use only for font programs in language group 1.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.MinFeature">
- <summary>
- Obsolete. Set to {16 16}. Required.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.LenIV">
- <summary>
- An integer specifying the number of random bytes at the beginning of charstrings for encryption. By default
- this value is 4.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.Password">
- <summary>
- Compatibility entry. Set to 5839.
- </summary>
- </member>
- <member name="F:SharpFont.PostScript.DictionaryKeys.LanguageGroup">
- <summary>
- Identifies the language group of the font. A value of 0 indicates a language that uses Latin, Greek,
- Cyrillic, etc. characters. A value of 1 indicates a language that consists of Chinese ideographs, Jpaanese
- Kanji, and Korean Hangul. The default value is 0.
- </summary>
- </member>
- <member name="T:SharpFont.PostScript.BlendFlags">
- <summary>
- A set of flags used to indicate which fields are present in a given blend dictionary (font info or private).
- Used to support Multiple Masters fonts.
- </summary>
- </member>
- <member name="T:SharpFont.PostScript.EncodingType">
- <summary>
- An enumeration describing the ‘Encoding’ entry in a Type 1 dictionary.
- </summary>
- </member>
- <member name="T:SharpFont.Raster">
- <summary>
- A handle (pointer) to a raster object. Each object can be used independently to convert an outline into a
- bitmap or pixmap.
- </summary>
- </member>
- <member name="T:SharpFont.RasterFlags">
- <summary>
- A list of bit flag constants as used in the ‘flags’ field of a <see cref="T:SharpFont.RasterParams"/> structure.
- </summary>
- </member>
- <member name="F:SharpFont.RasterFlags.Default">
- <summary>
- This value is 0.
- </summary>
- </member>
- <member name="F:SharpFont.RasterFlags.AntiAlias">
- <summary>
- This flag is set to indicate that an anti-aliased glyph image should be generated. Otherwise, it will be
- monochrome (1-bit).
- </summary>
- </member>
- <member name="F:SharpFont.RasterFlags.Direct">
- <summary><para>
- This flag is set to indicate direct rendering. In this mode, client applications must provide their own
- span callback. This lets them directly draw or compose over an existing bitmap. If this bit is not set, the
- target pixmap's buffer must be zeroed before rendering.
- </para><para>
- Note that for now, direct rendering is only possible with anti-aliased glyphs.
- </para></summary>
- </member>
- <member name="F:SharpFont.RasterFlags.Clip">
- <summary><para>
- This flag is only used in direct rendering mode. If set, the output will be clipped to a box specified in
- the ‘clip_box’ field of the <see cref="T:SharpFont.RasterParams"/> structure.
- </para><para>
- Note that by default, the glyph bitmap is clipped to the target pixmap, except in direct rendering mode
- where all spans are generated if no clipping box is set.
- </para></summary>
- </member>
- <member name="T:SharpFont.RasterNewFunc">
- <summary>
- A function used to create a new raster object.
- </summary>
- <remarks>
- The ‘memory’ parameter is a typeless pointer in order to avoid un-wanted dependencies on the rest of the
- FreeType code. In practice, it is an <see cref="T:SharpFont.Memory"/> object, i.e., a handle to the standard FreeType
- memory allocator. However, this field can be completely ignored by a given raster implementation.
- </remarks>
- <param name="memory">A handle to the memory allocator.</param>
- <param name="raster">A handle to the new raster object.</param>
- <returns>Error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.RasterDoneFunc">
- <summary>
- A function used to destroy a given raster object.
- </summary>
- <param name="raster">A handle to the raster object.</param>
- </member>
- <member name="T:SharpFont.RasterResetFunc">
- <summary><para>
- FreeType provides an area of memory called the ‘render pool’, available to all registered rasters. This pool
- can be freely used during a given scan-conversion but is shared by all rasters. Its content is thus transient.
- </para><para>
- This function is called each time the render pool changes, or just after a new raster object is created.
- </para></summary>
- <remarks>
- Rasters can ignore the render pool and rely on dynamic memory allocation if they want to (a handle to the
- memory allocator is passed to the raster constructor). However, this is not recommended for efficiency
- purposes.
- </remarks>
- <param name="raster">A handle to the new raster object.</param>
- <param name="pool_base">The address in memory of the render pool.</param>
- <param name="pool_size">The size in bytes of the render pool.</param>
- </member>
- <member name="T:SharpFont.RasterSetModeFunc">
- <summary>
- This function is a generic facility to change modes or attributes in a given raster. This can be used for
- debugging purposes, or simply to allow implementation-specific ‘features’ in a given raster module.
- </summary>
- <param name="raster">A handle to the new raster object.</param>
- <param name="mode">A 4-byte tag used to name the mode or property.</param>
- <param name="args">A pointer to the new mode/property to use.</param>
- </member>
- <member name="T:SharpFont.RasterRenderFunc">
- <summary>
- Invoke a given raster to scan-convert a given glyph image into a target
- bitmap.
- </summary>
- <remarks><para>
- The exact format of the source image depends on the raster's glyph format defined in its
- <see cref="T:SharpFont.RasterFuncs"/> structure. It can be an <see cref="T:SharpFont.Outline"/> or anything else in order to support a
- large array of glyph formats.
- </para><para>
- Note also that the render function can fail and return a <see cref="F:SharpFont.Error.UnimplementedFeature"/> error code if
- the raster used does not support direct composition.
- </para><para>
- XXX: For now, the standard raster doesn't support direct composition but this should change for the final
- release (see the files ‘demos/src/ftgrays.c’ and ‘demos/src/ftgrays2.c’ for examples of distinct
- implementations which support direct composition).
- </para></remarks>
- <param name="raster">A handle to the raster object.</param>
- <param name="params">
- A pointer to an <see cref="T:SharpFont.RasterParams"/> structure used to store the rendering parameters.
- </param>
- <returns>Error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.RasterFuncs">
- <summary>
- A structure used to describe a given raster class to the library.
- </summary>
- </member>
- <member name="P:SharpFont.RasterFuncs.Format">
- <summary>
- Gets the supported glyph format for this raster.
- </summary>
- </member>
- <member name="P:SharpFont.RasterFuncs.New">
- <summary>
- Gets the raster constructor.
- </summary>
- </member>
- <member name="P:SharpFont.RasterFuncs.Reset">
- <summary>
- Gets a function used to reset the render pool within the raster.
- </summary>
- </member>
- <member name="P:SharpFont.RasterFuncs.SetMode">
- <summary>
- Gets a function to set or change modes.
- </summary>
- </member>
- <member name="P:SharpFont.RasterFuncs.Render">
- <summary>
- Gets a function to render a glyph into a given bitmap.
- </summary>
- </member>
- <member name="P:SharpFont.RasterFuncs.Done">
- <summary>
- Gets the raster destructor.
- </summary>
- </member>
- <member name="T:SharpFont.RasterSpanFunc">
- <summary>
- A function used as a call-back by the anti-aliased renderer in order to let client applications draw themselves
- the gray pixel spans on each scan line.
- </summary>
- <remarks><para>
- This callback allows client applications to directly render the gray spans of the anti-aliased bitmap to any
- kind of surfaces.
- </para><para>
- This can be used to write anti-aliased outlines directly to a given background bitmap, and even perform
- translucency.
- </para><para>
- Note that the ‘count’ field cannot be greater than a fixed value defined by the ‘FT_MAX_GRAY_SPANS’
- configuration macro in ‘ftoption.h’. By default, this value is set to 32, which means that if there are more
- than 32 spans on a given scanline, the callback is called several times with the same ‘y’ parameter in order to
- draw all callbacks.
- </para><para>
- Otherwise, the callback is only called once per scan-line, and only for those scanlines that do have ‘gray’
- pixels on them.
- </para></remarks>
- <param name="y">The scanline's y coordinate.</param>
- <param name="count">The number of spans to draw on this scanline.</param>
- <param name="spans">A table of ‘count’ spans to draw on the scanline.</param>
- <param name="user">User-supplied data that is passed to the callback.</param>
- </member>
- <member name="T:SharpFont.RasterBitTestFunc">
- <summary><para>
- THIS TYPE IS DEPRECATED. DO NOT USE IT.
- </para><para>
- A function used as a call-back by the monochrome scan-converter to test whether a given target pixel is already
- set to the drawing ‘color’. These tests are crucial to implement drop-out control per-se the TrueType spec.
- </para></summary>
- <param name="y">The pixel's y coordinate.</param>
- <param name="x">The pixel's x coordinate.</param>
- <param name="user">User-supplied data that is passed to the callback.</param>
- <returns>1 if the pixel is ‘set’, 0 otherwise.</returns>
- </member>
- <member name="T:SharpFont.RasterBitSetFunc">
- <summary><para>
- THIS TYPE IS DEPRECATED. DO NOT USE IT.
- </para><para>
- A function used as a call-back by the monochrome scan-converter to set an individual target pixel. This is
- crucial to implement drop-out control according to the TrueType specification.
- </para></summary>
- <param name="y">The pixel's y coordinate.</param>
- <param name="x">The pixel's x coordinate.</param>
- <param name="user">User-supplied data that is passed to the callback.</param>
- </member>
- <member name="T:SharpFont.RasterParams">
- <summary>
- A structure to hold the arguments used by a raster's render function.
- </summary>
- <remarks><para>
- An anti-aliased glyph bitmap is drawn if the <see cref="F:SharpFont.RasterFlags.AntiAlias"/> bit flag is set in the ‘flags’
- field, otherwise a monochrome bitmap is generated.
- </para><para>
- If the <see cref="F:SharpFont.RasterFlags.Direct"/> bit flag is set in ‘flags’, the raster will call the ‘gray_spans’
- callback to draw gray pixel spans, in the case of an aa glyph bitmap, it will call ‘black_spans’, and
- ‘bit_test’ and ‘bit_set’ in the case of a monochrome bitmap. This allows direct composition over a pre-existing
- bitmap through user-provided callbacks to perform the span drawing/composition.
- </para><para>
- Note that the ‘bit_test’ and ‘bit_set’ callbacks are required when rendering a monochrome bitmap, as they are
- crucial to implement correct drop-out control as defined in the TrueType specification.
- </para></remarks>
- </member>
- <member name="P:SharpFont.RasterParams.Target">
- <summary>
- Gets the target bitmap.
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.Source">
- <summary>
- Gets a pointer to the source glyph image (e.g., an <see cref="T:SharpFont.Outline"/>).
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.Flags">
- <summary>
- Gets the rendering flags.
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.GraySpans">
- <summary>
- Gets the gray span drawing callback.
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.BlackSpans">
- <summary>
- Gets the black span drawing callback. UNIMPLEMENTED!
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.BitTest">
- <summary>
- Gets the bit test callback. UNIMPLEMENTED!
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.BitSet">
- <summary>
- Gets the bit set callback. UNIMPLEMENTED!
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.User">
- <summary>
- Gets the user-supplied data that is passed to each drawing callback.
- </summary>
- </member>
- <member name="P:SharpFont.RasterParams.ClipBox">
- <summary>
- Gets an optional clipping box. It is only used in direct rendering mode. Note that coordinates here should
- be expressed in integer pixels (and not in 26.6 fixed-point units).
- </summary>
- </member>
- <member name="T:SharpFont.Renderer">
- <summary>
- A handle to a given FreeType renderer. A renderer is a special module in charge of converting a glyph image to
- a bitmap, when necessary. Each renderer supports a given glyph image format, and one or more target surface
- depths.
- </summary>
- </member>
- <member name="T:SharpFont.RendererClass">
- <summary>
- The renderer module class descriptor.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.Root">
- <summary>
- Gets the root <see cref="T:SharpFont.ModuleClass"/> fields.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.Format">
- <summary>
- Gets the glyph image format this renderer handles.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.RenderGlyph">
- <summary>
- Gets a method used to render the image that is in a given glyph slot into a bitmap.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.TransformGlyph">
- <summary>
- Gets a method used to transform the image that is in a given glyph slot.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.GetGlyphCBox">
- <summary>
- Gets a method used to access the glyph's cbox.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.SetMode">
- <summary>
- Gets a method used to pass additional parameters.
- </summary>
- </member>
- <member name="P:SharpFont.RendererClass.RasterClass">
- <summary>
- Gets a pointer to its raster's class.
- </summary>
- <remarks>For <see cref="F:SharpFont.GlyphFormat.Outline"/> renderers only.</remarks>
- </member>
- <member name="T:SharpFont.StreamDesc">
- <summary>
- A union type used to store either a long or a pointer. This is used to store a file descriptor or a ‘FILE*’ in
- an input stream.
- </summary>
- </member>
- <member name="P:SharpFont.StreamDesc.Value">
- <summary>
- Gets the <see cref="T:SharpFont.StreamDesc"/> as a file descriptor.
- </summary>
- </member>
- <member name="P:SharpFont.StreamDesc.Pointer">
- <summary>
- Gets the <see cref="T:SharpFont.StreamDesc"/> as an input stream (FILE*).
- </summary>
- </member>
- <member name="T:SharpFont.Stroker">
- <summary>
- Opaque handler to a path stroker object.
- </summary>
- </member>
- <member name="M:SharpFont.Stroker.#ctor(SharpFont.Library)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Stroker"/> class.
- </summary>
- <param name="library">FreeType library handle.</param>
- </member>
- <member name="M:SharpFont.Stroker.Finalize">
- <summary>
- Finalizes an instance of the <see cref="T:SharpFont.Stroker"/> class.
- </summary>
- </member>
- <member name="P:SharpFont.Stroker.IsDisposed">
- <summary>
- Gets a value indicating whether the <see cref="T:SharpFont.Stroker"/> has been disposed.
- </summary>
- </member>
- <member name="M:SharpFont.Stroker.Set(System.Int32,SharpFont.StrokerLineCap,SharpFont.StrokerLineJoin,System.Int32)">
- <summary>
- Reset a stroker object's attributes.
- </summary>
- <remarks>
- The radius is expressed in the same units as the outline coordinates.
- </remarks>
- <param name="radius">The border radius.</param>
- <param name="lineCap">The line cap style.</param>
- <param name="lineJoin">The line join style.</param>
- <param name="miterLimit">
- The miter limit for the <see cref="F:SharpFont.StrokerLineJoin.MiterFixed"/> and
- <see cref="F:SharpFont.StrokerLineJoin.MiterVariable"/> line join styles, expressed as 16.16 fixed point value.
- </param>
- </member>
- <member name="M:SharpFont.Stroker.Rewind">
- <summary>
- Reset a stroker object without changing its attributes. You should call this function before beginning a
- new series of calls to <see cref="M:SharpFont.Stroker.BeginSubPath(SharpFont.FTVector,System.Boolean)"/> or <see cref="M:SharpFont.Stroker.EndSubPath"/>.
- </summary>
- </member>
- <member name="M:SharpFont.Stroker.ParseOutline(SharpFont.Outline,System.Boolean)">
- <summary>
- A convenience function used to parse a whole outline with the stroker. The resulting outline(s) can be
- retrieved later by functions like <see cref="M:SharpFont.Stroker.GetCounts(System.UInt32@,System.UInt32@)"/> and <see cref="M:SharpFont.Stroker.Export(SharpFont.Outline)"/>.
- </summary>
- <remarks><para>
- If ‘opened’ is 0 (the default), the outline is treated as a closed path, and the stroker generates two
- distinct ‘border’ outlines.
- </para><para>
- If ‘opened’ is 1, the outline is processed as an open path, and the stroker generates a single ‘stroke’
- outline.
- </para><para>
- This function calls <see cref="M:SharpFont.Stroker.Rewind"/> automatically.
- </para></remarks>
- <param name="outline">The source outline.</param>
- <param name="opened">
- A boolean. If 1, the outline is treated as an open path instead of a closed one.
- </param>
- </member>
- <member name="M:SharpFont.Stroker.BeginSubPath(SharpFont.FTVector,System.Boolean)">
- <summary>
- Start a new sub-path in the stroker.
- </summary>
- <remarks>
- This function is useful when you need to stroke a path that is not stored as an <see cref="T:SharpFont.Outline"/>
- object.
- </remarks>
- <param name="to">A pointer to the start vector.</param>
- <param name="open">A boolean. If 1, the sub-path is treated as an open one.</param>
- </member>
- <member name="M:SharpFont.Stroker.EndSubPath">
- <summary>
- Close the current sub-path in the stroker.
- </summary>
- <remarks>
- You should call this function after <see cref="M:SharpFont.Stroker.BeginSubPath(SharpFont.FTVector,System.Boolean)"/>. If the subpath was not ‘opened’, this
- function ‘draws’ a single line segment to the start position when needed.
- </remarks>
- </member>
- <member name="M:SharpFont.Stroker.LineTo(SharpFont.FTVector)">
- <summary>
- ‘Draw’ a single line segment in the stroker's current sub-path, from the last position.
- </summary>
- <remarks>
- You should call this function between <see cref="M:SharpFont.Stroker.BeginSubPath(SharpFont.FTVector,System.Boolean)"/> and <see cref="M:SharpFont.Stroker.EndSubPath"/>.
- </remarks>
- <param name="to">A pointer to the destination point.</param>
- </member>
- <member name="M:SharpFont.Stroker.ConicTo(SharpFont.FTVector,SharpFont.FTVector)">
- <summary>
- ‘Draw’ a single quadratic Bézier in the stroker's current sub-path, from the last position.
- </summary>
- <remarks>
- You should call this function between <see cref="M:SharpFont.Stroker.BeginSubPath(SharpFont.FTVector,System.Boolean)"/> and <see cref="M:SharpFont.Stroker.EndSubPath"/>.
- </remarks>
- <param name="control">A pointer to a Bézier control point.</param>
- <param name="to">A pointer to the destination point.</param>
- </member>
- <member name="M:SharpFont.Stroker.CubicTo(SharpFont.FTVector,SharpFont.FTVector,SharpFont.FTVector)">
- <summary>
- ‘Draw’ a single cubic Bézier in the stroker's current sub-path, from the last position.
- </summary>
- <remarks>
- You should call this function between <see cref="M:SharpFont.Stroker.BeginSubPath(SharpFont.FTVector,System.Boolean)"/> and <see cref="M:SharpFont.Stroker.EndSubPath"/>.
- </remarks>
- <param name="control1">A pointer to the first Bézier control point.</param>
- <param name="control2">A pointer to second Bézier control point.</param>
- <param name="to">A pointer to the destination point.</param>
- </member>
- <member name="M:SharpFont.Stroker.GetBorderCounts(SharpFont.StrokerBorder,System.UInt32@,System.UInt32@)">
- <summary>
- Call this function once you have finished parsing your paths with the stroker. It returns the number of
- points and contours necessary to export one of the ‘border’ or ‘stroke’ outlines generated by the stroker.
- </summary>
- <remarks><para>
- When an outline, or a sub-path, is ‘closed’, the stroker generates two independent ‘border’ outlines, named
- ‘left’ and ‘right’.
- </para><para>
- When the outline, or a sub-path, is ‘opened’, the stroker merges the ‘border’ outlines with caps. The
- ‘left’ border receives all points, while the ‘right’ border becomes empty.
- </para><para>
- Use the function <see cref="M:SharpFont.Stroker.GetCounts(System.UInt32@,System.UInt32@)"/> instead if you want to retrieve the counts associated to both
- borders.
- </para></remarks>
- <param name="border">The border index.</param>
- <param name="pointsCount">The number of points.</param>
- <param name="contoursCount">The number of contours.</param>
- </member>
- <member name="M:SharpFont.Stroker.ExportBorder(SharpFont.StrokerBorder,SharpFont.Outline)">
- <summary><para>
- Call this function after <see cref="M:SharpFont.Stroker.GetBorderCounts(SharpFont.StrokerBorder,System.UInt32@,System.UInt32@)"/> to export the corresponding border to your own
- <see cref="T:SharpFont.Outline"/> structure.
- </para><para>
- Note that this function appends the border points and contours to your outline, but does not try to resize
- its arrays.
- </para></summary>
- <remarks><para>
- Always call this function after <see cref="M:SharpFont.Stroker.GetBorderCounts(SharpFont.StrokerBorder,System.UInt32@,System.UInt32@)"/> to get sure that there is enough room in your
- <see cref="T:SharpFont.Outline"/> object to receive all new data.
- </para><para>
- When an outline, or a sub-path, is ‘closed’, the stroker generates two independent ‘border’ outlines, named
- ‘left’ and ‘right’.
- </para><para>
- When the outline, or a sub-path, is ‘opened’, the stroker merges the ‘border’ outlines with caps. The
- ‘left’ border receives all points, while the ‘right’ border becomes empty.
- </para><para>
- Use the function <see cref="M:SharpFont.Stroker.Export(SharpFont.Outline)"/> instead if you want to retrieve all borders at once.
- </para></remarks>
- <param name="border">The border index.</param>
- <param name="outline">The target outline handle.</param>
- </member>
- <member name="M:SharpFont.Stroker.GetCounts(System.UInt32@,System.UInt32@)">
- <summary>
- Call this function once you have finished parsing your paths with the stroker. It returns the number of
- points and contours necessary to export all points/borders from the stroked outline/path.
- </summary>
- <param name="pointsCount">The number of points.</param>
- <param name="contoursCount">The number of contours.</param>
- </member>
- <member name="M:SharpFont.Stroker.Export(SharpFont.Outline)">
- <summary><para>
- Call this function after <see cref="M:SharpFont.Stroker.GetBorderCounts(SharpFont.StrokerBorder,System.UInt32@,System.UInt32@)"/> to export all borders to your own
- <see cref="T:SharpFont.Outline"/> structure.
- </para><para>
- Note that this function appends the border points and contours to your outline, but does not try to resize
- its arrays.
- </para></summary>
- <param name="outline">The target outline handle.</param>
- </member>
- <member name="M:SharpFont.Stroker.Dispose">
- <summary>
- Disposes an instance of the <see cref="T:SharpFont.Stroker"/> class.
- </summary>
- </member>
- <member name="T:SharpFont.StrokerBorder">
- <summary>
- These values are used to select a given stroke border in <see cref="M:SharpFont.Stroker.GetBorderCounts(SharpFont.StrokerBorder,System.UInt32@,System.UInt32@)"/> and
- <see cref="M:SharpFont.Stroker.ExportBorder(SharpFont.StrokerBorder,SharpFont.Outline)"/>.
- </summary>
- <remarks><para>
- Applications are generally interested in the ‘inside’ and ‘outside’ borders. However, there is no direct
- mapping between these and the ‘left’ and ‘right’ ones, since this really depends on the glyph's drawing
- orientation, which varies between font formats.
- </para><para>
- You can however use <see cref="M:SharpFont.Outline.GetInsideBorder"/> and <see cref="M:SharpFont.Outline.GetOutsideBorder"/> to get
- these.
- </para></remarks>
- </member>
- <member name="F:SharpFont.StrokerBorder.Left">
- <summary>
- Select the left border, relative to the drawing direction.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerBorder.Right">
- <summary>
- Select the right border, relative to the drawing direction.
- </summary>
- </member>
- <member name="T:SharpFont.StrokerLineCap">
- <summary>
- These values determine how the end of opened sub-paths are rendered in a stroke.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineCap.Butt">
- <summary>
- The end of lines is rendered as a full stop on the last point itself.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineCap.Round">
- <summary>
- The end of lines is rendered as a half-circle around the last point.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineCap.Square">
- <summary>
- The end of lines is rendered as a square around the last point.
- </summary>
- </member>
- <member name="T:SharpFont.StrokerLineJoin">
- <summary>
- These values determine how two joining lines are rendered in a stroker.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineJoin.Round">
- <summary>
- Used to render rounded line joins. Circular arcs are used to join two lines smoothly.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineJoin.Bevel">
- <summary>
- Used to render beveled line joins. The outer corner of the joined lines is filled by enclosing the
- triangular region of the corner with a straight line between the outer corners of each stroke.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineJoin.MiterVariable">
- <summary>
- Used to render mitered line joins, with fixed bevels if the miter limit is exceeded. The outer edges of the
- strokes for the two segments are extended until they meet at an angle. If the segments meet at too sharp an
- angle (such that the miter would extend from the intersection of the segments a distance greater than the
- product of the miter limit value and the border radius), then a bevel join (see above) is used instead.
- This prevents long spikes being created. <see cref="F:SharpFont.StrokerLineJoin.MiterFixed"/> generates a miter line join as used in
- PostScript and PDF.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineJoin.Miter">
- <summary>
- An alias for <see cref="F:SharpFont.StrokerLineJoin.MiterVariable"/>, retained for backwards compatibility.
- </summary>
- </member>
- <member name="F:SharpFont.StrokerLineJoin.MiterFixed">
- <summary>
- Used to render mitered line joins, with variable bevels if the miter limit is exceeded. The intersection of
- the strokes is clipped at a line perpendicular to the bisector of the angle between the strokes, at the
- distance from the intersection of the segments equal to the product of the miter limit value and the border
- radius. This prevents long spikes being created. <see cref="F:SharpFont.StrokerLineJoin.MiterVariable"/> generates a mitered line join
- as used in XPS.
- </summary>
- </member>
- <member name="T:SharpFont.TrueTypeValidationFlags">
- <summary>
- A list of bit-field constants used with <see cref="M:SharpFont.Face.TrueTypeGXValidate(SharpFont.TrueTypeValidationFlags,System.Byte[][],System.UInt32)"/> to indicate which TrueTypeGX/AAT
- Type tables should be validated.
- </summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Feat">
- <summary>Validate ‘feat’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Mort">
- <summary>Validate ‘mort’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Morx">
- <summary>Validate ‘morx’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Bsln">
- <summary>Validate ‘bsln’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Just">
- <summary>Validate ‘just’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Kern">
- <summary>Validate ‘kern’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Opbd">
- <summary>Validate ‘opbd’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Trak">
- <summary>Validate ‘trak’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Prop">
- <summary>Validate ‘prop’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.Lcar">
- <summary>Validate ‘lcar’ table.</summary>
- </member>
- <member name="F:SharpFont.TrueTypeValidationFlags.All">
- <summary>Validate all TrueTypeGX tables.</summary>
- </member>
- <member name="T:SharpFont.TrueType.SfntName">
- <summary>
- A structure used to model an SFNT ‘name’ table entry.
- </summary>
- <remarks>
- Possible values for ‘platform_id’, ‘encoding_id’, ‘language_id’, and ‘name_id’ are given in the file
- ‘ttnameid.h’. For details please refer to the TrueType or OpenType specification.
- </remarks>
- <see cref="P:SharpFont.TrueType.SfntName.PlatformId"/>
- <see cref="T:SharpFont.TrueType.AppleEncodingId"/>
- <see cref="T:SharpFont.TrueType.MacEncodingId"/>
- <see cref="T:SharpFont.TrueType.MicrosoftEncodingId"/>
- </member>
- <member name="P:SharpFont.TrueType.SfntName.PlatformId">
- <summary>
- Gets the platform ID for ‘string’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.SfntName.EncodingId">
- <summary>
- Gets the encoding ID for ‘string’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.SfntName.LanguageId">
- <summary>
- Gets the language ID for ‘string’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.SfntName.NameId">
- <summary>
- Gets an identifier for ‘string’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.SfntName.String">
- <summary><para>
- Gets the ‘name’ string. Note that its format differs depending on the (platform,encoding) pair. It can be a
- Pascal String, a UTF-16 one, etc.
- </para><para>
- Generally speaking, the string is not zero-terminated. Please refer to the TrueType specification for
- details.
- </para></summary>
- </member>
- <member name="T:SharpFont.TrueType.AppleEncodingId">
- <summary>
- A list of valid values for the ‘encoding_id’ for TT_PLATFORM_APPLE_UNICODE charmaps and name entries.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.AppleEncodingId.Default">
- <summary>Unicode version 1.0.</summary>
- </member>
- <member name="F:SharpFont.TrueType.AppleEncodingId.Unicode11">
- <summary>Unicode 1.1; specifies Hangul characters starting at U+34xx.</summary>
- </member>
- <member name="F:SharpFont.TrueType.AppleEncodingId.Iso10646">
- <summary>Deprecated (identical to preceding).</summary>
- </member>
- <member name="F:SharpFont.TrueType.AppleEncodingId.Unicode20">
- <summary>Unicode 2.0 and beyond (UTF-16 BMP only).</summary>
- </member>
- <member name="F:SharpFont.TrueType.AppleEncodingId.Unicode32">
- <summary>Unicode 3.1 and beyond, using UTF-32.</summary>
- </member>
- <member name="F:SharpFont.TrueType.AppleEncodingId.VariantSelector">
- <summary>From Adobe, not Apple. Not a normal cmap. Specifies variations on a real cmap.</summary>
- </member>
- <member name="T:SharpFont.TrueType.MacEncodingId">
- <summary>
- A list of valid values for the ‘encoding_id’ for TT_PLATFORM_MACINTOSH charmaps and name entries.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Roman">
- <summary>Roman encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Japanese">
- <summary>Japanese encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.TraditionalChinese">
- <summary>Traditional Chinese encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Korean">
- <summary>Korean encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Arabic">
- <summary>Arabic encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Hebrew">
- <summary>Hebrew encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Greek">
- <summary>Greek encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Russian">
- <summary>Russian encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.RSymbol">
- <summary>RSymbol encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Devanagari">
- <summary>Devanagari encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Gurmukhi">
- <summary>Gurmukhi encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Gujarati">
- <summary>Gujarati encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Oriya">
- <summary>Oriya encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Bengali">
- <summary>Bengali encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Tamil">
- <summary>Tamil encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Telugu">
- <summary>Telugu encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Kannada">
- <summary>Kannada encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Malayalam">
- <summary>Malayalam encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Sinhalese">
- <summary>Sinhalese encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Burmese">
- <summary>Burmese encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Khmer">
- <summary>Khmer encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Thai">
- <summary>Thai encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Laotian">
- <summary>Laotian encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Georgian">
- <summary>Georgian encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Armenian">
- <summary>Amernian encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Maldivian">
- <summary>Maldivian encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.SimplifiedChinese">
- <summary>Simplified Chinese encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Tibetan">
- <summary>Tibetan encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Mongolian">
- <summary>Mongolian encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Geez">
- <summary>Geez encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Slavic">
- <summary>Slavic encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Vietnamese">
- <summary>Vietnamese encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Sindhi">
- <summary>Sindhi encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.MacEncodingId.Uninterpreted">
- <summary>No encoding specified.</summary>
- </member>
- <member name="T:SharpFont.TrueType.MicrosoftEncodingId">
- <summary>
- A list of valid values for the ‘encoding_id’ for TT_PLATFORM_MICROSOFT charmaps and name entries.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Symbol">
- <summary>
- Corresponds to Microsoft symbol encoding. See FT_ENCODING_MS_SYMBOL.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Unicode">
- <summary>
- Corresponds to a Microsoft WGL4 charmap, matching Unicode. See FT_ENCODING_UNICODE.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Sjis">
- <summary>
- Corresponds to SJIS Japanese encoding. See FT_ENCODING_SJIS.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.GB2312">
- <summary>
- Corresponds to Simplified Chinese as used in Mainland China. See FT_ENCODING_GB2312.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Big5">
- <summary>
- Corresponds to Traditional Chinese as used in Taiwan and Hong Kong. See FT_ENCODING_BIG5.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Wansung">
- <summary>
- Corresponds to Korean Wansung encoding. See FT_ENCODING_WANSUNG.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Johab">
- <summary>
- Corresponds to Johab encoding. See FT_ENCODING_JOHAB.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.MicrosoftEncodingId.Ucs4">
- <summary>
- Corresponds to UCS-4 or UTF-32 charmaps. This has been added to the OpenType specification version 1.4
- (mid-2001.)
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.AdobeEncodingId">
- <summary>
- A list of valid values for the ‘encoding_id’ for TT_PLATFORM_ADOBE charmaps. This is a FreeType-specific
- extension!
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.AdobeEncodingId.Standard">
- <summary>Adobe standard encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.AdobeEncodingId.Expert">
- <summary>Adobe expert encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.AdobeEncodingId.Custom">
- <summary>Adobe custom encoding.</summary>
- </member>
- <member name="F:SharpFont.TrueType.AdobeEncodingId.Latin1">
- <summary>Adobe Latin 1 encoding.</summary>
- </member>
- <member name="T:SharpFont.TrueType.Header">
- <summary>
- A structure used to model a TrueType font header table. All fields follow the TrueType specification.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.HoriHeader">
- <summary>
- A structure used to model a TrueType horizontal header, the ‘hhea’ table, as well as the corresponding
- horizontal metrics table, i.e., the ‘hmtx’ table.
- </summary>
- <remarks><para>
- IMPORTANT: The <see cref="T:SharpFont.TrueType.HoriHeader"/> and <see cref="T:SharpFont.TrueType.VertHeader"/> structures should be identical except for
- the names of their fields which are different.
- </para><para>
- This ensures that a single function in the ‘ttload’ module is able to read both the horizontal and vertical
- headers.
- </para></remarks>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.Version">
- <summary>
- Gets the table version.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.Ascender">
- <summary><para>
- Gets the font's ascender, i.e., the distance from the baseline to the top-most of all glyph points found in
- the font.
- </para><para>
- This value is invalid in many fonts, as it is usually set by the font designer, and often reflects only a
- portion of the glyphs found in the font (maybe ASCII).
- </para><para>
- You should use the ‘sTypoAscender’ field of the OS/2 table instead if you want the correct one.
- </para></summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.Descender">
- <summary><para>
- Gets the font's descender, i.e., the distance from the baseline to the bottom-most of all glyph points
- found in the font. It is negative.
- </para><para>
- This value is invalid in many fonts, as it is usually set by the font designer, and often reflects only a
- portion of the glyphs found in the font (maybe ASCII).
- </para><para>
- You should use the ‘sTypoDescender’ field of the OS/2 table instead if you want the correct one.
- </para></summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.LineGap">
- <summary>
- Gets the font's line gap, i.e., the distance to add to the ascender and descender to get the BTB, i.e., the
- baseline-to-baseline distance for the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.AdvanceWidthMax">
- <summary>
- Gets the maximum of all advance widths found in the font. It can be used to compute the maximum width of an
- arbitrary string of text.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.MinimumLeftSideBearing">
- <summary>
- Gets the minimum left side bearing of all glyphs within the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.MinimumRightSideBearing">
- <summary>
- Gets the minimum right side bearing of all glyphs within the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.MaximumExtentX">
- <summary>
- Gets the maximum horizontal extent (i.e., the ‘width’ of a glyph's bounding box) for all glyphs in the
- font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.CaretSlopeRise">
- <summary>
- Gets the rise coefficient of the cursor's slope of the cursor (slope=rise/run).
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.CaretSlopeRun">
- <summary>
- Gets the run coefficient of the cursor's slope.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.Reserved">
- <summary>
- Gets the 8 reserved bytes.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.MetricDataFormat">
- <summary>
- Gets 0, always.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.HMetricsCount">
- <summary>
- Gets the number of HMetrics entries in the ‘hmtx’ table -- this value can be smaller than the total number
- of glyphs in the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.LongMetrics">
- <summary>
- Gets a pointer into the ‘hmtx’ table.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.HoriHeader.ShortMetrics">
- <summary>
- Gets a pointer into the ‘hmtx’ table.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.MaxProfile">
- <summary>
- The maximum profile is a table containing many max values which can be used to pre-allocate arrays. This
- ensures that no memory allocation occurs during a glyph load.
- </summary>
- <remarks>
- This structure is only used during font loading.
- </remarks>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.Version">
- <summary>
- Gets the version number.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.GlyphCount">
- <summary>
- Gets the number of glyphs in this TrueType font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxPoints">
- <summary>
- Gets the maximum number of points in a non-composite TrueType glyph. See also the structure element
- ‘maxCompositePoints’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxContours">
- <summary>
- Gets the maximum number of contours in a non-composite TrueType glyph. See also the structure element
- ‘maxCompositeContours’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxCompositePoints">
- <summary>
- Gets the maximum number of points in a composite TrueType glyph. See also the structure element
- ‘maxPoints’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxCompositeContours">
- <summary>
- Gets the maximum number of contours in a composite TrueType glyph. See also the structure element
- ‘maxContours’.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxZones">
- <summary>
- Gets the maximum number of zones used for glyph hinting.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxTwilightPoints">
- <summary>
- Gets the maximum number of points in the twilight zone used for glyph hinting.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxStorage">
- <summary>
- Gets the maximum number of elements in the storage area used for glyph hinting.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxFunctionDefs">
- <summary>
- Gets the maximum number of function definitions in the TrueType bytecode for this font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxInstructionDefs">
- <summary>
- Gets the maximum number of instruction definitions in the TrueType bytecode for this font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxStackElements">
- <summary>
- Gets the maximum number of stack elements used during bytecode interpretation.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxSizeOfInstructions">
- <summary>
- Gets the maximum number of TrueType opcodes used for glyph hinting.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxComponentElements">
- <summary>
- Gets the maximum number of simple (i.e., non- composite) glyphs in a composite glyph.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.MaxProfile.MaxComponentDepth">
- <summary>
- Gets the maximum nesting depth of composite glyphs.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.OS2">
- <summary><para>
- A structure used to model a TrueType OS/2 table. This is the long table version. All fields comply to the
- TrueType specification.
- </para><para>
- Note that we now support old Mac fonts which do not include an OS/2 table. In this case, the ‘version’ field is
- always set to 0xFFFF.
- </para></summary>
- </member>
- <member name="T:SharpFont.TrueType.Pclt">
- <summary>
- A structure used to model a TrueType PCLT table. All fields comply to the TrueType specification.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.PlatformId">
- <summary>
- A list of valid values for the ‘platform_id’ identifier code in <see cref="T:SharpFont.CharMap"/> and
- <see cref="T:SharpFont.TrueType.SfntName"/> structures.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.PlatformId.AppleUnicode">
- <summary>
- Used by Apple to indicate a Unicode character map and/or name entry. See TT_APPLE_ID_XXX for corresponding
- ‘encoding_id’ values. Note that name entries in this format are coded as big-endian UCS-2 character codes
- only.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.PlatformId.Macintosh">
- <summary>
- Used by Apple to indicate a MacOS-specific charmap and/or name entry. See TT_MAC_ID_XXX for corresponding
- ‘encoding_id’ values. Note that most TrueType fonts contain an Apple roman charmap to be usable on MacOS
- systems (even if they contain a Microsoft charmap as well).
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.PlatformId.Iso">
- <summary>
- This value was used to specify ISO/IEC 10646 charmaps. It is however now deprecated. See TT_ISO_ID_XXX for
- a list of corresponding ‘encoding_id’ values.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.PlatformId.Microsoft">
- <summary>
- Used by Microsoft to indicate Windows-specific charmaps. See TT_MS_ID_XXX for a list of corresponding
- ‘encoding_id’ values. Note that most fonts contain a Unicode charmap using (TT_PLATFORM_MICROSOFT,
- TT_MS_ID_UNICODE_CS).
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.PlatformId.Custom">
- <summary>
- Used to indicate application-specific charmaps.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.PlatformId.Adobe">
- <summary>
- This value isn't part of any font format specification, but is used by FreeType to report Adobe-specific
- charmaps in an <see cref="T:SharpFont.CharMap"/> structure. See TT_ADOBE_ID_XXX.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.EngineType">
- <summary>
- A list of values describing which kind of TrueType bytecode engine is implemented in a given
- <see cref="T:SharpFont.Library"/> instance. It is used by the <see cref="M:SharpFont.Library.GetTrueTypeEngineType"/> function.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.EngineType.None">
- <summary>
- The library doesn't implement any kind of bytecode interpreter.
- </summary>
- </member>
- <member name="F:SharpFont.TrueType.EngineType.Unpatented">
- <summary><para>
- The library implements a bytecode interpreter that doesn't support the patented operations of the TrueType
- virtual machine.
- </para><para>
- Its main use is to load certain Asian fonts which position and scale glyph components with bytecode
- instructions. It produces bad output for most other fonts.
- </para></summary>
- </member>
- <member name="F:SharpFont.TrueType.EngineType.Patented">
- <summary>
- The library implements a bytecode interpreter that covers the full instruction set of the TrueType virtual
- machine (this was governed by patents until May 2010, hence the name).
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.Postscript">
- <summary>
- A structure used to model a TrueType PostScript table. All fields comply to the TrueType specification. This
- structure does not reference the PostScript glyph names, which can be nevertheless accessed with the ‘ttpost’
- module.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.SfntTag">
- <summary>
- An enumeration used to specify the index of an SFNT table. Used in the <see cref="M:SharpFont.Face.GetSfntTable(SharpFont.TrueType.SfntTag)"/> API
- function.
- </summary>
- </member>
- <member name="T:SharpFont.TrueType.VertHeader">
- <summary>
- A structure used to model a TrueType vertical header, the ‘vhea’ table, as well as the corresponding vertical
- metrics table, i.e., the ‘vmtx’ table.
- </summary>
- <remarks><para>
- IMPORTANT: The <see cref="T:SharpFont.TrueType.HoriHeader"/> and <see cref="T:SharpFont.TrueType.VertHeader"/> structures should be identical except for
- the names of their fields which are different.
- </para><para>
- This ensures that a single function in the ‘ttload’ module is able to read both the horizontal and vertical
- headers.
- </para></remarks>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.Version">
- <summary>
- Gets the table version.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.Ascender">
- <summary><para>
- Gets the font's ascender, i.e., the distance from the baseline to the top-most of all glyph points found in
- the font.
- </para><para>
- This value is invalid in many fonts, as it is usually set by the font designer, and often reflects only a
- portion of the glyphs found in the font (maybe ASCII).
- </para><para>
- You should use the ‘sTypoAscender’ field of the OS/2 table instead if you want the correct one.
- </para></summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.Descender">
- <summary><para>
- Gets the font's descender, i.e., the distance from the baseline to the bottom-most of all glyph points
- found in the font. It is negative.
- </para><para>
- This value is invalid in many fonts, as it is usually set by the font designer, and often reflects only a
- portion of the glyphs found in the font (maybe ASCII).
- </para><para>
- You should use the ‘sTypoDescender’ field of the OS/2 table instead if you want the correct one.
- </para></summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.LineGap">
- <summary>
- Gets the font's line gap, i.e., the distance to add to the ascender and descender to get the BTB, i.e., the
- baseline-to-baseline distance for the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.AdvanceHeightMax">
- <summary>
- Gets the maximum of all advance heights found in the font. It can be used to compute the maximum height of
- an arbitrary string of text.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.MinimumTopSideBearing">
- <summary>
- Gets the minimum top side bearing of all glyphs within the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.MinimumBottomSideBearing">
- <summary>
- Gets the minimum bottom side bearing of all glyphs within the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.MaximumExtentY">
- <summary>
- Gets the maximum vertical extent (i.e., the ‘height’ of a glyph's bounding box) for all glyphs in the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.CaretSlopeRise">
- <summary>
- Gets the rise coefficient of the cursor's slope of the cursor (slope=rise/run).
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.CaretSlopeRun">
- <summary>
- Gets the run coefficient of the cursor's slope.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.Reserved">
- <summary>
- Gets the 8 reserved bytes.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.MetricDataFormat">
- <summary>
- Gets 0, always.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.VMetricsCount">
- <summary>
- Gets the number of VMetrics entries in the ‘vmtx’ table -- this value can be smaller than the total number
- of glyphs in the font.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.LongMetrics">
- <summary>
- Gets a pointer into the ‘vmtx’ table.
- </summary>
- </member>
- <member name="P:SharpFont.TrueType.VertHeader.ShortMetrics">
- <summary>
- Gets a pointer into the ‘vmtx’ table.
- </summary>
- </member>
- <member name="T:SharpFont.Error">
- <summary>
- FreeType error codes.
- </summary>
- </member>
- <member name="F:SharpFont.Error.Ok">
- <summary>No error.</summary>
- </member>
- <member name="F:SharpFont.Error.CannotOpenResource">
- <summary>Cannot open resource.</summary>
- </member>
- <member name="F:SharpFont.Error.UnknownFileFormat">
- <summary>Unknown file format.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidFileFormat">
- <summary>Broken file.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidVersion">
- <summary>Invalid FreeType version.</summary>
- </member>
- <member name="F:SharpFont.Error.LowerModuleVersion">
- <summary>Module version is too low.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidArgument">
- <summary>Invalid argument.</summary>
- </member>
- <member name="F:SharpFont.Error.UnimplementedFeature">
- <summary>Unimplemented feature.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidTable">
- <summary>Broken table.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidOffset">
- <summary>Broken offset within table.</summary>
- </member>
- <member name="F:SharpFont.Error.ArrayTooLarge">
- <summary>Array allocation size too large.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidGlyphIndex">
- <summary>Invalid glyph index.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidCharacterCode">
- <summary>Invalid character code.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidGlyphFormat">
- <summary>Unsupported glyph image format.</summary>
- </member>
- <member name="F:SharpFont.Error.CannotRenderGlyph">
- <summary>Cannot render this glyph format.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidOutline">
- <summary>Invalid outline.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidComposite">
- <summary>Invalid composite glyph.</summary>
- </member>
- <member name="F:SharpFont.Error.TooManyHints">
- <summary>Too many hints.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidPixelSize">
- <summary>Invalid pixel size.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidHandle">
- <summary>Invalid object handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidLibraryHandle">
- <summary>Invalid library handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidDriverHandle">
- <summary>Invalid module handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidFaceHandle">
- <summary>Invalid face handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidSizeHandle">
- <summary>Invalid size handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidSlotHandle">
- <summary>Invalid glyph slot handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidCharMapHandle">
- <summary>Invalid charmap handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidCacheHandle">
- <summary>Invalid cache manager handle.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidStreamHandle">
- <summary>Invalid stream handle.</summary>
- </member>
- <member name="F:SharpFont.Error.TooManyDrivers">
- <summary>Too many modules.</summary>
- </member>
- <member name="F:SharpFont.Error.TooManyExtensions">
- <summary>Too many extensions.</summary>
- </member>
- <member name="F:SharpFont.Error.OutOfMemory">
- <summary>Out of memory.</summary>
- </member>
- <member name="F:SharpFont.Error.UnlistedObject">
- <summary>Unlisted object.</summary>
- </member>
- <member name="F:SharpFont.Error.CannotOpenStream">
- <summary>Cannot open stream.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidStreamSeek">
- <summary>Invalid stream seek.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidStreamSkip">
- <summary>Invalid stream skip.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidStreamRead">
- <summary>Invalid stream read.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidStreamOperation">
- <summary>Invalid stream operation.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidFrameOperation">
- <summary>Invalid frame operation.</summary>
- </member>
- <member name="F:SharpFont.Error.NestedFrameAccess">
- <summary>Nested frame access.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidFrameRead">
- <summary>Invalid frame read.</summary>
- </member>
- <member name="F:SharpFont.Error.RasterUninitialized">
- <summary>Raster uninitialized.</summary>
- </member>
- <member name="F:SharpFont.Error.RasterCorrupted">
- <summary>Raster corrupted.</summary>
- </member>
- <member name="F:SharpFont.Error.RasterOverflow">
- <summary>Raster overflow.</summary>
- </member>
- <member name="F:SharpFont.Error.RasterNegativeHeight">
- <summary>Negative height while rastering.</summary>
- </member>
- <member name="F:SharpFont.Error.TooManyCaches">
- <summary>Too many registered caches.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidOpCode">
- <summary>Invalid opcode.</summary>
- </member>
- <member name="F:SharpFont.Error.TooFewArguments">
- <summary>Too few arguments.</summary>
- </member>
- <member name="F:SharpFont.Error.StackOverflow">
- <summary>Stack overflow.</summary>
- </member>
- <member name="F:SharpFont.Error.CodeOverflow">
- <summary>Code overflow.</summary>
- </member>
- <member name="F:SharpFont.Error.BadArgument">
- <summary>Bad argument.</summary>
- </member>
- <member name="F:SharpFont.Error.DivideByZero">
- <summary>Division by zero.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidReference">
- <summary>Invalid reference.</summary>
- </member>
- <member name="F:SharpFont.Error.DebugOpCode">
- <summary>Found debug opcode.</summary>
- </member>
- <member name="F:SharpFont.Error.EndfInExecStream">
- <summary>Found ENDF opcode in execution stream.</summary>
- </member>
- <member name="F:SharpFont.Error.NestedDefs">
- <summary>Nested DEFS.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidCodeRange">
- <summary>Invalid code range.</summary>
- </member>
- <member name="F:SharpFont.Error.ExecutionTooLong">
- <summary>Execution context too long.</summary>
- </member>
- <member name="F:SharpFont.Error.TooManyFunctionDefs">
- <summary>Too many function definitions.</summary>
- </member>
- <member name="F:SharpFont.Error.TooManyInstructionDefs">
- <summary>Too many instruction definitions.</summary>
- </member>
- <member name="F:SharpFont.Error.TableMissing">
- <summary>SFNT font table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.HorizHeaderMissing">
- <summary>Horizontal header (hhea) table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.LocationsMissing">
- <summary>Locations (loca) table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.NameTableMissing">
- <summary>Name table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.CMapTableMissing">
- <summary>Character map (cmap) table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.HmtxTableMissing">
- <summary>Horizontal metrics (hmtx) table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.PostTableMissing">
- <summary>PostScript (post) table missing.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidHorizMetrics">
- <summary>Invalid horizontal metrics.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidCharMapFormat">
- <summary>Invalid character map (cmap) format.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidPPem">
- <summary>Invalid ppem value.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidVertMetrics">
- <summary>Invalid vertical metrics.</summary>
- </member>
- <member name="F:SharpFont.Error.CouldNotFindContext">
- <summary>Could not find context.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidPostTableFormat">
- <summary>Invalid PostScript (post) table format.</summary>
- </member>
- <member name="F:SharpFont.Error.InvalidPostTable">
- <summary>Invalid PostScript (post) table.</summary>
- </member>
- <member name="F:SharpFont.Error.SyntaxError">
- <summary>Opcode syntax error.</summary>
- </member>
- <member name="F:SharpFont.Error.StackUnderflow">
- <summary>Argument stack underflow.</summary>
- </member>
- <member name="F:SharpFont.Error.Ignore">
- <summary>Ignore this error.</summary>
- </member>
- <member name="F:SharpFont.Error.NoUnicodeGlyphName">
- <summary>No Unicode glyph name found.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingStartfontField">
- <summary>`STARTFONT' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingFontField">
- <summary>`FONT' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingSizeField">
- <summary>`SIZE' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingFontboudingboxField">
- <summary>`FONTBOUNDINGBOX' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingCharsField">
- <summary>`CHARS' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingStartcharField">
- <summary>`STARTCHAR' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingEncodingField">
- <summary>`ENCODING' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.MissingBbxField">
- <summary>`BBX' field missing.</summary>
- </member>
- <member name="F:SharpFont.Error.BbxTooBig">
- <summary>`BBX' too big.</summary>
- </member>
- <member name="F:SharpFont.Error.CorruptedFontHeader">
- <summary>Font header corrupted or missing fields.</summary>
- </member>
- <member name="F:SharpFont.Error.CorruptedFontGlyphs">
- <summary>Font glyphs corrupted or missing fields.</summary>
- </member>
- <member name="T:SharpFont.Face">
- <summary>
- FreeType root face class structure. A face object models a typeface in a font file.
- </summary>
- <remarks>
- Fields may be changed after a call to <see cref="M:SharpFont.Face.AttachFile(System.String)"/> or <see cref="M:SharpFont.Face.AttachStream(SharpFont.OpenArgs)"/>.
- </remarks>
- </member>
- <member name="M:SharpFont.Face.#ctor(SharpFont.Library,System.String)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Face"/> class with a default faceIndex of 0.
- </summary>
- <param name="library">The parent library.</param>
- <param name="path">The path of the font file.</param>
- </member>
- <member name="M:SharpFont.Face.#ctor(SharpFont.Library,System.String,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Face"/> class.
- </summary>
- <param name="library">The parent library.</param>
- <param name="path">The path of the font file.</param>
- <param name="faceIndex">The index of the face to take from the file.</param>
- </member>
- <member name="M:SharpFont.Face.#ctor(SharpFont.Library,System.Byte[],System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Face"/> class from a file that's already loaded into memory.
- </summary>
- <param name="library">The parent library.</param>
- <param name="file">The loaded file.</param>
- <param name="faceIndex">The index of the face to take from the file.</param>
- </member>
- <member name="M:SharpFont.Face.#ctor(System.IntPtr,SharpFont.Library)">
- <summary>
- Initializes a new instance of the Face class.
- </summary>
- <param name="reference">A pointer to the unmanaged memory containing the Face.</param>
- <param name="parent">The parent <see cref="T:SharpFont.Library"/>.</param>
- </member>
- <member name="M:SharpFont.Face.Finalize">
- <summary>
- Finalizes an instance of the Face class.
- </summary>
- </member>
- <member name="P:SharpFont.Face.IsDisposed">
- <summary>
- Gets a value indicating whether the object has been disposed.
- </summary>
- </member>
- <member name="P:SharpFont.Face.FaceCount">
- <summary>
- Gets the number of faces in the font file. Some font formats can have multiple faces in a font file.
- </summary>
- </member>
- <member name="P:SharpFont.Face.FaceIndex">
- <summary>
- Gets the index of the face in the font file. It is set to 0 if there is only one face in the font file.
- </summary>
- </member>
- <member name="P:SharpFont.Face.FaceFlags">
- <summary>
- Gets a set of bit flags that give important information about the face.
- </summary>
- <see cref="P:SharpFont.Face.FaceFlags"/>
- </member>
- <member name="P:SharpFont.Face.StyleFlags">
- <summary>
- Gets a set of bit flags indicating the style of the face.
- </summary>
- <see cref="P:SharpFont.Face.StyleFlags"/>
- </member>
- <member name="P:SharpFont.Face.GlyphCount">
- <summary><para>
- Gets the number of glyphs in the face. If the face is scalable and has sbits (see ‘num_fixed_sizes’), it is
- set to the number of outline glyphs.
- </para><para>
- For CID-keyed fonts, this value gives the highest CID used in the font.
- </para></summary>
- </member>
- <member name="P:SharpFont.Face.FamilyName">
- <summary>
- Gets the face's family name. This is an ASCII string, usually in English, which describes the typeface's
- family (like ‘Times New Roman’, ‘Bodoni’, ‘Garamond’, etc). This is a least common denominator used to list
- fonts. Some formats (TrueType & OpenType) provide localized and Unicode versions of this string.
- Applications should use the format specific interface to access them. Can be NULL (e.g., in fonts embedded
- in a PDF file).
- </summary>
- </member>
- <member name="P:SharpFont.Face.StyleName">
- <summary>
- Gets the face's style name. This is an ASCII string, usually in English, which describes the typeface's
- style (like ‘Italic’, ‘Bold’, ‘Condensed’, etc). Not all font formats provide a style name, so this field
- is optional, and can be set to NULL. As for ‘family_name’, some formats provide localized and Unicode
- versions of this string. Applications should use the format specific interface to access them.
- </summary>
- </member>
- <member name="P:SharpFont.Face.FixedSizesCount">
- <summary>
- Gets the number of bitmap strikes in the face. Even if the face is scalable, there might still be bitmap
- strikes, which are called ‘sbits’ in that case.
- </summary>
- </member>
- <member name="P:SharpFont.Face.AvailableSizes">
- <summary>
- Gets an array of FT_Bitmap_Size for all bitmap strikes in the face. It is set to NULL if there is no bitmap
- strike.
- </summary>
- </member>
- <member name="P:SharpFont.Face.CharmapsCount">
- <summary>
- Gets the number of charmaps in the face.
- </summary>
- </member>
- <member name="P:SharpFont.Face.CharMaps">
- <summary>
- Gets an array of the charmaps of the face.
- </summary>
- </member>
- <member name="P:SharpFont.Face.Generic">
- <summary>
- Gets or sets a field reserved for client uses.
- </summary>
- <see cref="P:SharpFont.Face.Generic"/>
- </member>
- <member name="P:SharpFont.Face.BBox">
- <summary><para>
- Gets the font bounding box. Coordinates are expressed in font units (see ‘units_per_EM’). The box is large
- enough to contain any glyph from the font. Thus, ‘bbox.yMax’ can be seen as the ‘maximal ascender’, and
- ‘bbox.yMin’ as the ‘minimal descender’. Only relevant for scalable formats.
- </para><para>
- Note that the bounding box might be off by (at least) one pixel for hinted fonts. See FT_Size_Metrics for
- further discussion.
- </para></summary>
- </member>
- <member name="P:SharpFont.Face.UnitsPerEM">
- <summary>
- Gets the number of font units per EM square for this face. This is typically 2048 for TrueType fonts, and
- 1000 for Type 1 fonts. Only relevant for scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.Ascender">
- <summary>
- Gets the typographic ascender of the face, expressed in font units. For font formats not having this
- information, it is set to ‘bbox.yMax’. Only relevant for scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.Descender">
- <summary>
- Gets the typographic descender of the face, expressed in font units. For font formats not having this
- information, it is set to ‘bbox.yMin’.Note that this field is usually negative. Only relevant for scalable
- formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.Height">
- <summary>
- Gets the height is the vertical distance between two consecutive baselines, expressed in font units. It is
- always positive. Only relevant for scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.MaxAdvanceWidth">
- <summary>
- Gets the maximal advance width, in font units, for all glyphs in this face. This can be used to make word
- wrapping computations faster. Only relevant for scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.MaxAdvanceHeight">
- <summary>
- Gets the maximal advance height, in font units, for all glyphs in this face. This is only relevant for
- vertical layouts, and is set to ‘height’ for fonts that do not provide vertical metrics. Only relevant for
- scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.UnderlinePosition">
- <summary>
- Gets the position, in font units, of the underline line for this face. It is the center of the underlining
- stem. Only relevant for scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.UnderlineThickness">
- <summary>
- Gets the thickness, in font units, of the underline for this face. Only relevant for scalable formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.Glyph">
- <summary>
- Gets the face's associated glyph slot(s).
- </summary>
- </member>
- <member name="P:SharpFont.Face.Size">
- <summary>
- Gets the current active size for this face.
- </summary>
- </member>
- <member name="P:SharpFont.Face.CharMap">
- <summary>
- Gets the current active charmap for this face.
- </summary>
- </member>
- <member name="P:SharpFont.Face.HasHoriziontal">
- <summary>
- Gets a value indicating whether a face object contains horizontal metrics (this is true for all font
- formats though).
- </summary>
- </member>
- <member name="P:SharpFont.Face.HasVertical">
- <summary>
- Gets a value indicating whether a face object contains vertical metrics.
- </summary>
- </member>
- <member name="P:SharpFont.Face.HasKerning">
- <summary>
- Gets a value indicating whether a face object contains kerning data that can be accessed with
- <see cref="M:SharpFont.Face.GetKerning(System.UInt32,System.UInt32,SharpFont.KerningMode)"/>.
- </summary>
- </member>
- <member name="P:SharpFont.Face.IsScalable">
- <summary>
- Gets a value indicating whether a face object contains a scalable font face (true for TrueType, Type 1,
- Type 42, CID, OpenType/CFF, and PFR font formats.
- </summary>
- </member>
- <member name="P:SharpFont.Face.IsSfnt">
- <summary><para>
- Gets a value indicating whether a face object contains a font whose format is based on the SFNT storage
- scheme. This usually means: TrueType fonts, OpenType fonts, as well as SFNT-based embedded bitmap fonts.
- </para><para>
- If this macro is true, all functions defined in FT_SFNT_NAMES_H and FT_TRUETYPE_TABLES_H are available.
- </para></summary>
- </member>
- <member name="P:SharpFont.Face.IsFixedWidth">
- <summary>
- Gets a value indicating whether a face object contains a font face that contains fixed-width (or
- ‘monospace’, ‘fixed-pitch’, etc.) glyphs.
- </summary>
- </member>
- <member name="P:SharpFont.Face.HasFixedSizes">
- <summary>
- Gets a value indicating whether a face object contains some embedded bitmaps.
- </summary>
- <see cref="P:SharpFont.Face.AvailableSizes"/>
- </member>
- <member name="P:SharpFont.Face.HasGlyphNames">
- <summary>
- Gets a value indicating whether a face object contains some glyph names that can be accessed through
- <see cref="M:SharpFont.Face.GetGlyphName(System.UInt32,System.Int32)"/>.
- </summary>
- </member>
- <member name="P:SharpFont.Face.HasMultipleMasters">
- <summary>
- Gets a value indicating whether a face object contains some multiple masters. The functions provided by
- FT_MULTIPLE_MASTERS_H are then available to choose the exact design you want.
- </summary>
- </member>
- <member name="P:SharpFont.Face.IsCidKeyed">
- <summary><para>
- Gets a value indicating whether a face object contains a CID-keyed font. See the discussion of
- FT_FACE_FLAG_CID_KEYED for more details.
- </para><para>
- If this macro is true, all functions defined in FT_CID_H are available.
- </para></summary>
- </member>
- <member name="P:SharpFont.Face.IsTricky">
- <summary>
- Gets a value indicating whether a face represents a ‘tricky’ font. See the discussion of
- FT_FACE_FLAG_TRICKY for more details.
- </summary>
- </member>
- <member name="M:SharpFont.Face.CheckTrueTypePatents">
- <summary><para>
- Parse all bytecode instructions of a TrueType font file to check whether any of the patented opcodes are
- used. This is only useful if you want to be able to use the unpatented hinter with fonts that do not use
- these opcodes.
- </para><para>
- Note that this function parses all glyph instructions in the font file, which may be slow.
- </para></summary>
- <remarks>
- Since May 2010, TrueType hinting is no longer patented.
- </remarks>
- <returns>True if this is a TrueType font that uses one of the patented opcodes, false otherwise.</returns>
- </member>
- <member name="M:SharpFont.Face.SetUnpatentedHinting(System.Boolean)">
- <summary>
- Enable or disable the unpatented hinter for a given <see cref="T:SharpFont.Face"/>. Only enable it if you have
- determined that the face doesn't use any patented opcodes.
- </summary>
- <remarks>
- Since May 2010, TrueType hinting is no longer patented.
- </remarks>
- <param name="value">New boolean setting.</param>
- <returns>
- The old setting value. This will always be false if this is not an SFNT font, or if the unpatented hinter
- is not compiled in this instance of the library.
- </returns>
- <see cref="M:SharpFont.Face.CheckTrueTypePatents"/>
- </member>
- <member name="M:SharpFont.Face.AttachFile(System.String)">
- <summary>
- This function calls <see cref="M:SharpFont.Face.AttachStream(SharpFont.OpenArgs)"/> to attach a file.
- </summary>
- <param name="path">The pathname.</param>
- </member>
- <member name="M:SharpFont.Face.AttachStream(SharpFont.OpenArgs)">
- <summary>
- ‘Attach’ data to a face object. Normally, this is used to read additional information for the face object.
- For example, you can attach an AFM file that comes with a Type 1 font to get the kerning values and other
- metrics.
- </summary>
- <remarks><para>
- The meaning of the ‘attach’ (i.e., what really happens when the new file is read) is not fixed by FreeType
- itself. It really depends on the font format (and thus the font driver).
- </para><para>
- Client applications are expected to know what they are doing when invoking this function. Most drivers
- simply do not implement file attachments.
- </para></remarks>
- <param name="parameters">A pointer to <see cref="T:SharpFont.OpenArgs"/> which must be filled by the caller.</param>
- </member>
- <member name="M:SharpFont.Face.SelectSize(System.Int32)">
- <summary>
- Select a bitmap strike.
- </summary>
- <param name="strikeIndex">
- The index of the bitmap strike in the <see cref="P:SharpFont.Face.AvailableSizes"/> field of <see cref="T:SharpFont.Face"/>
- structure.
- </param>
- </member>
- <member name="M:SharpFont.Face.RequestSize(SharpFont.SizeRequest)">
- <summary>
- Resize the scale of the active <see cref="T:SharpFont.FTSize"/> object in a face.
- </summary>
- <param name="request">A pointer to a <see cref="T:SharpFont.SizeRequest"/>.</param>
- </member>
- <member name="M:SharpFont.Face.SetCharSize(System.Int32,System.Int32,System.UInt32,System.UInt32)">
- <summary>
- This function calls <see cref="M:SharpFont.Face.RequestSize(SharpFont.SizeRequest)"/> to request the nominal size (in points).
- </summary>
- <remarks><para>
- If either the character width or height is zero, it is set equal to the other value.
- </para><para>
- If either the horizontal or vertical resolution is zero, it is set equal to the other value.
- </para><para>
- A character width or height smaller than 1pt is set to 1pt; if both resolution values are zero, they are
- set to 72dpi.
- </para></remarks>
- <param name="width">The nominal width, in 26.6 fractional points.</param>
- <param name="height">The nominal height, in 26.6 fractional points.</param>
- <param name="horizontalResolution">The horizontal resolution in dpi.</param>
- <param name="verticalResolution">The vertical resolution in dpi.</param>
- </member>
- <member name="M:SharpFont.Face.SetPixelSizes(System.UInt32,System.UInt32)">
- <summary>
- This function calls <see cref="M:SharpFont.Face.RequestSize(SharpFont.SizeRequest)"/> to request the nominal size (in pixels).
- </summary>
- <param name="width">The nominal width, in pixels.</param>
- <param name="height">The nominal height, in pixels</param>
- </member>
- <member name="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)">
- <summary>
- A function used to load a single glyph into the glyph slot of a face object.
- </summary>
- <remarks><para>
- The loaded glyph may be transformed. See <see cref="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)"/> for the details.
- </para><para>
- For subsetted CID-keyed fonts, <see cref="F:SharpFont.Error.InvalidArgument"/> is returned for invalid CID values (this
- is, for CID values which don't have a corresponding glyph in the font). See the discussion of the
- <see cref="F:SharpFont.FaceFlags.CidKeyed"/> flag for more details.
- </para></remarks>
- <param name="glyphIndex">
- The index of the glyph in the font file. For CID-keyed fonts (either in PS or in CFF format) this argument
- specifies the CID value.
- </param>
- <param name="flags">
- A flag indicating what to load for this glyph. The <see cref="T:SharpFont.LoadFlags"/> constants can be used to control
- the glyph loading process (e.g., whether the outline should be scaled, whether to load bitmaps or not,
- whether to hint the outline, etc).
- </param>
- <param name="target">The target to OR with the flags.</param>
- </member>
- <member name="M:SharpFont.Face.LoadChar(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)">
- <summary>
- A function used to load a single glyph into the glyph slot of a face object, according to its character
- code.
- </summary>
- <remarks>
- This function simply calls <see cref="M:SharpFont.Face.GetCharIndex(System.UInt32)"/> and <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>
- </remarks>
- <param name="charCode">
- The glyph's character code, according to the current charmap used in the face.
- </param>
- <param name="flags">
- A flag indicating what to load for this glyph. The <see cref="T:SharpFont.LoadFlags"/> constants can be used to control
- the glyph loading process (e.g., whether the outline should be scaled, whether to load bitmaps or not,
- whether to hint the outline, etc).
- </param>
- <param name="target">The target to OR with the flags.</param>
- </member>
- <member name="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)">
- <summary>
- A function used to set the transformation that is applied to glyph images when they are loaded into a glyph
- slot through <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>.
- </summary>
- <remarks><para>
- The transformation is only applied to scalable image formats after the glyph has been loaded. It means that
- hinting is unaltered by the transformation and is performed on the character size given in the last call to
- <see cref="M:SharpFont.Face.SetCharSize(System.Int32,System.Int32,System.UInt32,System.UInt32)"/> or <see cref="M:SharpFont.Face.SetPixelSizes(System.UInt32,System.UInt32)"/>.
- </para><para>
- Note that this also transforms the ‘face.glyph.advance’ field, but not the values in ‘face.glyph.metrics’.
- </para></remarks>
- <param name="matrix">A pointer to the transformation's 2x2 matrix. Use 0 for the identity matrix.</param>
- <param name="delta">A pointer to the translation vector. Use 0 for the null vector.</param>
- </member>
- <member name="M:SharpFont.Face.GetKerning(System.UInt32,System.UInt32,SharpFont.KerningMode)">
- <summary>
- Return the kerning vector between two glyphs of a same face.
- </summary>
- <remarks>
- Only horizontal layouts (left-to-right & right-to-left) are supported by this method. Other layouts, or
- more sophisticated kernings, are out of the scope of this API function -- they can be implemented through
- format-specific interfaces.
- </remarks>
- <param name="leftGlyph">The index of the left glyph in the kern pair.</param>
- <param name="rightGlyph">The index of the right glyph in the kern pair.</param>
- <param name="mode">Determines the scale and dimension of the returned kerning vector.</param>
- <returns>
- The kerning vector. This is either in font units or in pixels (26.6 format) for scalable formats, and in
- pixels for fixed-sizes formats.
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetTrackKerning(System.Int32,System.Int32)">
- <summary>
- Return the track kerning for a given face object at a given size.
- </summary>
- <param name="pointSize">The point size in 16.16 fractional points.</param>
- <param name="degree">The degree of tightness.</param>
- <returns>The kerning in 16.16 fractional points.</returns>
- </member>
- <member name="M:SharpFont.Face.GetGlyphName(System.UInt32,System.Int32)">
- <summary>
- Retrieve the ASCII name of a given glyph in a face. This only works for those faces where
- <see cref="P:SharpFont.Face.HasGlyphNames"/> returns 1.
- </summary>
- <remarks><para>
- An error is returned if the face doesn't provide glyph names or if the glyph index is invalid. In all cases
- of failure, the first byte of ‘buffer’ is set to 0 to indicate an empty name.
- </para><para>
- The glyph name is truncated to fit within the buffer if it is too long. The returned string is always
- zero-terminated.
- </para><para>
- Be aware that FreeType reorders glyph indices internally so that glyph index 0 always corresponds to the
- ‘missing glyph’ (called ‘.notdef’).
- </para><para>
- This function is not compiled within the library if the config macro ‘FT_CONFIG_OPTION_NO_GLYPH_NAMES’ is
- defined in ‘include/freetype/config/ftoptions.h’.
- </para></remarks>
- <param name="glyphIndex">The glyph index.</param>
- <param name="bufferSize">The maximal number of bytes available in the buffer.</param>
- <returns>The ASCII name of a given glyph in a face.</returns>
- </member>
- <member name="M:SharpFont.Face.GetGlyphName(System.UInt32,System.Byte[])">
- <summary>
- Retrieve the ASCII name of a given glyph in a face. This only works for those faces where
- <see cref="P:SharpFont.Face.HasGlyphNames"/> returns 1.
- </summary>
- <remarks><para>
- An error is returned if the face doesn't provide glyph names or if the glyph index is invalid. In all cases
- of failure, the first byte of ‘buffer’ is set to 0 to indicate an empty name.
- </para><para>
- The glyph name is truncated to fit within the buffer if it is too long. The returned string is always
- zero-terminated.
- </para><para>
- Be aware that FreeType reorders glyph indices internally so that glyph index 0 always corresponds to the
- ‘missing glyph’ (called ‘.notdef’).
- </para><para>
- This function is not compiled within the library if the config macro ‘FT_CONFIG_OPTION_NO_GLYPH_NAMES’ is
- defined in ‘include/freetype/config/ftoptions.h’.
- </para></remarks>
- <param name="glyphIndex">The glyph index.</param>
- <param name="buffer">The target buffer where the name is copied to.</param>
- <returns>The ASCII name of a given glyph in a face.</returns>
- </member>
- <member name="M:SharpFont.Face.GetPostscriptName">
- <summary>
- Retrieve the ASCII Postscript name of a given face, if available. This only works with Postscript and
- TrueType fonts.
- </summary>
- <remarks>
- The returned pointer is owned by the face and is destroyed with it.
- </remarks>
- <returns>A pointer to the face's Postscript name. NULL if unavailable.</returns>
- </member>
- <member name="M:SharpFont.Face.SelectCharmap(SharpFont.Encoding)">
- <summary>
- Select a given charmap by its encoding tag (as listed in ‘freetype.h’).
- </summary>
- <remarks><para>
- This function returns an error if no charmap in the face corresponds to the encoding queried here.
- </para><para>
- Because many fonts contain more than a single cmap for Unicode encoding, this function has some special
- code to select the one which covers Unicode best. It is thus preferable to <see cref="M:SharpFont.Face.SetCharmap(SharpFont.CharMap)"/> in
- this case.
- </para></remarks>
- <param name="encoding">A handle to the selected encoding.</param>
- </member>
- <member name="M:SharpFont.Face.SetCharmap(SharpFont.CharMap)">
- <summary>
- Select a given charmap for character code to glyph index mapping.
- </summary>
- <remarks>
- This function returns an error if the charmap is not part of the face (i.e., if it is not listed in the
- <see cref="P:SharpFont.Face.CharMaps"/>’ table).
- </remarks>
- <param name="charmap">A handle to the selected charmap.</param>
- </member>
- <member name="M:SharpFont.Face.GetCharIndex(System.UInt32)">
- <summary>
- Return the glyph index of a given character code. This function uses a charmap object to do the mapping.
- </summary>
- <remarks>
- If you use FreeType to manipulate the contents of font files directly, be aware that the glyph index
- returned by this function doesn't always correspond to the internal indices used within the file. This is
- done to ensure that value 0 always corresponds to the ‘missing glyph’.
- </remarks>
- <param name="charCode">The character code.</param>
- <returns>The glyph index. 0 means ‘undefined character code’.</returns>
- </member>
- <member name="M:SharpFont.Face.GetFirstChar(System.UInt32@)">
- <summary>
- This function is used to return the first character code in the current charmap of a given face. It also
- returns the corresponding glyph index.
- </summary>
- <remarks><para>
- You should use this function with <see cref="M:SharpFont.Face.GetNextChar(System.UInt32,System.UInt32@)"/> to be able to parse all character codes
- available in a given charmap.
- </para><para>
- Note that ‘agindex’ is set to 0 if the charmap is empty. The result itself can be 0 in two cases: if the
- charmap is empty or when the value 0 is the first valid character code.
- </para></remarks>
- <param name="glyphIndex">Glyph index of first character code. 0 if charmap is empty.</param>
- <returns>The charmap's first character code.</returns>
- </member>
- <member name="M:SharpFont.Face.GetNextChar(System.UInt32,System.UInt32@)">
- <summary>
- This function is used to return the next character code in the current charmap of a given face following
- the value ‘charCode’, as well as the corresponding glyph index.
- </summary>
- <remarks><para>
- You should use this function with <see cref="M:SharpFont.Face.GetFirstChar(System.UInt32@)"/> to walk over all character codes available
- in a given charmap. See the note for this function for a simple code example.
- </para><para>
- Note that ‘*agindex’ is set to 0 when there are no more codes in the charmap.
- </para></remarks>
- <param name="charCode">The starting character code.</param>
- <param name="glyphIndex">Glyph index of first character code. 0 if charmap is empty.</param>
- <returns>The charmap's next character code.</returns>
- </member>
- <member name="M:SharpFont.Face.GetNameIndex(System.String)">
- <summary>
- Return the glyph index of a given glyph name. This function uses driver specific objects to do the
- translation.
- </summary>
- <param name="name">The glyph name.</param>
- <returns>The glyph index. 0 means ‘undefined character code’.</returns>
- </member>
- <member name="M:SharpFont.Face.GetFSTypeFlags">
- <summary>
- Return the <see cref="T:SharpFont.EmbeddingTypes"/> flags for a font.
- </summary>
- <remarks>
- Use this function rather than directly reading the ‘fs_type’ field in the <see cref="T:SharpFont.PostScript.FontInfo"/>
- structure which is only guaranteed to return the correct results for Type 1 fonts.
- </remarks>
- <returns>The fsType flags, <see cref="T:SharpFont.EmbeddingTypes"/>.</returns>
- </member>
- <member name="M:SharpFont.Face.GetCharVariantIndex(System.UInt32,System.UInt32)">
- <summary>
- Return the glyph index of a given character code as modified by the variation selector.
- </summary>
- <remarks><para>
- If you use FreeType to manipulate the contents of font files directly, be aware that the glyph index
- returned by this function doesn't always correspond to the internal indices used within the file. This is
- done to ensure that value 0 always corresponds to the ‘missing glyph’.
- </para><para>
- This function is only meaningful if a) the font has a variation selector cmap sub table, and b) the current
- charmap has a Unicode encoding.
- </para></remarks>
- <param name="charCode">The character code point in Unicode.</param>
- <param name="variantSelector">The Unicode code point of the variation selector.</param>
- <returns>
- The glyph index. 0 means either ‘undefined character code’, or ‘undefined selector code’, or ‘no variation
- selector cmap subtable’, or ‘current CharMap is not Unicode’.
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetCharVariantIsDefault(System.UInt32,System.UInt32)">
- <summary>
- Check whether this variant of this Unicode character is the one to be found in the ‘cmap’.
- </summary>
- <remarks>
- This function is only meaningful if the font has a variation selector cmap subtable.
- </remarks>
- <param name="charCode">The character codepoint in Unicode.</param>
- <param name="variantSelector">The Unicode codepoint of the variation selector.</param>
- <returns>
- 1 if found in the standard (Unicode) cmap, 0 if found in the variation selector cmap, or -1 if it is not a
- variant.
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetVariantSelectors">
- <summary>
- Return a zero-terminated list of Unicode variant selectors found in the font.
- </summary>
- <remarks>
- The last item in the array is 0; the array is owned by the <see cref="T:SharpFont.Face"/> object but can be overwritten
- or released on the next call to a FreeType function.
- </remarks>
- <returns>
- A pointer to an array of selector code points, or NULL if there is no valid variant selector cmap subtable.
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetVariantsOfChar(System.UInt32)">
- <summary>
- Return a zero-terminated list of Unicode variant selectors found in the font.
- </summary>
- <remarks>
- The last item in the array is 0; the array is owned by the <see cref="T:SharpFont.Face"/> object but can be overwritten
- or released on the next call to a FreeType function.
- </remarks>
- <param name="charCode">The character codepoint in Unicode.</param>
- <returns>
- A pointer to an array of variant selector code points which are active for the given character, or NULL if
- the corresponding list is empty.
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetCharsOfVariant(System.UInt32)">
- <summary>
- Return a zero-terminated list of Unicode character codes found for the specified variant selector.
- </summary>
- <remarks>
- The last item in the array is 0; the array is owned by the <see cref="T:SharpFont.Face"/> object but can be overwritten
- or released on the next call to a FreeType function.
- </remarks>
- <param name="variantSelector">The variant selector code point in Unicode.</param>
- <returns>
- A list of all the code points which are specified by this selector (both default and non-default codes are
- returned) or NULL if there is no valid cmap or the variant selector is invalid.
- </returns>
- </member>
- <member name="M:SharpFont.Face.NewSize">
- <summary>
- Create a new size object from a given face object.
- </summary>
- <remarks>
- You need to call <see cref="M:SharpFont.FTSize.Activate"/> in order to select the new size for upcoming calls to
- <see cref="M:SharpFont.Face.SetPixelSizes(System.UInt32,System.UInt32)"/>, <see cref="M:SharpFont.Face.SetCharSize(System.Int32,System.Int32,System.UInt32,System.UInt32)"/>, <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>, <see cref="M:SharpFont.Face.LoadChar(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>,
- etc.
- </remarks>
- <returns>A handle to a new size object.</returns>
- </member>
- <member name="M:SharpFont.Face.GetMultiMaster">
- <summary><para>
- Retrieve the Multiple Master descriptor of a given font.
- </para><para>
- This function can't be used with GX fonts.
- </para></summary>
- <returns>The Multiple Masters descriptor.</returns>
- </member>
- <member name="M:SharpFont.Face.GetMMVar">
- <summary>
- Retrieve the Multiple Master/GX var descriptor of a given font.
- </summary>
- <returns>
- The Multiple Masters/GX var descriptor. Allocates a data structure, which the user must free (a single call
- to FT_FREE will do it).
- </returns>
- </member>
- <member name="M:SharpFont.Face.SetMMDesignCoordinates(System.Int64[])">
- <summary><para>
- For Multiple Masters fonts, choose an interpolated font design through design coordinates.
- </para><para>
- This function can't be used with GX fonts.
- </para></summary>
- <param name="coords">An array of design coordinates.</param>
- </member>
- <member name="M:SharpFont.Face.SetVarDesignCoordinates(System.Int64[])">
- <summary>
- For Multiple Master or GX Var fonts, choose an interpolated font design through design coordinates.
- </summary>
- <param name="coords">An array of design coordinates.</param>
- </member>
- <member name="M:SharpFont.Face.SetMMBlendCoordinates(System.Int64[])">
- <summary>
- For Multiple Masters and GX var fonts, choose an interpolated font design through normalized blend
- coordinates.
- </summary>
- <param name="coords">The design coordinates array (each element must be between 0 and 1.0).</param>
- </member>
- <member name="M:SharpFont.Face.SetVarBlendCoordinates(System.Int64[])">
- <summary>
- This is another name of <see cref="M:SharpFont.Face.SetMMBlendCoordinates(System.Int64[])"/>.
- </summary>
- <param name="coords">The design coordinates array (each element must be between 0 and 1.0).</param>
- </member>
- <member name="M:SharpFont.Face.GetSfntTable(SharpFont.TrueType.SfntTag)">
- <summary>
- Return a pointer to a given SFNT table within a face.
- </summary>
- <remarks><para>
- The table is owned by the face object and disappears with it.
- </para><para>
- This function is only useful to access SFNT tables that are loaded by the sfnt, truetype, and opentype
- drivers. See <see cref="T:SharpFont.TrueType.SfntTag"/> for a list.
- </para></remarks>
- <param name="tag">The index of the SFNT table.</param>
- <returns><para>
- A type-less pointer to the table. This will be 0 in case of error, or if the corresponding table was not
- found OR loaded from the file.
- </para><para>
- Use a typecast according to ‘tag’ to access the structure elements.
- </para></returns>
- </member>
- <member name="M:SharpFont.Face.LoadSfntTable(System.UInt32,System.Int32,System.IntPtr,System.UInt32@)">
- <summary>
- Load any font table into client memory.
- </summary>
- <remarks>
- If you need to determine the table's length you should first call this function with ‘*length’ set to 0, as
- in the following example:
- <code>
- FT_ULong length = 0;
-
-
- error = FT_Load_Sfnt_Table( face, tag, 0, NULL, &length );
- if ( error ) { ... table does not exist ... }
-
- buffer = malloc( length );
- if ( buffer == NULL ) { ... not enough memory ... }
-
- error = FT_Load_Sfnt_Table( face, tag, 0, buffer, &length );
- if ( error ) { ... could not load table ... }
- </code>
- </remarks>
- <param name="tag">
- The four-byte tag of the table to load. Use the value 0 if you want to access the whole font file.
- Otherwise, you can use one of the definitions found in the FT_TRUETYPE_TAGS_H file, or forge a new one with
- FT_MAKE_TAG.
- </param>
- <param name="offset">The starting offset in the table (or file if tag == 0).</param>
- <param name="buffer">
- The target buffer address. The client must ensure that the memory array is big enough to hold the data.
- </param>
- <param name="length"><para>
- If the ‘length’ parameter is NULL, then try to load the whole table. Return an error code if it fails.
- </para><para>
- Else, if ‘*length’ is 0, exit immediately while returning the table's (or file) full size in it.
- </para><para>
- Else the number of bytes to read from the table or file, from the starting offset.
- </para></param>
- </member>
- <member name="M:SharpFont.Face.SfntTableInfo(System.UInt32,SharpFont.TrueType.SfntTag)">
- <summary>
- Return information on an SFNT table.
- </summary>
- <param name="tableIndex">
- The index of an SFNT table. The function returns <see cref="F:SharpFont.Error.TableMissing"/> for an invalid value.
- </param>
- <param name="tag">
- The name tag of the SFNT table. If the value is NULL, ‘table_index’ is ignored, and ‘length’ returns the
- number of SFNT tables in the font.
- </param>
- <returns>The length of the SFNT table (or the number of SFNT tables, depending on ‘tag’).</returns>
- </member>
- <member name="M:SharpFont.Face.SfntTableInfo">
- <summary>
- Only gets the number of SFNT tables.
- </summary>
- <returns>The number of SFNT tables.</returns>
- </member>
- <member name="M:SharpFont.Face.HasPSGlyphNames">
- <summary><para>
- Return true if a given face provides reliable PostScript glyph names. This is similar to using the
- <see cref="P:SharpFont.Face.HasGlyphNames"/> macro, except that certain fonts (mostly TrueType) contain incorrect
- glyph name tables.
- </para><para>
- When this function returns true, the caller is sure that the glyph names returned by
- <see cref="M:SharpFont.Face.GetGlyphName(System.UInt32,System.Int32)"/> are reliable.
- </para></summary>
- <returns>Boolean. True if glyph names are reliable.</returns>
- </member>
- <member name="M:SharpFont.Face.GetPSFontInfo">
- <summary>
- Retrieve the <see cref="T:SharpFont.PostScript.FontInfo"/> structure corresponding to a given PostScript font.
- </summary>
- <remarks><para>
- The string pointers within the font info structure are owned by the face and don't need to be freed by the
- caller.
- </para><para>
- If the font's format is not PostScript-based, this function will return the
- <see cref="F:SharpFont.Error.InvalidArgument"/> error code.
- </para></remarks>
- <returns>Output font info structure pointer.</returns>
- </member>
- <member name="M:SharpFont.Face.GetPSFontPrivate">
- <summary>
- Retrieve the <see cref="T:SharpFont.PostScript.Private"/> structure corresponding to a given PostScript font.
- </summary>
- <remarks><para>
- The string pointers within the <see cref="T:SharpFont.PostScript.Private"/> structure are owned by the face and don't
- need to be freed by the caller.
- </para><para>
- If the font's format is not PostScript-based, this function returns the <see cref="F:SharpFont.Error.InvalidArgument"/>
- error code.
- </para></remarks>
- <returns>Output private dictionary structure pointer.</returns>
- </member>
- <member name="M:SharpFont.Face.GetPSFontValue(SharpFont.PostScript.DictionaryKeys,System.UInt32,System.IntPtr@,System.Int32)">
- <summary>
- Retrieve the value for the supplied key from a PostScript font.
- </summary>
- <remarks><para>
- The values returned are not pointers into the internal structures of the face, but are ‘fresh’ copies, so
- that the memory containing them belongs to the calling application. This also enforces the ‘read-only’
- nature of these values, i.e., this function cannot be used to manipulate the face.
- </para><para>
- ‘value’ is a void pointer because the values returned can be of various types.
- </para><para>
- If either ‘value’ is NULL or ‘value_len’ is too small, just the required memory size for the requested
- entry is returned.
- </para><para>
- The ‘idx’ parameter is used, not only to retrieve elements of, for example, the FontMatrix or FontBBox, but
- also to retrieve name keys from the CharStrings dictionary, and the charstrings themselves. It is ignored
- for atomic values.
- </para><para>
- <see cref="F:SharpFont.PostScript.DictionaryKeys.BlueScale"/> returns a value that is scaled up by 1000. To get the
- value as in the font stream, you need to divide by 65536000.0 (to remove the FT_Fixed scale, and the x1000
- scale).
- </para><para>
- IMPORTANT: Only key/value pairs read by the FreeType interpreter can be retrieved. So, for example,
- PostScript procedures such as NP, ND, and RD are not available. Arbitrary keys are, obviously, not be
- available either.
- </para><para>
- If the font's format is not PostScript-based, this function returns the <see cref="F:SharpFont.Error.InvalidArgument"/>
- error code.
- </para></remarks>
- <param name="key">An enumeration value representing the dictionary key to retrieve.</param>
- <param name="idx">For array values, this specifies the index to be returned.</param>
- <param name="value">A pointer to memory into which to write the value.</param>
- <param name="valueLength">The size, in bytes, of the memory supplied for the value.</param>
- <returns>
- The amount of memory (in bytes) required to hold the requested value (if it exists, -1 otherwise).
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetSfntNameCount">
- <summary>
- Retrieve the number of name strings in the SFNT ‘name’ table.
- </summary>
- <returns>The number of strings in the ‘name’ table.</returns>
- </member>
- <member name="M:SharpFont.Face.GetSfntName(System.UInt32)">
- <summary>
- Retrieve a string of the SFNT ‘name’ table for a given index.
- </summary>
- <remarks><para>
- The ‘string’ array returned in the ‘aname’ structure is not null-terminated. The application should
- deallocate it if it is no longer in use.
- </para><para>
- Use <see cref="M:SharpFont.Face.GetSfntNameCount"/> to get the total number of available ‘name’ table entries, then do a
- loop until you get the right platform, encoding, and name ID.
- </para></remarks>
- <param name="idx">The index of the ‘name’ string.</param>
- <returns>The indexed <see cref="T:SharpFont.TrueType.SfntName"/> structure.</returns>
- </member>
- <member name="M:SharpFont.Face.GetBdfCharsetId(System.String@,System.String@)">
- <summary>
- Retrieve a BDF font character set identity, according to the BDF specification.
- </summary>
- <remarks>
- This function only works with BDF faces, returning an error otherwise.
- </remarks>
- <param name="encoding">Charset encoding, as a C string, owned by the face.</param>
- <param name="registry">Charset registry, as a C string, owned by the face.</param>
- </member>
- <member name="M:SharpFont.Face.GetBdfProperty(System.String)">
- <summary>
- Retrieve a BDF property from a BDF or PCF font file.
- </summary>
- <remarks><para>
- This function works with BDF and PCF fonts. It returns an error otherwise. It also returns an error if the
- property is not in the font.
- </para><para>
- A ‘property’ is a either key-value pair within the STARTPROPERTIES ... ENDPROPERTIES block of a BDF font or
- a key-value pair from the ‘info->props’ array within a ‘FontRec’ structure of a PCF font.
- </para><para>
- Integer properties are always stored as ‘signed’ within PCF fonts; consequently,
- <see cref="F:SharpFont.Bdf.PropertyType.Cardinal"/> is a possible return value for BDF fonts only.
- </para><para>
- In case of error, ‘aproperty->type’ is always set to <see cref="F:SharpFont.Bdf.PropertyType.None"/>.
- </para></remarks>
- <param name="propertyName">The property name.</param>
- <returns>The property.</returns>
- </member>
- <member name="M:SharpFont.Face.GetCidRegistryOrderingSupplement(System.String@,System.String@,System.Int32@)">
- <summary>
- Retrieve the Registry/Ordering/Supplement triple (also known as the "R/O/S") from a CID-keyed font.
- </summary>
- <remarks>
- This function only works with CID faces, returning an error otherwise.
- </remarks>
- <param name="registry">The registry, as a C string, owned by the face.</param>
- <param name="ordering">The ordering, as a C string, owned by the face.</param>
- <param name="supplement">The supplement.</param>
- </member>
- <member name="M:SharpFont.Face.GetCidIsInternallyCidKeyed">
- <summary>
- Retrieve the type of the input face, CID keyed or not. In constrast to the
- <see cref="P:SharpFont.Face.IsCidKeyed"/> macro this function returns successfully also for CID-keyed fonts in an
- SNFT wrapper.
- </summary>
- <remarks>
- This function only works with CID faces and OpenType fonts, returning an error otherwise.
- </remarks>
- <returns>The type of the face as an FT_Bool.</returns>
- </member>
- <member name="M:SharpFont.Face.GetCidFromGlyphIndex(System.UInt32)">
- <summary>
- Retrieve the CID of the input glyph index.
- </summary>
- <remarks>
- This function only works with CID faces and OpenType fonts, returning an error otherwise.
- </remarks>
- <param name="glyphIndex">The input glyph index.</param>
- <returns>The CID as an uint.</returns>
- </member>
- <member name="M:SharpFont.Face.GetPfrMetrics(System.UInt32@,System.UInt32@,System.Int32@,System.Int32@)">
- <summary>
- Return the outline and metrics resolutions of a given PFR face.
- </summary>
- <remarks>
- If the input face is not a PFR, this function will return an error. However, in all cases, it will return
- valid values.
- </remarks>
- <param name="outlineResolution">
- Outline resolution. This is equivalent to ‘face->units_per_EM’ for non-PFR fonts. Optional (parameter can
- be NULL).
- </param>
- <param name="metricsResolution">
- Metrics resolution. This is equivalent to ‘outline_resolution’ for non-PFR fonts. Optional (parameter can
- be NULL).
- </param>
- <param name="metricsXScale">
- A 16.16 fixed-point number used to scale distance expressed in metrics units to device sub-pixels. This is
- equivalent to ‘face->size->x_scale’, but for metrics only. Optional (parameter can be NULL).
- </param>
- <param name="metricsYScale">
- Same as ‘ametrics_x_scale’ but for the vertical direction. optional (parameter can be NULL).
- </param>
- </member>
- <member name="M:SharpFont.Face.GetPfrKerning(System.UInt32,System.UInt32)">
- <summary>
- Return the kerning pair corresponding to two glyphs in a PFR face. The distance is expressed in metrics
- units, unlike the result of <see cref="M:SharpFont.Face.GetKerning(System.UInt32,System.UInt32,SharpFont.KerningMode)"/>.
- </summary>
- <remarks><para>
- This function always return distances in original PFR metrics units. This is unlike
- <see cref="M:SharpFont.Face.GetKerning(System.UInt32,System.UInt32,SharpFont.KerningMode)"/> with the <see cref="F:SharpFont.KerningMode.Unscaled"/> mode, which always returns
- distances converted to outline units.
- </para><para>
- You can use the value of the ‘x_scale’ and ‘y_scale’ parameters returned by <see cref="M:SharpFont.Face.GetPfrMetrics(System.UInt32@,System.UInt32@,System.Int32@,System.Int32@)"/> to
- scale these to device sub-pixels.
- </para></remarks>
- <param name="left">Index of the left glyph.</param>
- <param name="right">Index of the right glyph.</param>
- <returns>A kerning vector.</returns>
- </member>
- <member name="M:SharpFont.Face.GetPfrAdvance(System.UInt32)">
- <summary>
- Return a given glyph advance, expressed in original metrics units, from a PFR font.
- </summary>
- <remarks>
- You can use the ‘x_scale’ or ‘y_scale’ results of <see cref="M:SharpFont.Face.GetPfrMetrics(System.UInt32@,System.UInt32@,System.Int32@,System.Int32@)"/> to convert the advance to
- device sub-pixels (i.e., 1/64th of pixels).
- </remarks>
- <param name="glyphIndex">The glyph index.</param>
- <returns>The glyph advance in metrics units.</returns>
- </member>
- <member name="M:SharpFont.Face.GetWinFntHeader">
- <summary>
- Retrieve a Windows FNT font info header.
- </summary>
- <remarks>
- This function only works with Windows FNT faces, returning an error otherwise.
- </remarks>
- <returns>The WinFNT header.</returns>
- </member>
- <member name="M:SharpFont.Face.GetX11FontFormat">
- <summary>
- Return a string describing the format of a given face, using values which can be used as an X11
- FONT_PROPERTY. Possible values are ‘TrueType’, ‘Type 1’, ‘BDF’, ‘PCF’, ‘Type 42’, ‘CID Type 1’, ‘CFF’,
- ‘PFR’, and ‘Windows FNT’.
- </summary>
- <returns>Font format string. NULL in case of error.</returns>
- </member>
- <member name="M:SharpFont.Face.GetGasp(System.UInt32)">
- <summary>
- Read the ‘gasp’ table from a TrueType or OpenType font file and return the entry corresponding to a given
- character pixel size.
- </summary>
- <param name="ppem">The vertical character pixel size.</param>
- <returns>
- Bit flags (see <see cref="T:SharpFont.Gasp"/>), or <see cref="F:SharpFont.Gasp.NoTable"/> if there is no ‘gasp’ table in the face.
- </returns>
- </member>
- <member name="M:SharpFont.Face.GetAdvance(System.UInt32,SharpFont.LoadFlags)">
- <summary>
- Retrieve the advance value of a given glyph outline in a <see cref="T:SharpFont.Face"/>. By default, the unhinted
- advance is returned in font units.
- </summary>
- <remarks><para>
- This function may fail if you use <see cref="F:SharpFont.LoadFlags.AdvanceFlagFastOnly"/> and if the corresponding font
- backend doesn't have a quick way to retrieve the advances.
- </para><para>
- A scaled advance is returned in 16.16 format but isn't transformed by the affine transformation specified
- by <see cref="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)"/>.
- </para></remarks>
- <param name="glyphIndex">The glyph index.</param>
- <param name="flags">
- A set of bit flags similar to those used when calling <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>, used to determine what kind
- of advances you need.
- </param>
- <returns><para>
- The advance value, in either font units or 16.16 format.
- </para><para>
- If <see cref="F:SharpFont.LoadFlags.VerticalLayout"/> is set, this is the vertical advance corresponding to a vertical
- layout. Otherwise, it is the horizontal advance in a horizontal layout.
- </para></returns>
- </member>
- <member name="M:SharpFont.Face.GetAdvances(System.UInt32,System.UInt32,SharpFont.LoadFlags)">
- <summary>
- Retrieve the advance values of several glyph outlines in an
- <see cref="T:SharpFont.Face"/>. By default, the unhinted advances are returned
- in font units.
- </summary>
- <remarks><para>
- This function may fail if you use
- <see cref="F:SharpFont.LoadFlags.AdvanceFlagFastOnly"/> and if the
- corresponding font backend doesn't have a quick way to retrieve the
- advances.
- </para><para>
- Scaled advances are returned in 16.16 format but aren't transformed
- by the affine transformation specified by
- <see cref="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)"/>.
- </para></remarks>
- <param name="start">The first glyph index.</param>
- <param name="count">The number of advance values you want to retrieve.</param>
- <param name="flags">A set of bit flags similar to those used when calling <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>.</param>
- <returns><para>The advances, in either font units or 16.16 format. This array must contain at least ‘count’ elements.
- </para><para>
- If <see cref="F:SharpFont.LoadFlags.VerticalLayout"/> is set, these are the vertical advances corresponding to a vertical layout. Otherwise, they are the horizontal advances in a horizontal layout.</para></returns>
- </member>
- <member name="M:SharpFont.Face.OpenTypeValidate(SharpFont.OpenTypeValidationFlags,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@)">
- <summary>
- Validate various OpenType tables to assure that all offsets and indices are valid. The idea is that a
- higher-level library which actually does the text layout can access those tables without error checking
- (which can be quite time consuming).
- </summary>
- <remarks><para>
- This function only works with OpenType fonts, returning an error otherwise.
- </para><para>
- After use, the application should deallocate the five tables with <see cref="M:SharpFont.Face.OpenTypeFree(System.IntPtr)"/>. A NULL value
- indicates that the table either doesn't exist in the font, or the application hasn't asked for validation.
- </para></remarks>
- <param name="flags">A bit field which specifies the tables to be validated.</param>
- <param name="baseTable">A pointer to the BASE table.</param>
- <param name="gdefTable">A pointer to the GDEF table.</param>
- <param name="gposTable">A pointer to the GPOS table.</param>
- <param name="gsubTable">A pointer to the GSUB table.</param>
- <param name="jstfTable">A pointer to the JSTF table.</param>
- </member>
- <member name="M:SharpFont.Face.OpenTypeFree(System.IntPtr)">
- <summary>
- Free the buffer allocated by OpenType validator.
- </summary>
- <remarks>
- This function must be used to free the buffer allocated by <see cref="M:SharpFont.Face.OpenTypeValidate(SharpFont.OpenTypeValidationFlags,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@)"/> only.
- </remarks>
- <param name="table">The pointer to the buffer that is allocated by <see cref="M:SharpFont.Face.OpenTypeValidate(SharpFont.OpenTypeValidationFlags,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@,System.IntPtr@)"/>.</param>
- </member>
- <member name="M:SharpFont.Face.TrueTypeGXValidate(SharpFont.TrueTypeValidationFlags,System.Byte[][],System.UInt32)">
- <summary>
- Validate various TrueTypeGX tables to assure that all offsets and indices are valid. The idea is that a
- higher-level library which actually does the text layout can access those tables without error checking
- (which can be quite time consuming).
- </summary>
- <remarks><para>
- This function only works with TrueTypeGX fonts, returning an error otherwise.
- </para><para>
- After use, the application should deallocate the buffers pointed to by each ‘tables’ element, by calling
- <see cref="M:SharpFont.Face.TrueTypeGXFree(System.IntPtr)"/>. A NULL value indicates that the table either doesn't exist in the font, the
- application hasn't asked for validation, or the validator doesn't have the ability to validate the sfnt
- table.
- </para></remarks>
- <param name="flags">A bit field which specifies the tables to be validated.</param>
- <param name="tables">
- The array where all validated sfnt tables are stored. The array itself must be allocated by a client.
- </param>
- <param name="tableLength">
- The size of the ‘tables’ array. Normally, FT_VALIDATE_GX_LENGTH should be passed.
- </param>
- </member>
- <member name="M:SharpFont.Face.TrueTypeGXFree(System.IntPtr)">
- <summary>
- Free the buffer allocated by TrueTypeGX validator.
- </summary>
- <remarks>
- This function must be used to free the buffer allocated by <see cref="M:SharpFont.Face.TrueTypeGXValidate(SharpFont.TrueTypeValidationFlags,System.Byte[][],System.UInt32)"/> only.
- </remarks>
- <param name="table">The pointer to the buffer allocated by <see cref="M:SharpFont.Face.TrueTypeGXValidate(SharpFont.TrueTypeValidationFlags,System.Byte[][],System.UInt32)"/>.</param>
- </member>
- <member name="M:SharpFont.Face.ClassicKernValidate(SharpFont.ClassicKernValidationFlags)">
- <summary><para>
- Validate classic (16-bit format) kern table to assure that the offsets and indices are valid. The idea is
- that a higher-level library which actually does the text layout can access those tables without error
- checking (which can be quite time consuming).
- </para><para>
- The ‘kern’ table validator in <see cref="M:SharpFont.Face.TrueTypeGXValidate(SharpFont.TrueTypeValidationFlags,System.Byte[][],System.UInt32)"/> deals with both the new 32-bit format and
- the classic 16-bit format, while <see cref="M:SharpFont.Face.ClassicKernValidate(SharpFont.ClassicKernValidationFlags)"/> only supports the classic 16-bit format.
- </para></summary>
- <remarks>
- After use, the application should deallocate the buffers pointed to by ‘ckern_table’, by calling
- <see cref="M:SharpFont.Face.ClassicKernFree(System.IntPtr)"/>. A NULL value indicates that the table doesn't exist in the font.
- </remarks>
- <param name="flags">A bit field which specifies the dialect to be validated.</param>
- <returns>A pointer to the kern table.</returns>
- </member>
- <member name="M:SharpFont.Face.ClassicKernFree(System.IntPtr)">
- <summary>
- Free the buffer allocated by classic Kern validator.
- </summary>
- <remarks>
- This function must be used to free the buffer allocated by <see cref="M:SharpFont.Face.ClassicKernValidate(SharpFont.ClassicKernValidationFlags)"/> only.
- </remarks>
- <param name="table">
- The pointer to the buffer that is allocated by <see cref="M:SharpFont.Face.ClassicKernValidate(SharpFont.ClassicKernValidationFlags)"/>.
- </param>
- </member>
- <member name="M:SharpFont.Face.Dispose">
- <summary>
- Disposes the Face.
- </summary>
- </member>
- <member name="T:SharpFont.FaceFlags">
- <summary>
- A list of bit flags used in the ‘face_flags’ field of the <see cref="T:SharpFont.Face"/> structure. They inform client
- applications of properties of the corresponding face.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.None">
- <summary>
- No style flags.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Scalable">
- <summary>
- Indicates that the face contains outline glyphs. This doesn't prevent bitmap strikes, i.e., a face can have
- both this and and <see cref="F:SharpFont.FaceFlags.FixedSizes"/> set.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.FixedSizes">
- <summary>
- Indicates that the face contains bitmap strikes. See also <see cref="P:SharpFont.Face.FixedSizesCount"/> and
- <see cref="P:SharpFont.Face.AvailableSizes"/>.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.FixedWidth">
- <summary>
- Indicates that the face contains fixed-width characters (like Courier, Lucido, MonoType, etc.).
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Sfnt">
- <summary>
- Indicates that the face uses the ‘sfnt’ storage scheme. For now, this means TrueType and OpenType.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Horizontal">
- <summary>
- Indicates that the face contains horizontal glyph metrics. This should be set for all common formats.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Vertical">
- <summary>
- Indicates that the face contains vertical glyph metrics. This is only available in some formats, not all of
- them.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Kerning">
- <summary>
- Indicates that the face contains kerning information. If set, the kerning distance can be retrieved through
- the function <see cref="M:SharpFont.Face.GetKerning(System.UInt32,System.UInt32,SharpFont.KerningMode)"/>. Otherwise the function always return the vector (0,0). Note
- that FreeType doesn't handle kerning data from the ‘GPOS’ table (as present in some OpenType fonts).
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.MultipleMasters">
- <summary>
- Indicates that the font contains multiple masters and is capable of interpolating between them. See the
- multiple-masters specific API for details.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.GlyphNames">
- <summary>
- Indicates that the font contains glyph names that can be retrieved through
- <see cref="M:SharpFont.Face.GetGlyphName(System.UInt32,System.Int32)"/>. Note that some TrueType fonts contain broken glyph name
- tables. Use the function <see cref="M:SharpFont.Face.HasPSGlyphNames"/> when needed.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.ExternalStream">
- <summary>
- Used internally by FreeType to indicate that a face's stream was provided by the client application and
- should not be destroyed when <see cref="M:SharpFont.Face.Dispose"/> is called. Don't read or test this flag.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Hinter">
- <summary>
- Set if the font driver has a hinting machine of its own. For example, with TrueType fonts, it makes sense
- to use data from the SFNT ‘gasp’ table only if the native TrueType hinting engine (with the bytecode
- interpreter) is available and active.
- </summary>
- </member>
- <member name="F:SharpFont.FaceFlags.CidKeyed">
- <summary><para>
- Set if the font is CID-keyed. In that case, the font is not accessed by glyph indices but by CID values.
- For subsetted CID-keyed fonts this has the consequence that not all index values are a valid argument to
- <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>. Only the CID values for which corresponding glyphs in the subsetted font
- exist make <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> return successfully; in all other cases you get an
- <see cref="F:SharpFont.Error.InvalidArgument"/> error.
- </para><para>
- Note that CID-keyed fonts which are in an SFNT wrapper don't have this flag set since the glyphs are
- accessed in the normal way (using contiguous indices); the ‘CID-ness’ isn't visible to the application.
- </para></summary>
- </member>
- <member name="F:SharpFont.FaceFlags.Tricky">
- <summary><para>
- Set if the font is ‘tricky’, this is, it always needs the font format's native hinting engine to get a
- reasonable result. A typical example is the Chinese font ‘mingli.ttf’ which uses TrueType bytecode
- instructions to move and scale all of its subglyphs.
- </para><para>
- It is not possible to autohint such fonts using <see cref="F:SharpFont.LoadFlags.ForceAutohint"/>; it will also ignore
- <see cref="F:SharpFont.LoadFlags.NoHinting"/>. You have to set both <see cref="F:SharpFont.LoadFlags.NoHinting"/> and
- <see cref="F:SharpFont.LoadFlags.ForceAutohint"/> to really disable hinting; however, you probably never want this
- except for demonstration purposes.
- </para><para>
- Currently, there are about a dozen TrueType fonts in the list of tricky fonts; they are hard-coded in file
- ‘ttobjs.c’.
- </para></summary>
- </member>
- <member name="T:SharpFont.FreeTypeException">
- <summary>
- An exception that gets thrown when FreeType returns an error code.
- </summary>
- </member>
- <member name="M:SharpFont.FreeTypeException.#ctor(SharpFont.Error)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FreeTypeException"/> class.
- </summary>
- <param name="error">The error returned by FreeType.</param>
- </member>
- <member name="P:SharpFont.FreeTypeException.Error">
- <summary>
- Gets the FreeType error code that caused the exception.
- </summary>
- </member>
- <member name="T:SharpFont.EmbeddingTypes">
- <summary>
- A list of bit flags used in the ‘fsType’ field of the OS/2 table in a
- TrueType or OpenType font and the ‘FSType’ entry in a PostScript font.
- These bit flags are returned by FT_Get_FSType_Flags; they inform client
- applications of embedding and subsetting restrictions associated with a
- font.
- </summary>
- <remarks>
- While the fsType flags can indicate that a font may be embedded, a
- license with the font vendor may be separately required to use the font
- in this way.
- </remarks>
- <see href="http://www.adobe.com/devnet/acrobat/pdfs/FontPolicies.pdf"/>
- </member>
- <member name="F:SharpFont.EmbeddingTypes.Installable">
- <summary>
- Fonts with no fsType bit set may be embedded and permanently
- installed on the remote system by an application.
- </summary>
- </member>
- <member name="F:SharpFont.EmbeddingTypes.RestrictedLicense">
- <summary>
- Fonts that have only this bit set must not be modified, embedded
- or exchanged in any manner without first obtaining permission of
- the font software copyright owner.
- </summary>
- </member>
- <member name="F:SharpFont.EmbeddingTypes.PreviewAndPrint">
- <summary>
- If this bit is set, the font may be embedded and temporarily loaded
- on the remote system. Documents containing Preview & Print
- fonts must be opened ‘read-only’; no edits can be applied to the
- document.
- </summary>
- </member>
- <member name="F:SharpFont.EmbeddingTypes.Editable">
- <summary>
- If this bit is set, the font may be embedded but must only be
- installed temporarily on other systems. In contrast to Preview
- & Print fonts, documents containing editable fonts may be
- opened for reading, editing is permitted, and changes may be saved.
- </summary>
- </member>
- <member name="F:SharpFont.EmbeddingTypes.NoSubsetting">
- <summary>
- If this bit is set, the font may not be subsetted prior to
- embedding.
- </summary>
- </member>
- <member name="F:SharpFont.EmbeddingTypes.BitmapOnly">
- <summary>
- If this bit is set, only bitmaps contained in the font may be
- embedded; no outline data may be embedded. If there are no bitmaps
- available in the font, then the font is unembeddable.
- </summary>
- </member>
- <member name="T:SharpFont.FT">
- <summary>
- Provides an API very similar to the original FreeType API.
- </summary>
- <remarks>
- Useful for porting over C code that relies on FreeType. For everything else, use the instance methods of the
- classes provided by SharpFont, they are designed to follow .NET naming and style conventions.
- </remarks>
- <content>
- This file contains all the raw FreeType2 function signatures.
- </content>
- </member>
- <member name="F:SharpFont.FT.AnglePI">
- <summary>
- The angle pi expressed in FT_Angle units.
- </summary>
- </member>
- <member name="F:SharpFont.FT.Angle2PI">
- <summary>
- The angle 2*pi expressed in FT_Angle units.
- </summary>
- </member>
- <member name="F:SharpFont.FT.AnglePI2">
- <summary>
- The angle pi/2 expressed in FT_Angle units.
- </summary>
- </member>
- <member name="F:SharpFont.FT.AnglePI4">
- <summary>
- The angle pi/4 expressed in FT_Angle units.
- </summary>
- </member>
- <member name="M:SharpFont.FT.MulDiv(System.Int32,System.Int32,System.Int32)">
- <summary><para>
- A very simple function used to perform the computation ‘(a*b)/c’ with maximal accuracy (it uses a 64-bit
- intermediate integer whenever necessary).
- </para><para>
- This function isn't necessarily as fast as some processor specific operations, but is at least completely
- portable.
- </para></summary>
- <param name="a">The first multiplier.</param>
- <param name="b">The second multiplier.</param>
- <param name="c">The divisor.</param>
- <returns>
- The result of ‘(a*b)/c’. This function never traps when trying to divide by zero; it simply returns
- ‘MaxInt’ or ‘MinInt’ depending on the signs of ‘a’ and ‘b’.
- </returns>
- </member>
- <member name="M:SharpFont.FT.MulFix(System.Int32,System.Int32)">
- <summary>
- A very simple function used to perform the computation ‘(a*b)/0x10000’ with maximal accuracy. Most of the
- time this is used to multiply a given value by a 16.16 fixed float factor.
- </summary>
- <remarks><para>
- This function has been optimized for the case where the absolute value of ‘a’ is less than 2048, and ‘b’ is
- a 16.16 scaling factor. As this happens mainly when scaling from notional units to fractional pixels in
- FreeType, it resulted in noticeable speed improvements between versions 2.x and 1.x.
- </para><para>
- As a conclusion, always try to place a 16.16 factor as the second argument of this function; this can make
- a great difference.
- </para></remarks>
- <param name="a">The first multiplier.</param>
- <param name="b">The second multiplier. Use a 16.16 factor here whenever possible (see note below).</param>
- <returns>The result of ‘(a*b)/0x10000’.</returns>
- </member>
- <member name="M:SharpFont.FT.DivFix(System.Int32,System.Int32)">
- <summary>
- A very simple function used to perform the computation ‘(a*0x10000)/b’ with maximal accuracy. Most of the
- time, this is used to divide a given value by a 16.16 fixed float factor.
- </summary>
- <remarks>
- The optimization for <see cref="M:SharpFont.FT.DivFix(System.Int32,System.Int32)"/> is simple: If (a << 16) fits in 32 bits, then the division
- is computed directly. Otherwise, we use a specialized version of <see cref="M:SharpFont.FT.MulDiv(System.Int32,System.Int32,System.Int32)"/>.
- </remarks>
- <param name="a">The first multiplier.</param>
- <param name="b">The second multiplier. Use a 16.16 factor here whenever possible (see note below).</param>
- <returns>The result of ‘(a*0x10000)/b’.</returns>
- </member>
- <member name="M:SharpFont.FT.RoundFix(System.Int32)">
- <summary>
- A very simple function used to round a 16.16 fixed number.
- </summary>
- <param name="a">The number to be rounded.</param>
- <returns>The result of ‘(a + 0x8000) & -0x10000’.</returns>
- </member>
- <member name="M:SharpFont.FT.CeilFix(System.Int32)">
- <summary>
- A very simple function used to compute the ceiling function of a 16.16 fixed number.
- </summary>
- <param name="a">The number for which the ceiling function is to be computed.</param>
- <returns>The result of ‘(a + 0x10000 - 1) & -0x10000’.</returns>
- </member>
- <member name="M:SharpFont.FT.FloorFix(System.Int32)">
- <summary>
- A very simple function used to compute the floor function of a 16.16 fixed number.
- </summary>
- <param name="a">The number for which the floor function is to be computed.</param>
- <returns>The result of ‘a & -0x10000’.</returns>
- </member>
- <member name="M:SharpFont.FT.Sin(System.Int32)">
- <summary>
- Return the sinus of a given angle in fixed point format.
- </summary>
- <remarks>
- If you need both the sinus and cosinus for a given angle, use the function <see cref="M:SharpFont.FTVector.Unit(System.Int32)"/>.
- </remarks>
- <param name="angle">The input angle.</param>
- <returns>The sinus value.</returns>
- </member>
- <member name="M:SharpFont.FT.Cos(System.Int32)">
- <summary>
- Return the cosinus of a given angle in fixed point format.
- </summary>
- <remarks>
- If you need both the sinus and cosinus for a given angle, use the function <see cref="M:SharpFont.FTVector.Unit(System.Int32)"/>.
- </remarks>
- <param name="angle">The input angle.</param>
- <returns>The cosinus value.</returns>
- </member>
- <member name="M:SharpFont.FT.Tan(System.Int32)">
- <summary>
- Return the tangent of a given angle in fixed point format.
- </summary>
- <param name="angle">The input angle.</param>
- <returns>The tangent value.</returns>
- </member>
- <member name="M:SharpFont.FT.Atan2(System.Int32,System.Int32)">
- <summary>
- Return the arc-tangent corresponding to a given vector (x,y) in the 2d plane.
- </summary>
- <param name="x">The horizontal vector coordinate.</param>
- <param name="y">The vertical vector coordinate.</param>
- <returns>The arc-tangent value (i.e. angle).</returns>
- </member>
- <member name="M:SharpFont.FT.AngleDiff(System.Int32,System.Int32)">
- <summary>
- Return the difference between two angles. The result is always constrained to the [-PI..PI] interval.
- </summary>
- <param name="angle1">First angle.</param>
- <param name="angle2">Second angle.</param>
- <returns>Constrained value of ‘value2-value1’.</returns>
- </member>
- <member name="M:SharpFont.FT.GetFileFromMacName(System.String,System.Int32@)">
- <summary>
- Return an FSSpec for the disk file containing the named font.
- </summary>
- <param name="fontName">Mac OS name of the font (e.g., Times New Roman Bold).</param>
- <param name="faceIndex">Index of the face. For passing to <see cref="M:SharpFont.Library.NewFaceFromFSSpec(System.IntPtr,System.Int32)"/>.</param>
- <returns>FSSpec to the file. For passing to <see cref="M:SharpFont.Library.NewFaceFromFSSpec(System.IntPtr,System.Int32)"/>.</returns>
- </member>
- <member name="M:SharpFont.FT.GetFileFromMacAtsName(System.String,System.Int32@)">
- <summary>
- Return an FSSpec for the disk file containing the named font.
- </summary>
- <param name="fontName">Mac OS name of the font in ATS framework.</param>
- <param name="faceIndex">Index of the face. For passing to <see cref="M:SharpFont.Library.NewFaceFromFSSpec(System.IntPtr,System.Int32)"/>.</param>
- <returns>FSSpec to the file. For passing to <see cref="M:SharpFont.Library.NewFaceFromFSSpec(System.IntPtr,System.Int32)"/>.</returns>
- </member>
- <member name="M:SharpFont.FT.GetFilePathFromMacAtsName(System.String,System.Byte[])">
- <summary>
- Return a pathname of the disk file and face index for given font name which is handled by ATS framework.
- </summary>
- <param name="fontName">Mac OS name of the font in ATS framework.</param>
- <param name="path">
- Buffer to store pathname of the file. For passing to <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/>. The client must
- allocate this buffer before calling this function.
- </param>
- <returns>Index of the face. For passing to <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/>.</returns>
- </member>
- <member name="F:SharpFont.FT.FreetypeDll">
- <summary>
- Defines the location of the FreeType DLL. Update SharpFont.dll.config if you change this!
- </summary>
- </member>
- <member name="F:SharpFont.FT.CallConvention">
- <summary>
- Defines the calling convention for P/Invoking the native freetype methods.
- </summary>
- </member>
- <member name="T:SharpFont.Gasp">
- <summary>
- A list of values and/or bit-flags returned by the FT_Get_Gasp function.
- </summary>
- <remarks><para>
- The bit-flags <see cref="F:SharpFont.Gasp.DoGridfit"/> and <see cref="F:SharpFont.Gasp.DoGray"/> are to be used for standard font
- rasterization only. Independently of that, <see cref="F:SharpFont.Gasp.SymmetricSmoothing"/> and
- <see cref="F:SharpFont.Gasp.SymmetricGridfit"/> are to be used if ClearType is enabled (and <see cref="F:SharpFont.Gasp.DoGridfit"/>
- and <see cref="F:SharpFont.Gasp.DoGray"/> are consequently ignored).
- </para><para>
- ‘ClearType’ is Microsoft's implementation of LCD rendering, partly protected by patents.
- </para></remarks>
- </member>
- <member name="F:SharpFont.Gasp.NoTable">
- <summary>
- This special value means that there is no GASP table in this face. It is up to the client to decide what to
- do.
- </summary>
- </member>
- <member name="F:SharpFont.Gasp.DoGridfit">
- <summary>
- Grid-fitting and hinting should be performed at the specified ppem. This really means TrueType bytecode
- interpretation. If this bit is not set, no hinting gets applied.
- </summary>
- </member>
- <member name="F:SharpFont.Gasp.DoGray">
- <summary>
- Anti-aliased rendering should be performed at the specified ppem. If not set, do monochrome rendering.
- </summary>
- </member>
- <member name="F:SharpFont.Gasp.SymmetricSmoothing">
- <summary>
- If set, smoothing along multiple axes must be used with ClearType.
- </summary>
- </member>
- <member name="F:SharpFont.Gasp.SymmetricGridfit">
- <summary>
- Grid-fitting must be used with ClearType's symmetric smoothing.
- </summary>
- </member>
- <member name="T:SharpFont.GenericFinalizer">
- <summary>
- Describe a function used to destroy the ‘client’ data of any FreeType object. See the description of the
- <see cref="T:SharpFont.Generic"/> type for details of usage.
- </summary>
- <param name="object">
- The address of the FreeType object which is under finalization. Its client data is accessed through its
- ‘generic’ field.
- </param>
- </member>
- <member name="T:SharpFont.Generic">
- <summary><para>
- Client applications often need to associate their own data to a variety of FreeType core objects. For example,
- a text layout API might want to associate a glyph cache to a given size object.
- </para><para>
- Most FreeType object contains a ‘generic’ field, of type <see cref="T:SharpFont.Generic"/>, which usage is left to client
- applications and font servers.
- </para><para>
- It can be used to store a pointer to client-specific data, as well as the address of a ‘finalizer’ function,
- which will be called by FreeType when the object is destroyed (for example, the previous client example would
- put the address of the glyph cache destructor in the ‘finalizer’ field).
- </para></summary>
- </member>
- <member name="M:SharpFont.Generic.#ctor(System.IntPtr,SharpFont.GenericFinalizer)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Generic"/> class.
- </summary>
- <param name="data">
- A typeless pointer to some client data. The data it cointains must stay fixed until finalizer is called.
- </param>
- <param name="finalizer">A delegate that gets called when the contained object gets finalized.</param>
- </member>
- <member name="P:SharpFont.Generic.SizeInBytes">
- <summary>
- Gets the size of a <see cref="T:SharpFont.Generic"/>, in bytes.
- </summary>
- </member>
- <member name="P:SharpFont.Generic.Data">
- <summary>
- Gets or sets a typeless pointer to any client-specified data. This field is completely ignored by the
- FreeType library.
- </summary>
- </member>
- <member name="P:SharpFont.Generic.Finalizer">
- <summary>
- Gets or sets a pointer to a <see cref="T:SharpFont.GenericFinalizer"/> function, which will be called when the object
- is destroyed. If this field is set to NULL, no code will be called.
- </summary>
- </member>
- <member name="T:SharpFont.Glyph">
- <summary>
- The root glyph structure contains a given glyph image plus its advance width in 16.16 fixed float format.
- </summary>
- </member>
- <member name="M:SharpFont.Glyph.Finalize">
- <summary>
- Finalizes an instance of the Glyph class.
- </summary>
- </member>
- <member name="P:SharpFont.Glyph.IsDisposed">
- <summary>
- Gets a value indicating whether the object has been disposed.
- </summary>
- </member>
- <member name="P:SharpFont.Glyph.Library">
- <summary>
- Gets a handle to the FreeType library object.
- </summary>
- </member>
- <member name="P:SharpFont.Glyph.Format">
- <summary>
- Gets the format of the glyph's image.
- </summary>
- </member>
- <member name="P:SharpFont.Glyph.Advance">
- <summary>
- Gets a 16.16 vector that gives the glyph's advance width.
- </summary>
- </member>
- <member name="M:SharpFont.Glyph.Copy">
- <summary>
- A function used to copy a glyph image. Note that the created <see cref="T:SharpFont.Glyph"/> object must be released
- with <see cref="M:SharpFont.Glyph.Dispose"/>.
- </summary>
- <returns>A handle to the target glyph object. 0 in case of error.</returns>
- </member>
- <member name="M:SharpFont.Glyph.Transform(SharpFont.FTMatrix,SharpFont.FTVector)">
- <summary>
- Transform a glyph image if its format is scalable.
- </summary>
- <param name="matrix">A pointer to a 2x2 matrix to apply.</param>
- <param name="delta">
- A pointer to a 2d vector to apply. Coordinates are expressed in 1/64th of a pixel.
- </param>
- </member>
- <member name="M:SharpFont.Glyph.GetCBox(SharpFont.GlyphBBoxMode)">
- <summary><para>
- Return a glyph's ‘control box’. The control box encloses all the outline's points, including Bézier control
- points. Though it coincides with the exact bounding box for most glyphs, it can be slightly larger in some
- situations (like when rotating an outline which contains Bézier outside arcs).
- </para><para>
- Computing the control box is very fast, while getting the bounding box can take much more time as it needs
- to walk over all segments and arcs in the outline. To get the latter, you can use the ‘ftbbox’ component
- which is dedicated to this single task.
- </para></summary>
- <remarks><para>
- Coordinates are relative to the glyph origin, using the y upwards convention.
- </para><para>
- If the glyph has been loaded with <see cref="F:SharpFont.LoadFlags.NoScale"/>, ‘bbox_mode’ must be set to
- <see cref="F:SharpFont.GlyphBBoxMode.Unscaled"/> to get unscaled font units in 26.6 pixel format. The value
- <see cref="F:SharpFont.GlyphBBoxMode.Subpixels"/> is another name for this constant.
- </para><para>
- If the font is tricky and the glyph has been loaded with <see cref="F:SharpFont.LoadFlags.NoScale"/>, the resulting
- CBox is meaningless. To get reasonable values for the CBox it is necessary to load the glyph at a large
- ppem value (so that the hinting instructions can properly shift and scale the subglyphs), then extracting
- the CBox which can be eventually converted back to font units.
- </para><para>
- Note that the maximum coordinates are exclusive, which means that one can compute the width and height of
- the glyph image (be it in integer or 26.6 pixels) as:
- </para><para>
- <code>
- width = bbox.xMax - bbox.xMin;
- height = bbox.yMax - bbox.yMin;
- </code>
- </para><para>
- Note also that for 26.6 coordinates, if ‘bbox_mode’ is set to <see cref="F:SharpFont.GlyphBBoxMode.Gridfit"/>, the
- coordinates will also be grid-fitted, which corresponds to:
- </para><para>
- <code>
- bbox.xMin = FLOOR(bbox.xMin);
- bbox.yMin = FLOOR(bbox.yMin);
- bbox.xMax = CEILING(bbox.xMax);
- bbox.yMax = CEILING(bbox.yMax);
- </code>
- </para><para>
- To get the bbox in pixel coordinates, set ‘bbox_mode’ to <see cref="F:SharpFont.GlyphBBoxMode.Truncate"/>.
- </para><para>
- To get the bbox in grid-fitted pixel coordinates, set ‘bbox_mode’ to <see cref="F:SharpFont.GlyphBBoxMode.Pixels"/>.
- </para></remarks>
- <param name="mode">The mode which indicates how to interpret the returned bounding box values.</param>
- <returns>
- The glyph coordinate bounding box. Coordinates are expressed in 1/64th of pixels if it is grid-fitted.
- </returns>
- </member>
- <member name="M:SharpFont.Glyph.ToBitmap(SharpFont.RenderMode,SharpFont.FTVector,System.Boolean)">
- <summary>
- Convert a given glyph object to a bitmap glyph object.
- </summary>
- <remarks><para>
- This function does nothing if the glyph format isn't scalable.
- </para><para>
- The glyph image is translated with the ‘origin’ vector before rendering.
- </para><para>
- The first parameter is a pointer to an <see cref="T:SharpFont.Glyph"/> handle, that will be replaced by this function
- (with newly allocated data). Typically, you would use (omitting error handling):
- </para><para>
- --sample code ommitted--
- </para></remarks>
- <param name="renderMode">An enumeration that describes how the data is rendered.</param>
- <param name="origin">
- A pointer to a vector used to translate the glyph image before rendering. Can be 0 (if no translation). The
- origin is expressed in 26.6 pixels.
- </param>
- <param name="destroy">
- A boolean that indicates that the original glyph image should be destroyed by this function. It is never
- destroyed in case of error.
- </param>
- </member>
- <member name="M:SharpFont.Glyph.Stroke(SharpFont.Stroker,System.Boolean)">
- <summary>
- Stroke a given outline glyph object with a given stroker.
- </summary>
- <remarks>
- The source glyph is untouched in case of error.
- </remarks>
- <param name="stroker">A stroker handle.</param>
- <param name="destroy">A Boolean. If 1, the source glyph object is destroyed on success.</param>
- <returns>New glyph handle.</returns>
- </member>
- <member name="M:SharpFont.Glyph.StrokeBorder(SharpFont.Stroker,System.Boolean,System.Boolean)">
- <summary>
- Stroke a given outline glyph object with a given stroker, but only return either its inside or outside
- border.
- </summary>
- <remarks>
- The source glyph is untouched in case of error.
- </remarks>
- <param name="stroker">A stroker handle.</param>
- <param name="inside">A Boolean. If 1, return the inside border, otherwise the outside border.</param>
- <param name="destroy">A Boolean. If 1, the source glyph object is destroyed on success.</param>
- <returns>New glyph handle.</returns>
- </member>
- <member name="M:SharpFont.Glyph.Dispose">
- <summary>
- Disposes the Glyph.
- </summary>
- </member>
- <member name="T:SharpFont.GlyphBBoxMode">
- <summary>
- The mode how the values of <see cref="M:SharpFont.Glyph.GetCBox(SharpFont.GlyphBBoxMode)"/> are returned.
- </summary>
- </member>
- <member name="F:SharpFont.GlyphBBoxMode.Unscaled">
- <summary>Return unscaled font units.</summary>
- </member>
- <member name="F:SharpFont.GlyphBBoxMode.Subpixels">
- <summary>Return unfitted 26.6 coordinates.</summary>
- </member>
- <member name="F:SharpFont.GlyphBBoxMode.Gridfit">
- <summary>Return grid-fitted 26.6 coordinates.</summary>
- </member>
- <member name="F:SharpFont.GlyphBBoxMode.Truncate">
- <summary>Return coordinates in integer pixels.</summary>
- </member>
- <member name="F:SharpFont.GlyphBBoxMode.Pixels">
- <summary>Return grid-fitted pixel coordinates.</summary>
- </member>
- <member name="T:SharpFont.GlyphFormat">
- <summary>
- An enumeration type used to describe the format of a given glyph image. Note that this version of FreeType only
- supports two image formats, even though future font drivers will be able to register their own format.
- </summary>
- </member>
- <member name="F:SharpFont.GlyphFormat.None">
- <summary>
- The value 0 is reserved.
- </summary>
- </member>
- <member name="F:SharpFont.GlyphFormat.Composite">
- <summary>
- The glyph image is a composite of several other images. This format is only used with
- <see cref="F:SharpFont.LoadFlags.NoRecurse"/>, and is used to report compound glyphs (like accented characters).
- </summary>
- </member>
- <member name="F:SharpFont.GlyphFormat.Bitmap">
- <summary>
- The glyph image is a bitmap, and can be described as an <see cref="T:SharpFont.FTBitmap"/>. You generally need to
- access the ‘bitmap’ field of the <see cref="T:SharpFont.GlyphSlot"/> structure to read it.
- </summary>
- </member>
- <member name="F:SharpFont.GlyphFormat.Outline">
- <summary>
- The glyph image is a vectorial outline made of line segments and Bézier arcs; it can be described as an
- <see cref="F:SharpFont.GlyphFormat.Outline"/>; you generally want to access the ‘outline’ field of the <see cref="T:SharpFont.GlyphSlot"/>
- structure to read it.
- </summary>
- </member>
- <member name="F:SharpFont.GlyphFormat.Plotter">
- <summary>
- The glyph image is a vectorial path with no inside and outside contours. Some Type 1 fonts, like those in
- the Hershey family, contain glyphs in this format. These are described as <see cref="F:SharpFont.GlyphFormat.Outline"/>, but
- FreeType isn't currently capable of rendering them correctly.
- </summary>
- </member>
- <member name="T:SharpFont.GlyphMetrics">
- <summary>
- A structure used to model the metrics of a single glyph. The values are expressed in 26.6 fractional pixel
- format; if the flag <see cref="F:SharpFont.LoadFlags.NoScale"/> has been used while loading the glyph, values are expressed
- in font units instead.
- </summary>
- <remarks>
- If not disabled with <see cref="F:SharpFont.LoadFlags.NoHinting"/>, the values represent dimensions of the hinted glyph (in
- case hinting is applicable).
- </remarks>
- </member>
- <member name="P:SharpFont.GlyphMetrics.Width">
- <summary>
- Gets the glyph's width.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.Height">
- <summary>
- Gets the glyph's height.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.HorizontalBearingX">
- <summary>
- Gets the left side bearing for horizontal layout.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.HorizontalBearingY">
- <summary>
- Gets the top side bearing for horizontal layout.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.HorizontalAdvance">
- <summary>
- Gets the advance width for horizontal layout.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.VerticalBearingX">
- <summary>
- Gets the left side bearing for vertical layout.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.VerticalBearingY">
- <summary>
- Gets the top side bearing for vertical layout. Larger positive values mean further below the vertical glyph
- origin.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphMetrics.VerticalAdvance">
- <summary>
- Gets the advance height for vertical layout. Positive values mean the glyph has a positive advance
- downward.
- </summary>
- </member>
- <member name="T:SharpFont.GlyphSlot">
- <summary>
- FreeType root glyph slot class structure. A glyph slot is a container where individual glyphs can be loaded, be
- they in outline or bitmap format.
- </summary>
- <remarks><para>
- If <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> is called with default flags (see <see cref="F:SharpFont.LoadFlags.Default"/>)
- the glyph image is loaded in the glyph slot in its native format (e.g., an outline glyph for TrueType and Type
- 1 formats).
- </para><para>
- This image can later be converted into a bitmap by calling <see cref="M:SharpFont.GlyphSlot.RenderGlyph(SharpFont.RenderMode)"/>. This function finds the
- current renderer for the native image's format, then invokes it.
- </para><para>
- The renderer is in charge of transforming the native image through the slot's face transformation fields, then
- converting it into a bitmap that is returned in ‘slot->bitmap’.
- </para><para>
- Note that ‘slot->bitmap_left’ and ‘slot->bitmap_top’ are also used to specify the position of the bitmap
- relative to the current pen position (e.g., coordinates (0,0) on the baseline). Of course, ‘slot->format’ is
- also changed to <see cref="F:SharpFont.GlyphFormat.Bitmap"/>.
- </para></remarks>
- <example>
- <code>
- FT_Pos origin_x = 0;
- FT_Pos prev_rsb_delta = 0;
-
-
- for all glyphs do
- <compute kern between current and previous glyph and add it to
- `origin_x'>
-
- <load glyph with `FT_Load_Glyph'>
-
- if ( prev_rsb_delta - face->glyph->lsb_delta >= 32 )
- origin_x -= 64;
- else if ( prev_rsb_delta - face->glyph->lsb_delta < -32 )
- origin_x += 64;
-
- prev_rsb_delta = face->glyph->rsb_delta;
-
- <save glyph image, or render glyph, or ...>
-
- origin_x += face->glyph->advance.x;
- endfor
- </code>
- </example>
- </member>
- <member name="P:SharpFont.GlyphSlot.Library">
- <summary>
- Gets a handle to the FreeType library instance this slot belongs to.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Face">
- <summary>
- Gets a handle to the parent face object.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Next">
- <summary>
- Gets the next <see cref="T:SharpFont.GlyphSlot"/>. In some cases (like some font tools), several glyph slots per face
- object can be a good thing. As this is rare, the glyph slots are listed through a direct, single-linked
- list using its ‘next’ field.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Generic">
- <summary>
- Gets a typeless pointer which is unused by the FreeType library or any of its drivers. It can be used by
- client applications to link their own data to each glyph slot object.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Metrics">
- <summary><para>
- Gets the metrics of the last loaded glyph in the slot. The returned values depend on the last load flags
- (see the <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> API function) and can be expressed either in 26.6
- fractional pixels or font units.
- </para><para>
- Note that even when the glyph image is transformed, the metrics are not.
- </para></summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.LinearHorizontalAdvance">
- <summary>
- Gets the advance width of the unhinted glyph. Its value is expressed in 16.16 fractional pixels, unless
- <see cref="F:SharpFont.LoadFlags.LinearDesign"/> is set when loading the glyph. This field can be important to perform
- correct WYSIWYG layout. Only relevant for outline glyphs.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.LinearVerticalAdvance">
- <summary>
- Gets the advance height of the unhinted glyph. Its value is expressed in 16.16 fractional pixels, unless
- <see cref="F:SharpFont.LoadFlags.LinearDesign"/> is set when loading the glyph. This field can be important to perform
- correct WYSIWYG layout. Only relevant for outline glyphs.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Advance">
- <summary>
- Gets the advance. This shorthand is, depending on <see cref="F:SharpFont.LoadFlags.IgnoreTransform"/>, the transformed
- advance width for the glyph (in 26.6 fractional pixel format). As specified with
- <see cref="F:SharpFont.LoadFlags.VerticalLayout"/>, it uses either the ‘horiAdvance’ or the ‘vertAdvance’ value of
- ‘metrics’ field.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Format">
- <summary>
- Gets the glyph format. This field indicates the format of the image contained in the glyph slot. Typically
- <see cref="F:SharpFont.GlyphFormat.Bitmap"/>, <see cref="F:SharpFont.GlyphFormat.Outline"/>, or
- <see cref="F:SharpFont.GlyphFormat.Composite"/>, but others are possible.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Bitmap">
- <summary>
- Gets the bitmap. This field is used as a bitmap descriptor when the slot format is
- <see cref="F:SharpFont.GlyphFormat.Bitmap"/>. Note that the address and content of the bitmap buffer can change between
- calls of <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> and a few other functions.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.BitmapLeft">
- <summary>
- Gets the bitmap's left bearing expressed in integer pixels. Of course, this is only valid if the format is
- <see cref="F:SharpFont.GlyphFormat.Bitmap"/>.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.BitmapTop">
- <summary>
- Gets the bitmap's top bearing expressed in integer pixels. Remember that this is the distance from the
- baseline to the top-most glyph scanline, upwards y coordinates being positive.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Outline">
- <summary>
- Gets the outline descriptor for the current glyph image if its format is <see cref="F:SharpFont.GlyphFormat.Outline"/>.
- Once a glyph is loaded, ‘outline’ can be transformed, distorted, embolded, etc. However, it must not be
- freed.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.SubglyphsCount">
- <summary>
- Gets the number of subglyphs in a composite glyph. This field is only valid for the composite glyph format
- that should normally only be loaded with the <see cref="F:SharpFont.LoadFlags.NoRecurse"/> flag. For now this is
- internal to FreeType.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Subglyphs">
- <summary>
- Gets an array of subglyph descriptors for composite glyphs. There are ‘num_subglyphs’ elements in there.
- Currently internal to FreeType.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.ControlData">
- <summary>
- Gets the control data. Certain font drivers can also return the control data for a given glyph image (e.g.
- TrueType bytecode, Type 1 charstrings, etc.). This field is a pointer to such data.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.ControlLength">
- <summary>
- Gets the length in bytes of the control data.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.DeltaLsb">
- <summary>
- Gets the difference between hinted and unhinted left side bearing while autohinting is active. Zero
- otherwise.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.DeltaRsb">
- <summary>
- Gets the difference between hinted and unhinted right side bearing while autohinting is active. Zero
- otherwise.
- </summary>
- </member>
- <member name="P:SharpFont.GlyphSlot.Other">
- <summary>
- Gets other data. Really wicked formats can use this pointer to present their own glyph image to client
- applications. Note that the application needs to know about the image format.
- </summary>
- </member>
- <member name="M:SharpFont.GlyphSlot.RenderGlyph(SharpFont.RenderMode)">
- <summary>
- Convert a given glyph image to a bitmap. It does so by inspecting the glyph image format, finding the
- relevant renderer, and invoking it.
- </summary>
- <param name="mode">This is the render mode used to render the glyph image into a bitmap.</param>
- </member>
- <member name="M:SharpFont.GlyphSlot.GetSubGlyphInfo(System.UInt32,System.Int32@,SharpFont.SubGlyphFlags@,System.Int32@,System.Int32@,SharpFont.FTMatrix@)">
- <summary>
- Retrieve a description of a given subglyph. Only use it if <see cref="P:SharpFont.GlyphSlot.Format"/> is
- <see cref="F:SharpFont.GlyphFormat.Composite"/>; an error is returned otherwise.
- </summary>
- <remarks>
- The values of ‘*p_arg1’, ‘*p_arg2’, and ‘*p_transform’ must be interpreted depending on the flags returned
- in ‘*p_flags’. See the TrueType specification for details.
- </remarks>
- <param name="subIndex">
- The index of the subglyph. Must be less than <see cref="P:SharpFont.GlyphSlot.SubglyphsCount"/>.
- </param>
- <param name="index">The glyph index of the subglyph.</param>
- <param name="flags">The subglyph flags, see <see cref="T:SharpFont.SubGlyphFlags"/>.</param>
- <param name="arg1">The subglyph's first argument (if any).</param>
- <param name="arg2">The subglyph's second argument (if any).</param>
- <param name="transform">The subglyph transformation (if any).</param>
- </member>
- <member name="M:SharpFont.GlyphSlot.GetGlyph">
- <summary>
- A function used to extract a glyph image from a slot. Note that the created <see cref="T:SharpFont.Glyph"/> object must
- be released with <see cref="M:SharpFont.Glyph.Dispose"/>.
- </summary>
- <returns>A handle to the glyph object.</returns>
- </member>
- <member name="M:SharpFont.GlyphSlot.OwnBitmap">
- <summary>
- Make sure that a glyph slot owns ‘slot->bitmap’.
- </summary>
- <remarks>
- This function is to be used in combination with <see cref="M:SharpFont.FTBitmap.Embolden(SharpFont.Library,System.Int32,System.Int32)"/>.
- </remarks>
- </member>
- <member name="T:SharpFont.KerningMode">
- <summary>
- An enumeration used to specify which kerning values to return in <see cref="M:SharpFont.Face.GetKerning(System.UInt32,System.UInt32,SharpFont.KerningMode)"/>.
- </summary>
- </member>
- <member name="F:SharpFont.KerningMode.Default">
- <summary>
- Return scaled and grid-fitted kerning distances.
- </summary>
- </member>
- <member name="F:SharpFont.KerningMode.Unfitted">
- <summary>
- Return scaled but un-grid-fitted kerning distances.
- </summary>
- </member>
- <member name="F:SharpFont.KerningMode.Unscaled">
- <summary>
- Return the kerning vector in original font units.
- </summary>
- </member>
- <member name="T:SharpFont.Library">
- <summary><para>
- A handle to a FreeType library instance. Each ‘library’ is completely independent from the others; it is the
- ‘root’ of a set of objects like fonts, faces, sizes, etc.
- </para><para>
- It also embeds a memory manager (see <see cref="T:SharpFont.Memory"/>), as well as a scan-line converter object (see
- <see cref="T:SharpFont.Raster"/>).
- </para><para>
- For multi-threading applications each thread should have its own <see cref="T:SharpFont.Library"/> object.
- </para></summary>
- </member>
- <member name="M:SharpFont.Library.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Library"/> class.
- </summary>
- </member>
- <member name="M:SharpFont.Library.#ctor(SharpFont.Memory)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Library"/> class.
- </summary>
- <param name="memory">A custom FreeType memory manager.</param>
- </member>
- <member name="M:SharpFont.Library.Finalize">
- <summary>
- Finalizes an instance of the <see cref="T:SharpFont.Library"/> class.
- </summary>
- </member>
- <member name="P:SharpFont.Library.IsDisposed">
- <summary>
- Gets a value indicating whether the object has been disposed.
- </summary>
- </member>
- <member name="P:SharpFont.Library.Version">
- <summary>
- Gets the version of the FreeType library being used.
- </summary>
- </member>
- <member name="M:SharpFont.Library.NewFace(System.String,System.Int32)">
- <summary>
- This function calls <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/> to open a font by its pathname.
- </summary>
- <param name="path">A path to the font file.</param>
- <param name="faceIndex">The index of the face within the font. The first face has index 0.</param>
- <returns>
- A handle to a new face object. If ‘faceIndex’ is greater than or equal to zero, it must be non-NULL.
- </returns>
- <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>
- </member>
- <member name="M:SharpFont.Library.NewMemoryFace(System.Byte[],System.Int32)">
- <summary>
- This function calls <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/> to open a font which has been loaded into memory.
- </summary>
- <remarks>
- You must not deallocate the memory before calling <see cref="M:SharpFont.Face.Dispose"/>.
- </remarks>
- <param name="file">A pointer to the beginning of the font data.</param>
- <param name="faceIndex">The index of the face within the font. The first face has index 0.</param>
- <returns>
- A handle to a new face object. If ‘faceIndex’ is greater than or equal to zero, it must be non-NULL.
- </returns>
- <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>
- </member>
- <member name="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)">
- <summary>
- Create a <see cref="T:SharpFont.Face"/> object from a given resource described by <see cref="T:SharpFont.OpenArgs"/>.
- </summary>
- <remarks><para>
- Unlike FreeType 1.x, this function automatically creates a glyph slot for the face object which can be
- accessed directly through <see cref="P:SharpFont.Face.Glyph"/>.
- </para><para>
- OpenFace can be used to quickly check whether the font format of a given font resource is supported by
- FreeType. If the ‘faceIndex’ field is negative, the function's return value is 0 if the font format is
- recognized, or non-zero otherwise; the function returns a more or less empty face handle in ‘*aface’ (if
- ‘aface’ isn't NULL). The only useful field in this special case is <see cref="P:SharpFont.Face.FaceCount"/> which gives
- the number of faces within the font file. After examination, the returned <see cref="T:SharpFont.Face"/> structure
- should be deallocated with a call to <see cref="M:SharpFont.Face.Dispose"/>.
- </para><para>
- Each new face object created with this function also owns a default <see cref="T:SharpFont.FTSize"/> object, accessible
- as <see cref="P:SharpFont.Face.Size"/>.
- </para><para>
- See the discussion of reference counters in the description of FT_Reference_Face.
- </para></remarks>
- <param name="args">
- A pointer to an <see cref="T:SharpFont.OpenArgs"/> structure which must be filled by the caller.
- </param>
- <param name="faceIndex">The index of the face within the font. The first face has index 0.</param>
- <returns>
- A handle to a new face object. If ‘faceIndex’ is greater than or equal to zero, it must be non-NULL.
- </returns>
- </member>
- <member name="M:SharpFont.Library.NewFaceFromFond(System.IntPtr,System.Int32)">
- <summary>
- Create a new face object from a FOND resource.
- </summary>
- <remarks>
- This function can be used to create <see cref="T:SharpFont.Face"/> objects from fonts that are installed in the system
- as follows.
- <code>
- fond = GetResource( 'FOND', fontName );
- error = FT_New_Face_From_FOND( library, fond, 0, &face );
- </code>
- </remarks>
- <param name="fond">A FOND resource.</param>
- <param name="faceIndex">Only supported for the -1 ‘sanity check’ special case.</param>
- <returns>A handle to a new face object.</returns>
- </member>
- <member name="M:SharpFont.Library.NewFaceFromFSSpec(System.IntPtr,System.Int32)">
- <summary>
- Create a new face object from a given resource and typeface index using an FSSpec to the font file.
- </summary>
- <remarks>
- <see cref="M:SharpFont.Library.NewFaceFromFSSpec(System.IntPtr,System.Int32)"/> is identical to <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/> except it accepts an FSSpec instead
- of a path.
- </remarks>
- <param name="spec">FSSpec to the font file.</param>
- <param name="faceIndex">The index of the face within the resource. The first face has index 0.</param>
- <returns>A handle to a new face object.</returns>
- </member>
- <member name="M:SharpFont.Library.NewFaceFromFSRef(System.IntPtr,System.Int32)">
- <summary>
- Create a new face object from a given resource and typeface index using an FSRef to the font file.
- </summary>
- <remarks>
- <see cref="M:SharpFont.Library.NewFaceFromFSRef(System.IntPtr,System.Int32)"/> is identical to <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/> except it accepts an FSRef instead of
- a path.
- </remarks>
- <param name="ref">FSRef to the font file.</param>
- <param name="faceIndex">The index of the face within the resource. The first face has index 0.</param>
- <returns>A handle to a new face object.</returns>
- </member>
- <member name="M:SharpFont.Library.AddModule(SharpFont.ModuleClass)">
- <summary>
- Add a new module to a given library instance.
- </summary>
- <remarks>
- An error will be returned if a module already exists by that name, or if the module requires a version of
- FreeType that is too great.
- </remarks>
- <param name="clazz">A pointer to class descriptor for the module.</param>
- </member>
- <member name="M:SharpFont.Library.GetModule(System.String)">
- <summary>
- Find a module by its name.
- </summary>
- <remarks>
- FreeType's internal modules aren't documented very well, and you should look up the source code for
- details.
- </remarks>
- <param name="moduleName">The module's name (as an ASCII string).</param>
- <returns>A module handle. 0 if none was found.</returns>
- </member>
- <member name="M:SharpFont.Library.RemoveModule(SharpFont.Module)">
- <summary>
- Remove a given module from a library instance.
- </summary>
- <remarks>
- The module object is destroyed by the function in case of success.
- </remarks>
- <param name="module">A handle to a module object.</param>
- </member>
- <member name="M:SharpFont.Library.SetDebugHook(System.UInt32,System.IntPtr)">
- <summary>
- Set a debug hook function for debugging the interpreter of a font format.
- </summary>
- <remarks><para>
- Currently, four debug hook slots are available, but only two (for the TrueType and the Type 1 interpreter)
- are defined.
- </para><para>
- Since the internal headers of FreeType are no longer installed, the symbol ‘FT_DEBUG_HOOK_TRUETYPE’ isn't
- available publicly. This is a bug and will be fixed in a forthcoming release.
- </para></remarks>
- <param name="hookIndex">The index of the debug hook. You should use the values defined in ‘ftobjs.h’, e.g., ‘FT_DEBUG_HOOK_TRUETYPE’.</param>
- <param name="debugHook">The function used to debug the interpreter.</param>
- </member>
- <member name="M:SharpFont.Library.AddDefaultModules">
- <summary>
- Add the set of default drivers to a given library object. This is only useful when you create a library
- object with <see cref="M:SharpFont.Library.#ctor(SharpFont.Memory)"/> (usually to plug a custom memory manager).
- </summary>
- </member>
- <member name="M:SharpFont.Library.GetRenderer(SharpFont.GlyphFormat)">
- <summary>
- Retrieve the current renderer for a given glyph format.
- </summary>
- <remarks><para>
- An error will be returned if a module already exists by that name, or if the module requires a version of
- FreeType that is too great.
- </para><para>
- To add a new renderer, simply use <see cref="M:SharpFont.Library.AddModule(SharpFont.ModuleClass)"/>. To retrieve a renderer by its name, use
- <see cref="M:SharpFont.Library.GetModule(System.String)"/>.
- </para></remarks>
- <param name="format">The glyph format.</param>
- <returns>A renderer handle. 0 if none found.</returns>
- </member>
- <member name="M:SharpFont.Library.SetRenderer(SharpFont.Renderer,System.UInt32,SharpFont.Parameter[])">
- <summary>
- Set the current renderer to use, and set additional mode.
- </summary>
- <remarks><para>
- In case of success, the renderer will be used to convert glyph images in the renderer's known format into
- bitmaps.
- </para><para>
- This doesn't change the current renderer for other formats.
- </para><para>
- Currently, only the B/W renderer, if compiled with FT_RASTER_OPTION_ANTI_ALIASING (providing a 5-levels
- anti-aliasing mode; this option must be set directly in ‘ftraster.c’ and is undefined by default) accepts a
- single tag ‘pal5’ to set its gray palette as a character string with 5 elements. Consequently, the third
- and fourth argument are zero normally.
- </para></remarks>
- <param name="renderer">A handle to the renderer object.</param>
- <param name="numParams">The number of additional parameters.</param>
- <param name="parameters">Additional parameters.</param>
- </member>
- <member name="M:SharpFont.Library.SetLcdFilter(SharpFont.LcdFilter)">
- <summary>
- This function is used to apply color filtering to LCD decimated bitmaps, like the ones used when calling
- <see cref="M:SharpFont.GlyphSlot.RenderGlyph(SharpFont.RenderMode)"/> with <see cref="F:SharpFont.RenderMode.Lcd"/> or
- <see cref="F:SharpFont.RenderMode.VerticalLcd"/>.
- </summary>
- <remarks><para>
- This feature is always disabled by default. Clients must make an explicit call to this function with a
- ‘filter’ value other than <see cref="F:SharpFont.LcdFilter.None"/> in order to enable it.
- </para><para>
- Due to <b>PATENTS</b> covering subpixel rendering, this function doesn't do anything except returning
- <see cref="F:SharpFont.Error.UnimplementedFeature"/> if the configuration macro FT_CONFIG_OPTION_SUBPIXEL_RENDERING is
- not defined in your build of the library, which should correspond to all default builds of FreeType.
- </para><para>
- The filter affects glyph bitmaps rendered through <see cref="M:SharpFont.GlyphSlot.RenderGlyph(SharpFont.RenderMode)"/>,
- <see cref="M:SharpFont.Outline.GetBitmap(SharpFont.FTBitmap)"/>, <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>, and <see cref="M:SharpFont.Face.LoadChar(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>.
- </para><para>
- It does not affect the output of <see cref="M:SharpFont.Outline.Render(SharpFont.RasterParams)"/> and
- <see cref="M:SharpFont.Outline.GetBitmap(SharpFont.FTBitmap)"/>.
- </para><para>
- If this feature is activated, the dimensions of LCD glyph bitmaps are either larger or taller than the
- dimensions of the corresponding outline with regards to the pixel grid. For example, for
- <see cref="F:SharpFont.RenderMode.Lcd"/>, the filter adds up to 3 pixels to the left, and up to 3 pixels to the right.
- </para><para>
- The bitmap offset values are adjusted correctly, so clients shouldn't need to modify their layout and glyph
- positioning code when enabling the filter.
- </para></remarks>
- <param name="filter"><para>
- The filter type.
- </para><para>
- You can use <see cref="F:SharpFont.LcdFilter.None"/> here to disable this feature, or <see cref="F:SharpFont.LcdFilter.Default"/>
- to use a default filter that should work well on most LCD screens.
- </para></param>
- </member>
- <member name="M:SharpFont.Library.SetLcdFilterWeights(System.Byte[])">
- <summary>
- Use this function to override the filter weights selected by <see cref="M:SharpFont.Library.SetLcdFilter(SharpFont.LcdFilter)"/>. By default,
- FreeType uses the quintuple (0x00, 0x55, 0x56, 0x55, 0x00) for <see cref="F:SharpFont.LcdFilter.Light"/>, and (0x10,
- 0x40, 0x70, 0x40, 0x10) for <see cref="F:SharpFont.LcdFilter.Default"/> and <see cref="F:SharpFont.LcdFilter.Legacy"/>.
- </summary>
- <remarks><para>
- Due to <b>PATENTS</b> covering subpixel rendering, this function doesn't do anything except returning
- <see cref="F:SharpFont.Error.UnimplementedFeature"/> if the configuration macro FT_CONFIG_OPTION_SUBPIXEL_RENDERING is
- not defined in your build of the library, which should correspond to all default builds of FreeType.
- </para><para>
- This function must be called after <see cref="M:SharpFont.Library.SetLcdFilter(SharpFont.LcdFilter)"/> to have any effect.
- </para></remarks>
- <param name="weights">
- A pointer to an array; the function copies the first five bytes and uses them to specify the filter
- weights.
- </param>
- </member>
- <member name="M:SharpFont.Library.GetTrueTypeEngineType">
- <summary>
- Return an <see cref="T:SharpFont.TrueType.EngineType"/> value to indicate which level of the TrueType virtual machine a given
- library instance supports.
- </summary>
- <returns>A value indicating which level is supported.</returns>
- </member>
- <member name="M:SharpFont.Library.Dispose">
- <summary>
- Disposes the Library.
- </summary>
- </member>
- <member name="T:SharpFont.LoadFlags">
- <summary>
- A list of bit-field constants used with <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> to indicate what kind of operations to
- perform during glyph loading.
- </summary>
- <remarks><para>
- By default, hinting is enabled and the font's native hinter (see <see cref="F:SharpFont.FaceFlags.Hinter"/>) is preferred
- over the auto-hinter. You can disable hinting by setting <see cref="F:SharpFont.LoadFlags.NoHinting"/> or change the
- precedence by setting <see cref="F:SharpFont.LoadFlags.ForceAutohint"/>. You can also set
- <see cref="F:SharpFont.LoadFlags.NoAutohint"/> in case you don't want the auto-hinter to be used at all.
- </para><para>
- See the description of <see cref="F:SharpFont.FaceFlags.Tricky"/> for a special exception (affecting only a handful of
- Asian fonts).
- </para><para>
- Besides deciding which hinter to use, you can also decide which hinting algorithm to use. See
- <see cref="T:SharpFont.LoadTarget"/> for details.
- </para></remarks>
- </member>
- <member name="F:SharpFont.LoadFlags.Default">
- <summary>
- Corresponding to 0, this value is used as the default glyph load operation. In this case, the following
- happens:
- <list type="number">
- <item><description>
- FreeType looks for a bitmap for the glyph corresponding to the face's current size. If one is found, the
- function returns. The bitmap data can be accessed from the glyph slot (see note below).
- </description></item>
- <item><description>
- If no embedded bitmap is searched or found, FreeType looks for a scalable outline. If one is found, it is
- loaded from the font file, scaled to device pixels, then ‘hinted’ to the pixel grid in order to optimize
- it. The outline data can be accessed from the glyph slot (see note below).
- </description></item>
- </list>
- Note that by default, the glyph loader doesn't render outlines into bitmaps. The following flags are used
- to modify this default behaviour to more specific and useful cases.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.NoScale">
- <summary><para>
- Don't scale the outline glyph loaded, but keep it in font units.
- </para><para>
- This flag implies <see cref="F:SharpFont.LoadFlags.NoHinting"/> and <see cref="F:SharpFont.LoadFlags.NoBitmap"/>, and unsets
- <see cref="F:SharpFont.LoadFlags.Render"/>.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadFlags.NoHinting">
- <summary><para>
- Disable hinting. This generally generates ‘blurrier’ bitmap glyph when the glyph is rendered in any of the
- anti-aliased modes. See also the note below.
- </para><para>
- This flag is implied by <see cref="F:SharpFont.LoadFlags.NoScale"/>.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadFlags.Render">
- <summary><para>
- Call <see cref="M:SharpFont.GlyphSlot.RenderGlyph(SharpFont.RenderMode)"/> after the glyph is loaded. By default, the glyph is rendered in
- <see cref="F:SharpFont.RenderMode.Normal"/> mode. This can be overridden by <see cref="T:SharpFont.LoadTarget"/> or
- <see cref="F:SharpFont.LoadFlags.Monochrome"/>.
- </para><para>
- This flag is unset by <see cref="F:SharpFont.LoadFlags.NoScale"/>.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadFlags.NoBitmap">
- <summary><para>
- Ignore bitmap strikes when loading. Bitmap-only fonts ignore this flag.
- </para><para>
- <see cref="F:SharpFont.LoadFlags.NoScale"/> always sets this flag.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadFlags.VerticalLayout">
- <summary>
- Load the glyph for vertical text layout. Don't use it as it is problematic currently.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.ForceAutohint">
- <summary>
- Indicates that the auto-hinter is preferred over the font's native hinter. See also the note below.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.CropBitmap">
- <summary>
- Indicates that the font driver should crop the loaded bitmap glyph (i.e., remove all space around its black
- bits). Not all drivers implement this.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.Pedantic">
- <summary>
- Indicates that the font driver should perform pedantic verifications during glyph loading. This is mostly
- used to detect broken glyphs in fonts. By default, FreeType tries to handle broken fonts also.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.IgnoreGlobalAdvanceWidth">
- <summary>
- Ignored. Deprecated.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.NoRecurse">
- <summary><para>
- This flag is only used internally. It merely indicates that the font driver should not load composite
- glyphs recursively. Instead, it should set the ‘num_subglyph’ and ‘subglyphs’ values of the glyph slot
- accordingly, and set ‘glyph->format’ to <see cref="F:SharpFont.GlyphFormat.Composite"/>.
- </para><para>
- The description of sub-glyphs is not available to client applications for now.
- </para><para>
- This flag implies <see cref="F:SharpFont.LoadFlags.NoScale"/> and <see cref="F:SharpFont.LoadFlags.IgnoreTransform"/>.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadFlags.IgnoreTransform">
- <summary>
- Indicates that the transform matrix set by <see cref="M:SharpFont.Face.SetTransform(SharpFont.FTMatrix,SharpFont.FTVector)"/> should be ignored.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.Monochrome">
- <summary><para>
- This flag is used with <see cref="F:SharpFont.LoadFlags.Render"/> to indicate that you want to render an outline glyph
- to a 1-bit monochrome bitmap glyph, with 8 pixels packed into each byte of the bitmap data.
- </para><para>
- Note that this has no effect on the hinting algorithm used. You should rather use
- <see cref="F:SharpFont.LoadTarget.Mono"/> so that the monochrome-optimized hinting algorithm is used.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadFlags.LinearDesign">
- <summary>
- Indicates that the ‘linearHoriAdvance’ and ‘linearVertAdvance’ fields of <see cref="T:SharpFont.GlyphSlot"/> should be
- kept in font units. See <see cref="T:SharpFont.GlyphSlot"/> for details.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.NoAutohint">
- <summary>
- Disable auto-hinter. See also the note below.
- </summary>
- </member>
- <member name="F:SharpFont.LoadFlags.AdvanceFlagFastOnly">
- <summary><para>
- A bit-flag to be OR-ed with the ‘flags’ parameter of the <see cref="M:SharpFont.Face.GetAdvance(System.UInt32,SharpFont.LoadFlags)"/> and
- <see cref="M:SharpFont.Face.GetAdvances(System.UInt32,System.UInt32,SharpFont.LoadFlags)"/> functions.
- </para><para>
- If set, it indicates that you want these functions to fail if the corresponding hinting mode or font driver
- doesn't allow for very quick advance computation.
- </para><para>
- Typically, glyphs which are either unscaled, unhinted, bitmapped, or light-hinted can have their advance
- width computed very quickly.
- </para><para>
- Normal and bytecode hinted modes, which require loading, scaling, and hinting of the glyph outline, are
- extremely slow by comparison.
- </para></summary>
- </member>
- <member name="T:SharpFont.LoadTarget">
- <summary><para>
- A list of values that are used to select a specific hinting algorithm to use by the hinter. You should OR one
- of these values to your ‘load_flags’ when calling <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/>.
- </para><para>
- Note that font's native hinters may ignore the hinting algorithm you have specified (e.g., the TrueType
- bytecode interpreter). You can set <see cref="F:SharpFont.LoadFlags.ForceAutohint"/> to ensure that the auto-hinter is
- used.
- </para><para>
- Also note that <see cref="F:SharpFont.LoadTarget.Light"/> is an exception, in that it always implies
- <see cref="F:SharpFont.LoadFlags.ForceAutohint"/>.
- </para></summary>
- <remarks><para>
- You should use only one of the <see cref="T:SharpFont.LoadTarget"/> values in your ‘load_flags’. They can't be ORed.
- </para><para>
- If <see cref="F:SharpFont.LoadFlags.Render"/> is also set, the glyph is rendered in the corresponding mode (i.e., the mode
- which matches the used algorithm best) unless <see cref="F:SharpFont.LoadFlags.Monochrome"/> is set.
- </para><para>
- You can use a hinting algorithm that doesn't correspond to the same rendering mode. As an example, it is
- possible to use the ‘light’ hinting algorithm and have the results rendered in horizontal LCD pixel mode, with
- code like:
- <code>
- FT_Load_Glyph( face, glyph_index,
- load_flags | FT_LOAD_TARGET_LIGHT );
-
- FT_Render_Glyph( face->glyph, FT_RENDER_MODE_LCD );
- </code>
- </para></remarks>
- </member>
- <member name="F:SharpFont.LoadTarget.Normal">
- <summary>
- This corresponds to the default hinting algorithm, optimized for standard gray-level rendering. For
- monochrome output, use <see cref="F:SharpFont.LoadTarget.Mono"/> instead.
- </summary>
- </member>
- <member name="F:SharpFont.LoadTarget.Light">
- <summary><para>
- A lighter hinting algorithm for non-monochrome modes. Many generated glyphs are more fuzzy but better
- resemble its original shape. A bit like rendering on Mac OS X.
- </para><para>
- As a special exception, this target implies <see cref="F:SharpFont.LoadFlags.ForceAutohint"/>.
- </para></summary>
- </member>
- <member name="F:SharpFont.LoadTarget.Mono">
- <summary>
- Strong hinting algorithm that should only be used for monochrome output. The result is probably unpleasant
- if the glyph is rendered in non-monochrome modes.
- </summary>
- </member>
- <member name="F:SharpFont.LoadTarget.Lcd">
- <summary>
- A variant of <see cref="F:SharpFont.LoadTarget.Normal"/> optimized for horizontally decimated LCD displays.
- </summary>
- </member>
- <member name="F:SharpFont.LoadTarget.VerticalLcd">
- <summary>
- A variant of <see cref="F:SharpFont.LoadTarget.Normal"/> optimized for vertically decimated LCD displays.
- </summary>
- </member>
- <member name="T:SharpFont.FTMatrix">
- <summary>
- A simple structure used to store a 2x2 matrix. Coefficients are in 16.16 fixed float format. The computation
- performed is:
- <code>
- x' = x*xx + y*xy
- y' = x*yx + y*yy
- </code>
- </summary>
- </member>
- <member name="M:SharpFont.FTMatrix.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FTMatrix"/> struct.
- </summary>
- <param name="xx">Matrix coefficient XX.</param>
- <param name="xy">Matrix coefficient XY.</param>
- <param name="yx">Matrix coefficient YX.</param>
- <param name="yy">Matrix coefficient YY.</param>
- </member>
- <member name="M:SharpFont.FTMatrix.#ctor(SharpFont.FTVector,SharpFont.FTVector)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FTMatrix"/> struct.
- </summary>
- <param name="row0">Matrix coefficients XX, XY.</param>
- <param name="row1">Matrix coefficients YX, YY.</param>
- </member>
- <member name="M:SharpFont.FTMatrix.#ctor(System.IntPtr)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FTMatrix"/> struct.
- </summary>
- <param name="reference">A pointer to a matrix.</param>
- </member>
- <member name="P:SharpFont.FTMatrix.XX">
- <summary>
- Gets or sets the matrix coefficient.
- </summary>
- </member>
- <member name="P:SharpFont.FTMatrix.XY">
- <summary>
- Gets or sets the matrix coefficient.
- </summary>
- </member>
- <member name="P:SharpFont.FTMatrix.YX">
- <summary>
- Gets or sets the matrix coefficient.
- </summary>
- </member>
- <member name="P:SharpFont.FTMatrix.YY">
- <summary>
- Gets or sets the matrix coefficient.
- </summary>
- </member>
- <member name="M:SharpFont.FTMatrix.Multiply(SharpFont.FTMatrix,SharpFont.FTMatrix)">
- <summary>
- Perform the matrix operation ‘b = a*b’.
- </summary>
- <remarks>
- The result is undefined if either ‘a’ or ‘b’ is zero.
- </remarks>
- <param name="a">A pointer to matrix ‘a’.</param>
- <param name="b">A pointer to matrix ‘b’.</param>
- </member>
- <member name="M:SharpFont.FTMatrix.Multiply(SharpFont.FTMatrix)">
- <summary>
- Perform the matrix operation ‘b = a*b’.
- </summary>
- <remarks>
- The result is undefined if either ‘a’ or ‘b’ is zero.
- </remarks>
- <param name="b">A pointer to matrix ‘b’.</param>
- </member>
- <member name="M:SharpFont.FTMatrix.Invert">
- <summary>
- Invert a 2x2 matrix. Return an error if it can't be inverted.
- </summary>
- </member>
- <member name="T:SharpFont.Module">
- <summary>
- A handle to a given FreeType module object. Each module can be a font driver, a renderer, or anything else that
- provides services to the formers.
- </summary>
- </member>
- <member name="T:SharpFont.OpenArgs">
- <summary>
- A structure used to indicate how to open a new font file or stream. A pointer to such a structure can be used
- as a parameter for the functions <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/> and <see cref="M:SharpFont.Face.AttachStream(SharpFont.OpenArgs)"/>.
- </summary>
- <remarks>
- The stream type is determined by the contents of <see cref="P:SharpFont.OpenArgs.Flags"/> which are tested in the following order by
- <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>:
- <list type="bullet">
- <item><description>
- If the <see cref="F:SharpFont.OpenFlags.Memory"/> bit is set, assume that this is a memory file of <see cref="P:SharpFont.OpenArgs.MemorySize"/>
- bytes, located at <see cref="P:SharpFont.OpenArgs.MemoryBase"/>. The data are are not copied, and the client is responsible for
- releasing and destroying them after the corresponding call to <see cref="M:SharpFont.Face.Dispose"/>.
- </description></item>
- <item><description>
- Otherwise, if the <see cref="F:SharpFont.OpenFlags.Stream"/> bit is set, assume that a custom input stream
- <see cref="P:SharpFont.OpenArgs.Stream"/> is used.
- </description></item>
- <item><description>
- Otherwise, if the <see cref="F:SharpFont.OpenFlags.PathName"/> bit is set, assume that this is a normal file and use
- <see cref="P:SharpFont.OpenArgs.PathName"/> to open it.
- </description></item>
- <item><description>
- If the <see cref="F:SharpFont.OpenFlags.Driver"/> bit is set, <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/> only tries to open the file
- with the driver whose handler is in <see cref="P:SharpFont.OpenArgs.Driver"/>.
- </description></item>
- <item><description>
- If the <see cref="F:SharpFont.OpenFlags.Params"/> bit is set, the parameters given by <see cref="P:SharpFont.OpenArgs.ParamsCount"/> and
- <see cref="P:SharpFont.OpenArgs.Params"/> is used. They are ignored otherwise.
- </description></item>
- </list>
- Ideally, both the <see cref="P:SharpFont.OpenArgs.PathName"/> and <see cref="P:SharpFont.OpenArgs.Params"/> fields should be tagged as ‘const’; this is
- missing for API backwards compatibility. In other words, applications should treat them as read-only.
- </remarks>
- </member>
- <member name="P:SharpFont.OpenArgs.Flags">
- <summary>
- Gets a set of bit flags indicating how to use the structure.
- </summary>
- </member>
- <member name="P:SharpFont.OpenArgs.MemoryBase">
- <summary>
- Gets the first byte of the file in memory.
- </summary>
- </member>
- <member name="P:SharpFont.OpenArgs.MemorySize">
- <summary>
- Gets the size in bytes of the file in memory.
- </summary>
- </member>
- <member name="P:SharpFont.OpenArgs.PathName">
- <summary>
- Gets a pointer to an 8-bit file pathname.
- </summary>
- </member>
- <member name="P:SharpFont.OpenArgs.Stream">
- <summary>
- Gets a handle to a source stream object.
- </summary>
- </member>
- <member name="P:SharpFont.OpenArgs.Driver">
- <summary>
- Gets the font driver to use to open the face. If set to 0, FreeType tries to load the face with each one of
- the drivers in its list.
- </summary>
- <remarks>This field is exclusively used by <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>.</remarks>
- </member>
- <member name="P:SharpFont.OpenArgs.ParamsCount">
- <summary>
- Gets the number of extra parameters.
- </summary>
- </member>
- <member name="P:SharpFont.OpenArgs.Params">
- <summary>
- Gets the extra parameters passed to the font driver when opening a new face.
- </summary>
- </member>
- <member name="T:SharpFont.OpenFlags">
- <summary>
- A list of bit-field constants used within the ‘flags’ field of the <see cref="T:SharpFont.OpenArgs"/> structure.
- </summary>
- <remarks>
- The <see cref="F:SharpFont.OpenFlags.Memory"/>, <see cref="F:SharpFont.OpenFlags.Stream"/>, and <see cref="F:SharpFont.OpenFlags.PathName"/> flags
- are mutually exclusive.
- </remarks>
- </member>
- <member name="F:SharpFont.OpenFlags.Memory">
- <summary>
- This is a memory-based stream.
- </summary>
- </member>
- <member name="F:SharpFont.OpenFlags.Stream">
- <summary>
- Copy the stream from the ‘stream’ field.
- </summary>
- </member>
- <member name="F:SharpFont.OpenFlags.PathName">
- <summary>
- Create a new input stream from a C path name.
- </summary>
- </member>
- <member name="F:SharpFont.OpenFlags.Driver">
- <summary>
- Use the ‘driver’ field.
- </summary>
- </member>
- <member name="F:SharpFont.OpenFlags.Params">
- <summary>
- Use the ‘num_params’ and ‘params’ fields.
- </summary>
- </member>
- <member name="T:SharpFont.Outline">
- <summary>
- This structure is used to describe an outline to the scan-line converter.
- </summary>
- <remarks>
- The B/W rasterizer only checks bit 2 in the ‘tags’ array for the first point of each contour. The drop-out mode
- as given with <see cref="F:SharpFont.OutlineFlags.IgnoreDropouts"/>, <see cref="F:SharpFont.OutlineFlags.SmartDropouts"/>, and
- <see cref="F:SharpFont.OutlineFlags.IncludeStubs"/> in ‘flags’ is then overridden.
- </remarks>
- </member>
- <member name="M:SharpFont.Outline.#ctor(SharpFont.Library,System.UInt32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Outline"/> class.
- </summary>
- <remarks>
- The reason why this function takes a ‘library’ parameter is simply to use the library's memory allocator.
- </remarks>
- <param name="library">
- A handle to the library object from where the outline is allocated. Note however that the new outline will
- not necessarily be freed, when destroying the library, by <see cref="M:SharpFont.Library.Finalize"/>.
- </param>
- <param name="pointsCount">The maximum number of points within the outline.</param>
- <param name="contoursCount">The maximum number of contours within the outline.</param>
- </member>
- <member name="M:SharpFont.Outline.#ctor(SharpFont.Memory,System.UInt32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.Outline"/> class.
- </summary>
- <param name="memory">A handle to the memory object from where the outline is allocated.</param>
- <param name="pointsCount">The maximum number of points within the outline.</param>
- <param name="contoursCount">The maximum number of contours within the outline.</param>
- </member>
- <member name="M:SharpFont.Outline.Finalize">
- <summary>
- Finalizes an instance of the <see cref="T:SharpFont.Outline"/> class.
- </summary>
- </member>
- <member name="P:SharpFont.Outline.IsDisposed">
- <summary>
- Gets a value indicating whether the <see cref="T:SharpFont.Outline"/> has been disposed.
- </summary>
- </member>
- <member name="P:SharpFont.Outline.ContoursCount">
- <summary>
- Gets the number of contours in the outline.
- </summary>
- </member>
- <member name="P:SharpFont.Outline.PointsCount">
- <summary>
- Gets the number of points in the outline.
- </summary>
- </member>
- <member name="P:SharpFont.Outline.Points">
- <summary>
- Gets a pointer to an array of ‘PointsCount’ <see cref="T:SharpFont.FTVector"/> elements, giving the outline's point
- coordinates.
- </summary>
- </member>
- <member name="P:SharpFont.Outline.Tags">
- <summary><para>
- Gets a pointer to an array of ‘PointsCount’ chars, giving each outline point's type.
- </para><para>
- If bit 0 is unset, the point is ‘off’ the curve, i.e., a Bézier control point, while it is ‘on’ if set.
- </para><para>
- Bit 1 is meaningful for ‘off’ points only. If set, it indicates a third-order Bézier arc control point; and
- a second-order control point if unset.
- </para><para>
- If bit 2 is set, bits 5-7 contain the drop-out mode (as defined in the OpenType specification; the value is
- the same as the argument to the SCANMODE instruction).
- </para><para>
- Bits 3 and 4 are reserved for internal purposes.
- </para></summary>
- </member>
- <member name="P:SharpFont.Outline.Contours">
- <summary>
- Gets an array of ‘ContoursCount’ shorts, giving the end point of each contour within the outline. For
- example, the first contour is defined by the points ‘0’ to ‘Contours[0]’, the second one is defined by the
- points ‘Contours[0]+1’ to ‘Contours[1]’, etc.
- </summary>
- </member>
- <member name="P:SharpFont.Outline.Flags">
- <summary>
- Gets a set of bit flags used to characterize the outline and give hints to the scan-converter and hinter on
- how to convert/grid-fit it.
- </summary>
- <see cref="T:SharpFont.OutlineFlags"/>
- </member>
- <member name="M:SharpFont.Outline.Copy(SharpFont.Outline)">
- <summary>
- Copy an outline into another one. Both objects must have the same sizes (number of points & number of
- contours) when this function is called.
- </summary>
- <param name="target">A handle to the target outline.</param>
- </member>
- <member name="M:SharpFont.Outline.Translate(System.Int32,System.Int32)">
- <summary>
- Apply a simple translation to the points of an outline.
- </summary>
- <param name="offsetX">The horizontal offset.</param>
- <param name="offsetY">The vertical offset.</param>
- </member>
- <member name="M:SharpFont.Outline.Transform(SharpFont.FTMatrix)">
- <summary>
- Apply a simple 2x2 matrix to all of an outline's points. Useful for applying rotations, slanting, flipping,
- etc.
- </summary>
- <remarks>
- You can use <see cref="M:SharpFont.Outline.Translate(System.Int32,System.Int32)"/> if you need to translate the outline's points.
- </remarks>
- <param name="matrix">A pointer to the transformation matrix.</param>
- </member>
- <member name="M:SharpFont.Outline.Embolden(System.Int32)">
- <summary><para>
- Embolden an outline. The new outline will be at most 4 times ‘strength’ pixels wider and higher. You may
- think of the left and bottom borders as unchanged.
- </para><para>
- Negative ‘strength’ values to reduce the outline thickness are possible also.
- </para></summary>
- <remarks><para>
- The used algorithm to increase or decrease the thickness of the glyph doesn't change the number of points;
- this means that certain situations like acute angles or intersections are sometimes handled incorrectly.
- </para><para>
- If you need ‘better’ metrics values you should call <see cref="M:SharpFont.Outline.GetCBox"/> or <see cref="M:SharpFont.Outline.GetBBox"/>.
- </para></remarks>
- <example>
- FT_Load_Glyph( face, index, FT_LOAD_DEFAULT );
- if ( face->slot->format == FT_GLYPH_FORMAT_OUTLINE )
- FT_Outline_Embolden( &face->slot->outline, strength );
- </example>
- <param name="strength">How strong the glyph is emboldened. Expressed in 26.6 pixel format.</param>
- </member>
- <member name="M:SharpFont.Outline.EmboldenXY(System.Int32,System.Int32)">
- <summary>
- Embolden an outline. The new outline will be ‘xstrength’ pixels wider and ‘ystrength’ pixels higher.
- Otherwise, it is similar to <see cref="M:SharpFont.Outline.Embolden(System.Int32)"/>, which uses the same strength in both directions.
- </summary>
- <param name="strengthX">
- How strong the glyph is emboldened in the X direction. Expressed in 26.6 pixel format.
- </param>
- <param name="strengthY">
- How strong the glyph is emboldened in the Y direction. Expressed in 26.6 pixel format.
- </param>
- </member>
- <member name="M:SharpFont.Outline.Reverse">
- <summary>
- Reverse the drawing direction of an outline. This is used to ensure consistent fill conventions for
- mirrored glyphs.
- </summary>
- <remarks><para>
- This function toggles the bit flag <see cref="F:SharpFont.OutlineFlags.ReverseFill"/> in the outline's ‘flags’ field.
- </para><para>
- It shouldn't be used by a normal client application, unless it knows what it is doing.
- </para></remarks>
- </member>
- <member name="M:SharpFont.Outline.Check">
- <summary>
- Check the contents of an outline descriptor.
- </summary>
- </member>
- <member name="M:SharpFont.Outline.GetBBox">
- <summary>
- Compute the exact bounding box of an outline. This is slower than computing the control box. However, it
- uses an advanced algorithm which returns very quickly when the two boxes coincide. Otherwise, the outline
- Bézier arcs are traversed to extract their extrema.
- </summary>
- <remarks>
- If the font is tricky and the glyph has been loaded with <see cref="F:SharpFont.LoadFlags.NoScale"/>, the resulting
- BBox is meaningless. To get reasonable values for the BBox it is necessary to load the glyph at a large
- ppem value (so that the hinting instructions can properly shift and scale the subglyphs), then extracting
- the BBox which can be eventually converted back to font units.
- </remarks>
- <returns>The outline's exact bounding box.</returns>
- </member>
- <member name="M:SharpFont.Outline.Decompose(SharpFont.OutlineFuncs,System.IntPtr)">
- <summary>
- Walk over an outline's structure to decompose it into individual segments and Bézier arcs. This function
- also emits ‘move to’ operations to indicate the start of new contours in the outline.
- </summary>
- <param name="funcInterface">
- A table of ‘emitters’, i.e., function pointers called during decomposition to indicate path operations.
- </param>
- <param name="user">
- A typeless pointer which is passed to each emitter during the decomposition. It can be used to store the
- state during the decomposition.
- </param>
- </member>
- <member name="M:SharpFont.Outline.GetCBox">
- <summary><para>
- Return an outline's ‘control box’. The control box encloses all the outline's points, including Bézier
- control points. Though it coincides with the exact bounding box for most glyphs, it can be slightly larger
- in some situations (like when rotating an outline which contains Bézier outside arcs).
- </para><para>
- Computing the control box is very fast, while getting the bounding box can take much more time as it needs
- to walk over all segments and arcs in the outline. To get the latter, you can use the ‘ftbbox’ component
- which is dedicated to this single task.
- </para></summary>
- <remarks>See <see cref="M:SharpFont.Glyph.GetCBox(SharpFont.GlyphBBoxMode)"/> for a discussion of tricky fonts.</remarks>
- <returns>The outline's control box.</returns>
- </member>
- <member name="M:SharpFont.Outline.GetBitmap(SharpFont.FTBitmap)">
- <summary>
- Render an outline within a bitmap. The outline's image is simply OR-ed to the target bitmap.
- </summary>
- <remarks><para>
- This function does NOT CREATE the bitmap, it only renders an outline image within the one you pass to it!
- Consequently, the various fields in ‘abitmap’ should be set accordingly.
- </para><para>
- It will use the raster corresponding to the default glyph format.
- </para><para>
- The value of the ‘num_grays’ field in ‘abitmap’ is ignored. If you select the gray-level rasterizer, and
- you want less than 256 gray levels, you have to use <see cref="M:SharpFont.Outline.Render(SharpFont.RasterParams)"/> directly.
- </para></remarks>
- <param name="bitmap">A pointer to the target bitmap descriptor.</param>
- </member>
- <member name="M:SharpFont.Outline.GetBitmap(SharpFont.Library,SharpFont.FTBitmap)">
- <summary>
- Render an outline within a bitmap. The outline's image is simply OR-ed to the target bitmap.
- </summary>
- <remarks><para>
- This function does NOT CREATE the bitmap, it only renders an outline image within the one you pass to it!
- Consequently, the various fields in ‘abitmap’ should be set accordingly.
- </para><para>
- It will use the raster corresponding to the default glyph format.
- </para><para>
- The value of the ‘num_grays’ field in ‘abitmap’ is ignored. If you select the gray-level rasterizer, and
- you want less than 256 gray levels, you have to use <see cref="M:SharpFont.Outline.Render(SharpFont.Library,SharpFont.RasterParams)"/> directly.
- </para></remarks>
- <param name="library">A handle to a FreeType library object.</param>
- <param name="bitmap">A pointer to the target bitmap descriptor.</param>
- </member>
- <member name="M:SharpFont.Outline.Render(SharpFont.RasterParams)">
- <summary>
- Render an outline within a bitmap using the current scan-convert. This function uses an
- <see cref="T:SharpFont.RasterParams"/> structure as an argument, allowing advanced features like direct composition,
- translucency, etc.
- </summary>
- <remarks><para>
- You should know what you are doing and how <see cref="T:SharpFont.RasterParams"/> works to use this function.
- </para><para>
- The field ‘params.source’ will be set to ‘outline’ before the scan converter is called, which means that
- the value you give to it is actually ignored.
- </para><para>
- The gray-level rasterizer always uses 256 gray levels. If you want less gray levels, you have to provide
- your own span callback. See the <see cref="F:SharpFont.RasterFlags.Direct"/> value of the ‘flags’ field in the
- <see cref="T:SharpFont.RasterParams"/> structure for more details.
- </para></remarks>
- <param name="parameters">
- A pointer to an <see cref="T:SharpFont.RasterParams"/> structure used to describe the rendering operation.
- </param>
- </member>
- <member name="M:SharpFont.Outline.Render(SharpFont.Library,SharpFont.RasterParams)">
- <summary>
- Render an outline within a bitmap using the current scan-convert. This function uses an
- <see cref="T:SharpFont.RasterParams"/> structure as an argument, allowing advanced features like direct composition,
- translucency, etc.
- </summary>
- <remarks><para>
- You should know what you are doing and how <see cref="T:SharpFont.RasterParams"/> works to use this function.
- </para><para>
- The field ‘params.source’ will be set to ‘outline’ before the scan converter is called, which means that
- the value you give to it is actually ignored.
- </para><para>
- The gray-level rasterizer always uses 256 gray levels. If you want less gray levels, you have to provide
- your own span callback. See the <see cref="F:SharpFont.RasterFlags.Direct"/> value of the ‘flags’ field in the
- <see cref="T:SharpFont.RasterParams"/> structure for more details.
- </para></remarks>
- <param name="library">A handle to a FreeType library object.</param>
- <param name="parameters">
- A pointer to an <see cref="T:SharpFont.RasterParams"/> structure used to describe the rendering operation.
- </param>
- </member>
- <member name="M:SharpFont.Outline.GetOrientation">
- <summary><para>
- This function analyzes a glyph outline and tries to compute its fill orientation (see
- <see cref="T:SharpFont.Orientation"/>). This is done by computing the direction of each global horizontal and/or
- vertical extrema within the outline.
- </para><para>
- Note that this will return <see cref="F:SharpFont.Orientation.TrueType"/> for empty outlines.
- </para></summary>
- <returns>The orientation.</returns>
- </member>
- <member name="M:SharpFont.Outline.GetInsideBorder">
- <summary>
- Retrieve the <see cref="T:SharpFont.StrokerBorder"/> value corresponding to the ‘inside’ borders of a given outline.
- </summary>
- <returns>The border index. <see cref="F:SharpFont.StrokerBorder.Right"/> for empty or invalid outlines.</returns>
- </member>
- <member name="M:SharpFont.Outline.GetOutsideBorder">
- <summary>
- Retrieve the <see cref="T:SharpFont.StrokerBorder"/> value corresponding to the ‘outside’ borders of a given outline.
- </summary>
- <returns>The border index. <see cref="F:SharpFont.StrokerBorder.Left"/> for empty or invalid outlines.</returns>
- </member>
- <member name="M:SharpFont.Outline.Dispose">
- <summary>
- Disposes an instance of the <see cref="T:SharpFont.Outline"/> class.
- </summary>
- </member>
- <member name="T:SharpFont.OutlineFlags">
- <summary>
- A list of bit-field constants use for the flags in an outline's ‘flags’ field.
- </summary>
- <remarks><para>
- The flags <see cref="F:SharpFont.OutlineFlags.IgnoreDropouts"/>, <see cref="F:SharpFont.OutlineFlags.SmartDropouts"/>, and
- <see cref="F:SharpFont.OutlineFlags.IncludeStubs"/> are ignored by the smooth rasterizer.
- </para><para>
- There exists a second mechanism to pass the drop-out mode to the B/W rasterizer; see the ‘tags’ field in
- <see cref="T:SharpFont.Outline"/>.
- </para><para>
- Please refer to the description of the ‘SCANTYPE’ instruction in the OpenType specification (in file
- ‘ttinst1.doc’) how simple drop-outs, smart drop-outs, and stubs are defined.
- </para></remarks>
- </member>
- <member name="F:SharpFont.OutlineFlags.None">
- <summary>
- Value 0 is reserved.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.Owner">
- <summary>
- If set, this flag indicates that the outline's field arrays (i.e., ‘points’, ‘flags’, and ‘contours’) are
- ‘owned’ by the outline object, and should thus be freed when it is destroyed.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.EvenOddFill">
- <summary>
- By default, outlines are filled using the non-zero winding rule. If set to 1, the outline will be filled
- using the even-odd fill rule (only works with the smooth rasterizer).
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.ReverseFill">
- <summary>
- By default, outside contours of an outline are oriented in clock-wise direction, as defined in the TrueType
- specification. This flag is set if the outline uses the opposite direction (typically for Type 1 fonts).
- This flag is ignored by the scan converter.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.IgnoreDropouts">
- <summary>
- By default, the scan converter will try to detect drop-outs in an outline and correct the glyph bitmap to
- ensure consistent shape continuity. If set, this flag hints the scan-line converter to ignore such cases.
- See below for more information.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.SmartDropouts">
- <summary>
- Select smart dropout control. If unset, use simple dropout control. Ignored if
- <see cref="F:SharpFont.OutlineFlags.IgnoreDropouts"/> is set. See below for more information.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.IncludeStubs">
- <summary>
- If set, turn pixels on for ‘stubs’, otherwise exclude them. Ignored if
- <see cref="F:SharpFont.OutlineFlags.IgnoreDropouts"/> is set. See below for more information.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.HighPrecision">
- <summary>
- This flag indicates that the scan-line converter should try to convert this outline to bitmaps with the
- highest possible quality. It is typically set for small character sizes. Note that this is only a hint that
- might be completely ignored by a given scan-converter.
- </summary>
- </member>
- <member name="F:SharpFont.OutlineFlags.SinglePass">
- <summary>
- This flag is set to force a given scan-converter to only use a single pass over the outline to render a
- bitmap glyph image. Normally, it is set for very large character sizes. It is only a hint that might be
- completely ignored by a given scan-converter.
- </summary>
- </member>
- <member name="T:SharpFont.MoveToFunc">
- <summary><para>
- A function pointer type used to describe the signature of a ‘move to’ function during outline
- walking/decomposition.
- </para><para>
- A ‘move to’ is emitted to start a new contour in an outline.
- </para></summary>
- <param name="to">A pointer to the target point of the ‘move to’.</param>
- <param name="user">A typeless pointer which is passed from the caller of the decomposition function.</param>
- <returns>Error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.LineToFunc">
- <summary><para>
- A function pointer type used to describe the signature of a ‘line to’ function during outline
- walking/decomposition.
- </para><para>
- A ‘line to’ is emitted to indicate a segment in the outline.
- </para></summary>
- <param name="to">A pointer to the target point of the ‘line to’.</param>
- <param name="user">A typeless pointer which is passed from the caller of the decomposition function.</param>
- <returns>Error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.ConicToFunc">
- <summary><para>
- A function pointer type used to describe the signature of a ‘conic to’ function during outline walking or
- decomposition.
- </para><para>
- A ‘conic to’ is emitted to indicate a second-order Bézier arc in the outline.
- </para></summary>
- <param name="control">
- An intermediate control point between the last position and the new target in ‘to’.
- </param>
- <param name="to">A pointer to the target end point of the conic arc.</param>
- <param name="user">A typeless pointer which is passed from the caller of the decomposition function.</param>
- <returns>Error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.CubicToFunc">
- <summary><para>
- A function pointer type used to describe the signature of a ‘cubic to’ function during outline walking or
- decomposition.
- </para><para>
- A ‘cubic to’ is emitted to indicate a third-order Bézier arc.
- </para></summary>
- <param name="control1">A pointer to the first Bézier control point.</param>
- <param name="control2">A pointer to the second Bézier control point.</param>
- <param name="to">A pointer to the target end point.</param>
- <param name="user">A typeless pointer which is passed from the caller of the decomposition function.</param>
- <returns>Error code. 0 means success.</returns>
- </member>
- <member name="T:SharpFont.OutlineFuncs">
- <summary>
- A structure to hold various function pointers used during outline decomposition in order to emit segments,
- conic, and cubic Béziers.
- </summary>
- <remarks>
- The point coordinates sent to the emitters are the transformed version of the original coordinates (this is
- important for high accuracy during scan-conversion). The transformation is simple:
- <code>
- x' = (x << shift) - delta
- y' = (x << shift) - delta
- </code>
- Set the values of ‘shift’ and ‘delta’ to 0 to get the original point coordinates.
- </remarks>
- </member>
- <member name="M:SharpFont.OutlineFuncs.#ctor">
- <summary>
- Initializes a new instance of the OutlineFuncs class.
- </summary>
- </member>
- <member name="M:SharpFont.OutlineFuncs.#ctor(SharpFont.MoveToFunc,SharpFont.LineToFunc,SharpFont.ConicToFunc,SharpFont.CubicToFunc,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the OutlineFuncs class.
- </summary>
- <param name="moveTo">The move to delegate.</param>
- <param name="lineTo">The line to delegate.</param>
- <param name="conicTo">The conic to delegate.</param>
- <param name="cubicTo">The cubic to delegate.</param>
- <param name="shift">A value to shift by.</param>
- <param name="delta">A delta to transform by.</param>
- </member>
- <member name="P:SharpFont.OutlineFuncs.MoveFunction">
- <summary>
- Gets or sets the ‘move to’ emitter.
- </summary>
- </member>
- <member name="P:SharpFont.OutlineFuncs.LineFuction">
- <summary>
- Gets or sets the segment emitter.
- </summary>
- </member>
- <member name="P:SharpFont.OutlineFuncs.ConicFunction">
- <summary>
- Gets or sets the second-order Bézier arc emitter.
- </summary>
- </member>
- <member name="P:SharpFont.OutlineFuncs.CubicFunction">
- <summary>
- Gets or sets the third-order Bézier arc emitter.
- </summary>
- </member>
- <member name="P:SharpFont.OutlineFuncs.Shift">
- <summary>
- Gets or sets the shift that is applied to coordinates before they are sent to the emitter.
- </summary>
- </member>
- <member name="P:SharpFont.OutlineFuncs.Delta">
- <summary>
- Gets the delta that is applied to coordinates before they are sent to the emitter, but after the
- shift.
- </summary>
- </member>
- <member name="T:SharpFont.Parameter">
- <summary>
- A simple structure used to pass more or less generic parameters to <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>.
- </summary>
- <remarks>
- The ID and function of parameters are driver-specific. See the various <see cref="T:SharpFont.ParamTag"/> flags for more
- information.
- </remarks>
- </member>
- <member name="P:SharpFont.Parameter.Tag">
- <summary>
- Gets a four-byte identification tag.
- </summary>
- </member>
- <member name="P:SharpFont.Parameter.Data">
- <summary>
- Gets a pointer to the parameter data.
- </summary>
- </member>
- <member name="T:SharpFont.ParamTag">
- <summary>
- Constants used as the tag of <see cref="T:SharpFont.Parameter"/> structures.
- </summary>
- </member>
- <member name="F:SharpFont.ParamTag.IgnorePreferredFamily">
- <summary>
- A constant used as the tag of <see cref="T:SharpFont.Parameter"/> structures to make <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>
- ignore preferred family subfamily names in ‘name’ table since OpenType version 1.4. For backwards
- compatibility with legacy systems which has 4-face-per-family restriction.
- </summary>
- </member>
- <member name="F:SharpFont.ParamTag.IgnorePreferredSubfamily">
- <summary>
- A constant used as the tag of <see cref="T:SharpFont.Parameter"/> structures to make <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>
- ignore preferred subfamily names in ‘name’ table since OpenType version 1.4. For backwards compatibility
- with legacy systems which has 4-face-per-family restriction.
- </summary>
- </member>
- <member name="F:SharpFont.ParamTag.Incremental">
- <summary>
- A constant used as the tag of <see cref="T:SharpFont.Parameter"/> structures to indicate an incremental loading object
- to be used by FreeType.
- </summary>
- </member>
- <member name="F:SharpFont.ParamTag.UnpatentedHinting">
- <summary>
- A constant used as the tag of an <see cref="T:SharpFont.Parameter"/> structure to indicate that unpatented methods only
- should be used by the TrueType bytecode interpreter for a typeface opened by
- <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>.
- </summary>
- </member>
- <member name="T:SharpFont.PixelMode">
- <summary>
- An enumeration type used to describe the format of pixels in a given bitmap. Note that additional formats may
- be added in the future.
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.None">
- <summary>
- Value 0 is reserved.
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.Mono">
- <summary>
- A monochrome bitmap, using 1 bit per pixel. Note that pixels are stored in most-significant order (MSB),
- which means that the left-most pixel in a byte has value 128.
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.Gray">
- <summary>
- An 8-bit bitmap, generally used to represent anti-aliased glyph images. Each pixel is stored in one byte.
- Note that the number of ‘gray’ levels is stored in the ‘num_grays’ field of the <see cref="T:SharpFont.FTBitmap"/>
- structure (it generally is 256).
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.Gray2">
- <summary>
- A 2-bit per pixel bitmap, used to represent embedded anti-aliased bitmaps in font files according to the
- OpenType specification. We haven't found a single font using this format, however.
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.Gray4">
- <summary>
- A 4-bit per pixel bitmap, representing embedded anti-aliased bitmaps in font files according to the
- OpenType specification. We haven't found a single font using this format, however.
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.Lcd">
- <summary>
- An 8-bit bitmap, representing RGB or BGR decimated glyph images used for display on LCD displays; the
- bitmap is three times wider than the original glyph image. See also <see cref="F:SharpFont.RenderMode.Lcd"/>.
- </summary>
- </member>
- <member name="F:SharpFont.PixelMode.VerticalLcd">
- <summary>
- An 8-bit bitmap, representing RGB or BGR decimated glyph images used for display on rotated LCD displays;
- the bitmap is three times taller than the original glyph image. See also
- <see cref="F:SharpFont.RenderMode.VerticalLcd"/>.
- </summary>
- </member>
- <member name="T:SharpFont.RenderMode">
- <summary><para>
- An enumeration type that lists the render modes supported by FreeType 2. Each mode corresponds to a specific
- type of scanline conversion performed on the outline.
- </para><para>
- For bitmap fonts and embedded bitmaps the <see cref="P:SharpFont.FTBitmap.PixelMode"/> field in the <see cref="T:SharpFont.GlyphSlot"/>
- structure gives the format of the returned bitmap.
- </para><para>
- All modes except <see cref="F:SharpFont.RenderMode.Mono"/> use 256 levels of opacity.
- </para></summary>
- <remarks><para>
- The LCD-optimized glyph bitmaps produced by <see cref="M:SharpFont.GlyphSlot.RenderGlyph(SharpFont.RenderMode)"/> can be filtered to reduce
- color-fringes by using <see cref="M:SharpFont.Library.SetLcdFilter(SharpFont.LcdFilter)"/> (not active in the default builds). It is up to the
- caller to either call <see cref="M:SharpFont.Library.SetLcdFilter(SharpFont.LcdFilter)"/> (if available) or do the filtering itself.
- </para><para>
- The selected render mode only affects vector glyphs of a font. Embedded bitmaps often have a different pixel
- mode like <see cref="F:SharpFont.PixelMode.Mono"/>. You can use <see cref="M:SharpFont.FTBitmap.Convert(SharpFont.Library,System.Int32)"/> to transform them into 8-bit
- pixmaps.
- </para></remarks>
- </member>
- <member name="F:SharpFont.RenderMode.Normal">
- <summary>
- This is the default render mode; it corresponds to 8-bit anti-aliased bitmaps.
- </summary>
- </member>
- <member name="F:SharpFont.RenderMode.Light">
- <summary>
- This is equivalent to <see cref="F:SharpFont.RenderMode.Normal"/>. It is only defined as a separate value because
- render modes are also used indirectly to define hinting algorithm selectors.
- </summary>
- <see cref="T:SharpFont.LoadTarget"/>
- </member>
- <member name="F:SharpFont.RenderMode.Mono">
- <summary>
- This mode corresponds to 1-bit bitmaps (with 2 levels of opacity).
- </summary>
- </member>
- <member name="F:SharpFont.RenderMode.Lcd">
- <summary>
- This mode corresponds to horizontal RGB and BGR sub-pixel displays like LCD screens. It produces 8-bit
- bitmaps that are 3 times the width of the original glyph outline in pixels, and which use the
- <see cref="F:SharpFont.PixelMode.Lcd"/> mode.
- </summary>
- </member>
- <member name="F:SharpFont.RenderMode.VerticalLcd">
- <summary>
- This mode corresponds to vertical RGB and BGR sub-pixel displays (like PDA screens, rotated LCD displays,
- etc.). It produces 8-bit bitmaps that are 3 times the height of the original glyph outline in pixels and
- use the <see cref="F:SharpFont.PixelMode.VerticalLcd"/> mode.
- </summary>
- </member>
- <member name="T:SharpFont.FTSize">
- <summary>
- FreeType root size class structure. A size object models a face object at a given size.
- </summary>
- </member>
- <member name="M:SharpFont.FTSize.#ctor(SharpFont.Face)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FTSize"/> class.
- </summary>
- <param name="parent">The parent face.</param>
- </member>
- <member name="M:SharpFont.FTSize.Finalize">
- <summary>
- Finalizes an instance of the FTSize class.
- </summary>
- </member>
- <member name="P:SharpFont.FTSize.IsDisposed">
- <summary>
- Gets a value indicating whether the object has been disposed.
- </summary>
- </member>
- <member name="P:SharpFont.FTSize.Face">
- <summary>
- Gets a handle to the parent face object.
- </summary>
- </member>
- <member name="P:SharpFont.FTSize.Generic">
- <summary>
- Gets or sets a typeless pointer, which is unused by the FreeType library or any of its drivers. It can be used by
- client applications to link their own data to each size object.
- </summary>
- </member>
- <member name="P:SharpFont.FTSize.Metrics">
- <summary>
- Gets metrics for this size object. This field is read-only.
- </summary>
- </member>
- <member name="M:SharpFont.FTSize.Activate">
- <summary><para>
- Even though it is possible to create several size objects for a given face (see
- <see cref="M:SharpFont.Face.NewSize"/> for details), functions like <see cref="M:SharpFont.Face.LoadGlyph(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> or
- <see cref="M:SharpFont.Face.LoadChar(System.UInt32,SharpFont.LoadFlags,SharpFont.LoadTarget)"/> only use the one which has been activated last to determine the
- ‘current character pixel size’.
- </para><para>
- This function can be used to ‘activate’ a previously created size object.
- </para></summary>
- <remarks>
- If ‘face’ is the size's parent face object, this function changes the value of ‘face->size’ to the input
- size handle.
- </remarks>
- </member>
- <member name="M:SharpFont.FTSize.Dispose">
- <summary>
- Diposes the FTSize.
- </summary>
- </member>
- <member name="T:SharpFont.SizeMetrics">
- <summary>
- The size metrics structure gives the metrics of a size object.
- </summary>
- <remarks><para>
- The scaling values, if relevant, are determined first during a size changing operation. The remaining fields
- are then set by the driver. For scalable formats, they are usually set to scaled values of the corresponding
- fields in <see cref="T:SharpFont.Face"/>.
- </para><para>
- Note that due to glyph hinting, these values might not be exact for certain fonts. Thus they must be treated as
- unreliable with an error margin of at least one pixel!
- </para><para>
- Indeed, the only way to get the exact metrics is to render all glyphs. As this would be a definite performance
- hit, it is up to client applications to perform such computations.
- </para><para>
- The <see cref="T:SharpFont.SizeMetrics"/> structure is valid for bitmap fonts also.
- </para></remarks>
- </member>
- <member name="P:SharpFont.SizeMetrics.NominalWidth">
- <summary>
- Gets the width of the scaled EM square in pixels, hence the term ‘ppem’ (pixels per EM). It is also referred to
- as ‘nominal width’.
- </summary>
- </member>
- <member name="P:SharpFont.SizeMetrics.NominalHeight">
- <summary>
- Gets the height of the scaled EM square in pixels, hence the term ‘ppem’ (pixels per EM). It is also referred to
- as ‘nominal height’.
- </summary>
- </member>
- <member name="P:SharpFont.SizeMetrics.ScaleX">
- <summary>
- Gets a 16.16 fractional scaling value used to convert horizontal metrics from font units to 26.6 fractional
- pixels. Only relevant for scalable font formats.
- </summary>
- </member>
- <member name="P:SharpFont.SizeMetrics.ScaleY">
- <summary>
- Gets a 16.16 fractional scaling value used to convert vertical metrics from font units to 26.6 fractional
- pixels. Only relevant for scalable font formats.
- </summary>
- </member>
- <member name="P:SharpFont.SizeMetrics.Ascender">
- <summary>
- Gets the ascender in 26.6 fractional pixels.
- </summary>
- <see cref="T:SharpFont.Face"/>
- </member>
- <member name="P:SharpFont.SizeMetrics.Descender">
- <summary>
- Gets the descender in 26.6 fractional pixels.
- </summary>
- <see cref="T:SharpFont.Face"/>
- </member>
- <member name="P:SharpFont.SizeMetrics.Height">
- <summary>
- Gets the height in 26.6 fractional pixels.
- </summary>
- <see cref="T:SharpFont.Face"/>
- </member>
- <member name="P:SharpFont.SizeMetrics.MaxAdvance">
- <summary>
- Gets the maximal advance width in 26.6 fractional pixels.
- </summary>
- <see cref="T:SharpFont.Face"/>
- </member>
- <member name="T:SharpFont.SizeRequest">
- <summary>
- A structure used to model a size request.
- </summary>
- <remarks>
- If <see cref="P:SharpFont.SizeRequest.Width"/> is zero, then the horizontal scaling value is set equal to the vertical scaling value,
- and vice versa.
- </remarks>
- </member>
- <member name="P:SharpFont.SizeRequest.RequestType">
- <summary>
- See <see cref="T:SharpFont.SizeRequestType"/>.
- </summary>
- </member>
- <member name="P:SharpFont.SizeRequest.Width">
- <summary>
- Gets the desired width.
- </summary>
- </member>
- <member name="P:SharpFont.SizeRequest.Height">
- <summary>
- Gets the desired height.
- </summary>
- </member>
- <member name="P:SharpFont.SizeRequest.HorizontalResolution">
- <summary>
- Gets the horizontal resolution. If set to zero, <see cref="P:SharpFont.SizeRequest.Width"/> is treated as a 26.6 fractional pixel
- value.
- </summary>
- </member>
- <member name="P:SharpFont.SizeRequest.VerticalResolution">
- <summary>
- Gets the horizontal resolution. If set to zero, <see cref="P:SharpFont.SizeRequest.Height"/> is treated as a 26.6 fractional pixel
- value.
- </summary>
- </member>
- <member name="T:SharpFont.SizeRequestType">
- <summary>
- An enumeration type that lists the supported size request types.
- </summary>
- <remarks><para>
- The above descriptions only apply to scalable formats. For bitmap formats, the behaviour is up to the driver.
- </para><para>
- See the note section of <see cref="T:SharpFont.SizeMetrics"/> if you wonder how size
- requesting relates to scaling values.
- </para></remarks>
- </member>
- <member name="F:SharpFont.SizeRequestType.Normal">
- <summary>
- The nominal size. The ‘units_per_EM’ field of <see cref="T:SharpFont.Face"/> is used to determine both scaling values.
- </summary>
- </member>
- <member name="F:SharpFont.SizeRequestType.RealDimensions">
- <summary>
- The real dimension. The sum of the the ‘ascender’ and (minus of) the ‘descender’ fields of
- <see cref="T:SharpFont.Face"/> are used to determine both scaling values.
- </summary>
- </member>
- <member name="F:SharpFont.SizeRequestType.BoundingBox">
- <summary>
- The font bounding box. The width and height of the ‘bbox’ field of <see cref="T:SharpFont.Face"/> are used to determine
- the horizontal and vertical scaling value, respectively.
- </summary>
- </member>
- <member name="F:SharpFont.SizeRequestType.Cell">
- <summary>
- The ‘max_advance_width’ field of <see cref="T:SharpFont.Face"/> is used to determine the horizontal scaling value; the
- vertical scaling value is determined the same way as <see cref="F:SharpFont.SizeRequestType.RealDimensions"/> does.
- Finally, both scaling values are set to the smaller one. This type is useful if you want to specify the
- font size for, say, a window of a given dimension and 80x24 cells.
- </summary>
- </member>
- <member name="F:SharpFont.SizeRequestType.Scales">
- <summary>
- Specify the scaling values directly.
- </summary>
- </member>
- <member name="T:SharpFont.Span">
- <summary>
- A structure used to model a single span of gray (or black) pixels when rendering a monochrome or anti-aliased
- bitmap.
- </summary>
- <remarks><para>
- This structure is used by the span drawing callback type named <see cref="T:SharpFont.RasterSpanFunc"/> which takes the y
- coordinate of the span as a a parameter.
- </para><para>
- The coverage value is always between 0 and 255. If you want less gray values, the callback function has to
- reduce them.
- </para></remarks>
- </member>
- <member name="P:SharpFont.Span.X">
- <summary>
- Gets the span's horizontal start position.
- </summary>
- </member>
- <member name="P:SharpFont.Span.Length">
- <summary>
- Gets the span's length in pixels.
- </summary>
- </member>
- <member name="P:SharpFont.Span.Coverage">
- <summary>
- Gets the span color/coverage, ranging from 0 (background) to 255 (foreground). Only used for anti-aliased
- rendering.
- </summary>
- </member>
- <member name="T:SharpFont.StreamIOFunc">
- <summary>
- A function used to seek and read data from a given input stream.
- </summary>
- <remarks>
- This function might be called to perform a seek or skip operation with a ‘count’ of 0. A non-zero return value
- then indicates an error.
- </remarks>
- <param name="stream">A handle to the source stream.</param>
- <param name="offset">The offset of read in stream (always from start).</param>
- <param name="buffer">The address of the read buffer.</param>
- <param name="count">The number of bytes to read from the stream.</param>
- <returns>The number of bytes effectively read by the stream.</returns>
- </member>
- <member name="T:SharpFont.StreamCloseFunc">
- <summary>
- A function used to close a given input stream.
- </summary>
- <param name="stream">A handle to the target stream.</param>
- </member>
- <member name="T:SharpFont.FTStream">
- <summary>
- A handle to an input stream.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Base">
- <summary>
- Gets base. For memory-based streams, this is the address of the first stream byte in memory. This field
- should always be set to NULL for disk-based streams.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Size">
- <summary>
- Gets the stream size in bytes.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Position">
- <summary>
- Gets the current position within the stream.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Descriptor">
- <summary>
- Gets the descriptor. This field is a union that can hold an integer or a pointer. It is used by stream
- implementations to store file descriptors or ‘FILE*’ pointers.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.PathName">
- <summary>
- Gets the path name. This field is completely ignored by FreeType. However, it is often useful during
- debugging to use it to store the stream's filename (where available).
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Read">
- <summary>
- Gets the stream's input function.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Close">
- <summary>
- Gets the stream's close function.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Memory">
- <summary>
- Gets the memory manager to use to preload frames. This is set internally by FreeType and shouldn't be
- touched by stream implementations.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Cursor">
- <summary>
- Gets the cursor. This field is set and used internally by FreeType when parsing frames.
- </summary>
- </member>
- <member name="P:SharpFont.FTStream.Limit">
- <summary>
- Gets the limit. This field is set and used internally by FreeType when parsing frames.
- </summary>
- </member>
- <member name="M:SharpFont.FTStream.OpenGzip(SharpFont.FTStream)">
- <summary>
- Open a new stream to parse gzip-compressed font files. This is mainly used to support the compressed
- ‘*.pcf.gz’ fonts that come with XFree86.
- </summary>
- <remarks><para>
- The source stream must be opened before calling this function.
- </para><para>
- Calling the internal function ‘FT_Stream_Close’ on the new stream will not call ‘FT_Stream_Close’ on the
- source stream. None of the stream objects will be released to the heap.
- </para><para>
- The stream implementation is very basic and resets the decompression process each time seeking backwards is
- needed within the stream.
- </para><para>
- In certain builds of the library, gzip compression recognition is automatically handled when calling
- <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/> or <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>. This means that if no font driver is
- capable of handling the raw compressed file, the library will try to open a gzipped stream from it and
- re-open the face with it.
- </para><para>
- This function may return <see cref="F:SharpFont.Error.UnimplementedFeature"/> if your build of FreeType was not
- compiled with zlib support.
- </para></remarks>
- <param name="source">The source stream.</param>
- </member>
- <member name="M:SharpFont.FTStream.OpenLzw(SharpFont.FTStream)">
- <summary>
- Open a new stream to parse LZW-compressed font files. This is mainly used to support the compressed
- ‘*.pcf.Z’ fonts that come with XFree86.
- </summary>
- <remarks><para>
- The source stream must be opened before calling this function.
- </para><para>
- Calling the internal function ‘FT_Stream_Close’ on the new stream will not call ‘FT_Stream_Close’ on the
- source stream. None of the stream objects will be released to the heap.
- </para><para>
- The stream implementation is very basic and resets the decompression process each time seeking backwards is
- needed within the stream.
- </para><para>
- In certain builds of the library, LZW compression recognition is automatically handled when calling
- <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/> or <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>. This means that if no font driver is
- capable of handling the raw compressed file, the library will try to open a LZW stream from it and re-open
- the face with it.
- </para><para>
- This function may return <see cref="F:SharpFont.Error.UnimplementedFeature"/> if your build of FreeType was not
- compiled with LZW support.
- </para></remarks>
- <param name="source">The source stream.</param>
- </member>
- <member name="M:SharpFont.FTStream.StreamOpenBzip2(SharpFont.FTStream)">
- <summary>
- Open a new stream to parse bzip2-compressed font files. This is mainly used to support the compressed
- ‘*.pcf.bz2’ fonts that come with XFree86.
- </summary>
- <remarks><para>
- The source stream must be opened before calling this function.
- </para><para>
- Calling the internal function ‘FT_Stream_Close’ on the new stream will not call ‘FT_Stream_Close’ on the
- source stream. None of the stream objects will be released to the heap.
- </para><para>
- The stream implementation is very basic and resets the decompression process each time seeking backwards is
- needed within the stream.
- </para><para>
- In certain builds of the library, bzip2 compression recognition is automatically handled when calling
- <see cref="M:SharpFont.Library.NewFace(System.String,System.Int32)"/> or <see cref="M:SharpFont.Library.OpenFace(SharpFont.OpenArgs,System.Int32)"/>. This means that if no font driver is
- capable of handling the raw compressed file, the library will try to open a bzip2 stream from it and
- re-open the face with it.
- </para><para>
- This function may return <see cref="F:SharpFont.Error.UnimplementedFeature"/> if your build of FreeType was not
- compiled with bzip2 support.
- </para></remarks>
- <param name="source">The source stream.</param>
- </member>
- <member name="T:SharpFont.StyleFlags">
- <summary>
- A list of bit-flags used to indicate the style of a given face. These are used in the ‘style_flags’ field of
- <see cref="T:SharpFont.Face"/>.
- </summary>
- <remarks>
- The style information as provided by FreeType is very basic. More details are beyond the scope and should be
- done on a higher level (for example, by analyzing various fields of the ‘OS/2’ table in SFNT based fonts).
- </remarks>
- </member>
- <member name="F:SharpFont.StyleFlags.None">
- <summary>
- No style flags.
- </summary>
- </member>
- <member name="F:SharpFont.StyleFlags.Italic">
- <summary>
- Indicates that a given face style is italic or oblique.
- </summary>
- </member>
- <member name="F:SharpFont.StyleFlags.Bold">
- <summary>
- Indicates that a given face is bold.
- </summary>
- </member>
- <member name="T:SharpFont.SubGlyph">
- <summary>
- The subglyph structure is an internal object used to describe subglyphs (for example, in the case of
- composites).
- </summary>
- <remarks><para>
- The subglyph implementation is not part of the high-level API, hence the forward structure declaration.
- </para><para>
- You can however retrieve subglyph information with <see cref="M:SharpFont.GlyphSlot.GetSubGlyphInfo(System.UInt32,System.Int32@,SharpFont.SubGlyphFlags@,System.Int32@,System.Int32@,SharpFont.FTMatrix@)"/>.
- </para></remarks>
- </member>
- <member name="T:SharpFont.SubGlyphFlags">
- <summary>
- A list of constants used to describe subglyphs. Please refer to the TrueType specification for the meaning of
- the various flags.
- </summary>
- </member>
- <member name="T:SharpFont.FTVector">
- <summary>
- A simple structure used to store a 2D vector.
- </summary>
- </member>
- <member name="M:SharpFont.FTVector.#ctor(System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:SharpFont.FTVector"/> struct.
- </summary>
- <param name="x">The horizontal coordinate.</param>
- <param name="y">The vertical coordinate.</param>
- </member>
- <member name="P:SharpFont.FTVector.X">
- <summary>
- Gets or sets the horizontal coordinate.
- </summary>
- </member>
- <member name="P:SharpFont.FTVector.Y">
- <summary>
- Gets or sets the vertical coordinate.
- </summary>
- </member>
- <member name="M:SharpFont.FTVector.Unit(System.Int32)">
- <summary><para>
- Return the unit vector corresponding to a given angle. After the call, the value of ‘vec.x’ will be
- ‘sin(angle)’, and the value of ‘vec.y’ will be ‘cos(angle)’.
- </para><para>
- This function is useful to retrieve both the sinus and cosinus of a given angle quickly.
- </para></summary>
- <param name="angle">The address of angle.</param>
- <returns>The address of target vector.</returns>
- </member>
- <member name="M:SharpFont.FTVector.FromPolar(System.Int32,System.Int32)">
- <summary>
- Compute vector coordinates from a length and angle.
- </summary>
- <param name="length">The vector length.</param>
- <param name="angle">The vector angle.</param>
- <returns>The address of source vector.</returns>
- </member>
- <member name="M:SharpFont.FTVector.Transform(SharpFont.FTMatrix)">
- <summary>
- Transform a single vector through a 2x2 matrix.
- </summary>
- <remarks>
- The result is undefined if either ‘vector’ or ‘matrix’ is invalid.
- </remarks>
- <param name="matrix">A pointer to the source 2x2 matrix.</param>
- </member>
- <member name="M:SharpFont.FTVector.Rotate(System.Int32)">
- <summary>
- Rotate a vector by a given angle.
- </summary>
- <param name="angle">The address of angle.</param>
- </member>
- <member name="M:SharpFont.FTVector.Length">
- <summary>
- Return the length of a given vector.
- </summary>
- <returns>The vector length, expressed in the same units that the original vector coordinates.</returns>
- </member>
- <member name="M:SharpFont.FTVector.Polarize(System.Int32@,System.Int32@)">
- <summary>
- Compute both the length and angle of a given vector.
- </summary>
- <param name="length">The vector length.</param>
- <param name="angle">The vector angle.</param>
- </member>
- </members>
- </doc>
|