Megosztás a következőn keresztül:


Szöveges metrikák

Az elrendezés, az egyéni betűtípus-kijelölés és egyéb metrikakontrasztens műveletek elősegítése érdekében a Windows 8-tól kezdve a DirectWrite számos új API-val rendelkezik, amelyek a rich text alkalmazások fejlesztéséhez szükséges betűtípusokkal kapcsolatos összes információt ismertetik.

PANOSE

A PANOSE egy vizuális besorolási rendszer a betűtípusok azonosítására. A PANOSE besorolás információkat tartalmaz a családról, a serif stílusról, a súlyról, az arányról, a kontrasztról, a stroke-ról, a karstílusról, az X-magasságról stb. Ez az információ a betűtípus vizuális stílusát ismerteti. Ez az információ azért fontos, mert a hasonló PANOSE-értékekkel rendelkező betűtípusok hasonlóak. Ez nagyon hasznos olyan helyzetekben, amikor egy betűtípus nem érhető el, és az alkalmazásnak vissza kell esnie egy elérhető betűtípusra. A betűtípusok PANOSE értékeinek összehasonlítása lehetővé teszi az eredeti betűtípushoz hasonló betűtípus kiválasztását.

Egy betűtípus PANOSE-információinak eléréséhez használja a GetPanose metódust az IDWriteFont1 és IDWriteFontFace1 interfészen. Ez a metódus egy DWRITE_PANOSE enumerálást ad vissza, amely a betűtípus összes PANOSE-információját tartalmazza.

További metrikák

A Windows 8-tól kezdve a DirectWrite API számos új metrikát is támogat, hogy hasznos információkat jelenítsen meg az alkalmazás betűtípusairól. Ezek az új metrikák tartalmazzák ezt az információt.

  • A bal, a jobb, a felső és az alsó karakterkészlet metrikái.
  • X és Y pozíció felső és alsó indexű elemekhez.
  • X és Y skálázási információ felső és alsó indexű elemekhez.
  • Azt jelzi, hogy a betűtípus tipográfiai metrikákkal rendelkezik-e.

Ez az információ az új GetMetrics metóduson keresztül érhető el az IDWriteFontFace1 és IDWriteFont1 felületeken. Ez a metódus egy DWRITE_FONT_METRICS1 struktúrát ad vissza, amely tartalmazza az összes információt.

Caret-metrikák

Szövegszerkesztő alkalmazások létrehozásához hozzáféréssel kell rendelkeznie arról, hogyan rajzolhatja meg a szövegben navigáló gondviseletet. Windows 8-tól kezdve DirectWrite biztosítja a GetCaretMetrics metódust az IDWriteFontFace1 és IDWriteFont1 interfészen ehhez a forgatókönyvhöz. GetCaretMetrics egy DWRITE_CARET_METRICS enumerálást ad vissza, amely az alapterv mentén található simító meredekségéről és eltolásáról tartalmaz információkat.

Ez az információ különösen akkor hasznos, ha dőlt szöveggel szeretné megfelelően beállítani a simogató meredekségüket.

Monospaced Discoverability

Azok az alkalmazások, amelyek lehetővé teszik a felhasználók számára a számítógép kódjának írását, gyakran monoter betűtípusokat használnak hagyományosabb betűtípusok helyett. Így jobban szabályozhatja a betűtípusok kiválasztását a fejlesztéshez kapcsolódó alkalmazásokban, DirectWrite kifejezi, hogy egy betűtípus monospaced-e az API-val. Az IsMonospacedFont metódus az IDWriteFontFace1 interfészen egy logikai értéket ad vissza, amely jelzi, hogy a betűtípus monospaced-e.

Betűnév egyeztetése

A rich text alkalmazásoknak, például a PDF-olvasóknak képesnek kell lenniük a tartalomban lévő betűtípusok és a rendszeren lévő betűtípusok egyezésére, több formátumban kell hozzáférniük a betűtípusok teljes nevéhez. Így jobban megfelelhet a betűtípusoknak, DirectWrite olyan enumerálást tartalmaz, amely számos formátumban kifejezi a betűtípusok teljes elnevezési adatait.

a DWRITE_INFORMATIONAL_STRING_ID enumerálással lekérheti a rendszer bármely betűtípusának teljes nevét, PostScript-nevét és PostScript CID-nevét. Ez az információ akkor hasznos, ha az alkalmazásban a megfelelő betűtípusokkal kell egyeznie a helyi rendszerben.

Glyph Advances

Az GetGlyphAdvances metódus az IDWriteFontFace1 és IDWriteFont1 felületeken a karakterjelek számát és indexeit veszi figyelembe, amelyekről előlegadatokra van szüksége, majd visszaadja a szóban forgó karakterjelek előlegeit.

Unicode-tartományok

A saját betűtípus-kijelölést kezelni kívánó alkalmazásoknak hozzá kell férniük a betűtípus által támogatott Unicode-tartományokhoz. Így, ha egy Unicode-kódpontot nem támogat a betűtípus, az alkalmazás kiválaszthat egy megfelelő betűtípust, amely tartalmazza ezt a karakterjelet. Ezen információk nélkül előfordulhat, hogy az alkalmazás olyan betűtípust használ, amely nem tartalmazza a jelen lévő információk megjelenítéséhez szükséges összes karakterjelet.

Az GetUnicodeRanges metódus az IDWriteFontFace1 és IDWriteFont1 felületeken az ügyféltől átadott tartományok maximális számát adja vissza, és a betűtípus által támogatott tényleges tartományokat adja vissza.

EUDC betűtípusgyűjtemény

Használja a GetEudcFontCollection metódust az IDWriteFactory1 felületen az EUDC betűtípusgyűjteményhez. Ez a módszer ugyanúgy működik, mint GetSystemFontCollection, de ehelyett egy EUDC-betűtípusgyűjteményre mutató mutatót ad vissza.