Så här använder du teckensnittsbindning i omfattande redigeringskontroller
Microsoft Rich Edit 3.0 tilldelar en teckenuppsättning till oformaterade tecken beroende på deras kontext. Några exempel är:
- Grekiska tecken är tilldelade GREEK_CHARSET.
- Hangul-symboler tilldelas HANGUL_CHARSET.
- Kinesiska tecken tilldelas SHIFTJIS_CHARSET om kana-tecken hittas i närheten eller GB2312_CHARSET om ingen kana hittas i närheten.
- Icke-neutrala ANSI-tecken tilldelas ANSI_CHARSET i alla händelser.
Not
Den omfattande redigeringskontrollen använder Unicode internt, så den här användningen av teckenuppsättningar skiljer sig från den ursprungliga som används i teckensnittsspecifikationer. Men CHARFORMAT-struktur har en väldefinierad plats för teckenuppsättningen.
Neutrala tecken som tomma och siffror tilldelas en teckenuppsättning beroende på deras kontext. Till exempel, ett tomt värde omgivet av tecken med samma teckenuppsättning får den teckenuppsättningen. Neutrala och siffror som används för dubbelriktad text tilldelas teckenuppsättningar på ett sätt som baseras på Unicodes dubbelriktade algoritm.
Vad du behöver veta
Teknologier
Förutsättningar
- C/C++
- Programmering av Windows-användargränssnitt
Instruktioner
Använda teckensnittsbindning i en omfattande redigeringskontroll
När teckenuppsättningar har tilldelats söker Rich Edit igenom texten runt insättningspunkten framåt och bakåt för att hitta närmaste teckensnitt som har använts för teckenuppsättningarna. Om inget teckensnitt hittas för en teckenuppsättning använder Rich Edit det teckensnitt som valts av klienten för den teckenuppsättningen. Om klienten inte har angett något teckensnitt för teckenuppsättningen använder Rich Edit standardteckensnittet för den teckenuppsättningen. Om klienten vill ha något annat teckensnitt kan klienten alltid ändra det, men den här metoden fungerar för det mesta. De aktuella standardalternativen för teckensnitt baseras på följande tabell. Observera att standardteckensnitten anges per process och att det finns separata listor för användargränssnittsanvändning och för användning som inte är användargränssnitt.
Språk | Namn på användargränssnittsteckensnitt | UI-teckenstorlek | teckensnittsnamn som inte är för användargränssnitt | teckenstorlek som inte är UI |
---|---|---|---|---|
Western, CE, ME, Vietnamesisk | Tahoma | 8 | Arial | 10 |
Japanska | MS UI Gothic | 9 | MS P Gothic | 10 |
Koreanska | Gulim | 9 | Gulim | 9 |
Förenklad kinesiska | Simsun | 9 | SimSun | 10 |
Traditionell kinesiska | PMingLiU | 9 | PMingLiU | 9 |
Thai | MS Sans Serif | 8 | Tahoma | 14 |
Symboler | Wingdings | 8 | Wingdings | 10 |
Devanagari | Mangal | 8 | Mangal | 10 |
Tamilska | Latha | 8 | Latha | 10 |
Georgisk, armenisk | Arial Unicode | 8 | Arial Unicode | 10 |
I standardtabellen för teckensnittsbindning (poster har en teckenuppsättning, teckensnittsnamn och storlek) tillåter Rich Edit därför att ANSI_CHARSET matchar flera teckenuppsättningar, medan lämplig teckenuppsättning matchar andra teckensnitt på en-till-en-basis. Mer precist använder rich edit valet ANSI_CHARSET om inget annat alternativ hittas. Du kommer att kunna ange en finare kornighet än detta; du kan till exempel tilldela en specifik ARABIC_CHARSET för arabiska teckensekvenser, ett specifikt grekiskt teckensnitt för grekiska sekvenser och så vidare. Den här finare kornigheten används också om ett teckensnitt med önskad teckenuppsättningsstämpel hittas någonstans i dokumentet före det område som är teckenbundet.
Observera att Rich Edit för närvarande inte hanterar ett tecken som saknas i ett teckensnitt som påstår sig ha stöd för en teckenuppsättning men som är ofullständig. Vid visning i ett komplext skript vet Rich Edit till slut att en sådan glyf saknas, men det gör inte att den bakomliggande lagringen använder ett nytt teckensnitt. Normalt utför den underliggande teckensnittslänkningen i operativsystemet detta.
Anmärkningar
Rich Edit 4.1: Om du vill ange standardteckensnittet för ett skript anropar du EM_SETCHARFORMAT med CHARFORMAT2och anger värden för yHeight, bCharSet, bPitchAndFamily, szFaceNameoch lcid medlemmar. Om du vill hämta standardteckensnittet för en specifik kodsida anropar du EM_GETCHARFORMAT med CHARFORMAT2och anger då värden för fälten bCharSet och lcid.
Relaterade ämnen