DirectWrite предоставя информация за прекъсване на реда чрез IDWriteTextAnalysisSink :: SetLineBreakpoints (). Въпреки това трябва да определям и границите на думите, в съответствие с Приложение Unicode № 29: Сегментиране на текст на Unicode.
Има ли начин да направите това с помощта на DirectWrite? Ако не, какви алтернативи има, които работят заедно с системата за текстово оформление на DirectWrite на работния плот на Windows, както и WinRT?
Отговори:
0 за отговор № 1Мога да потвърдя, че DirectWrite до Windows 8.1 не поддържа UAX 29 (само LB UAX 14). Що се отнася до алтернативи, доставени с директна ОС, или Windows.Data.Text (http://code.msdn.microsoft.com/windowsapps/Text-Segmentation-API-be73de71) или разширените езикови услуги (http://code.msdn.microsoft.com/windowsapps/Extended-Linguistic-ELS-d04c606a), която съществува от Windows 7, може да помогне, но не вярвам, че нито един от тях поддържа директно внедряване на UAX 29.