Hej, Det enklaste är väl att skriva ut vettig html utan såna typer av styrningar och istället låta browsern hålla reda på det... vad menar du med klassiska problemet med felaktig höjd? det är felaktig _bredd_ som measure tring lider av. När du sätter fontstorleken kan du väl göra detta i pixlar? det finns även eb .Height property som returnerar pixelstorleken på en font (eller snarare höjden på en rad i pixlar) Tack för svaren. Hittade lösningen för ett tag sen men glömt att lägga ett inlägg.MeasureString
jag skriver här och det gäller det klassiska problemet med felaktig höjd på Measurestring-funktionen.
Är det någon som har jobbat runt detta på ett korrekt sätt?
Problemet uppstår om man skriver ut flera rader med olika textstilar och storlekar. Då tenderas det att de större raderna skrivs över de mindre raderna. (se på www.tinon.se/test.bmp)
Detta problem har ju diskuterats så länge att någon måste ha löst detta.
MVH
RobertSv: MeasureString
Sv: MeasureString
exakt vad är det du försöker göra?Sv: MeasureString
typ Size = New Unit( ...., .... )
Alltså vet du höjden på texten där.Sv:MeasureString
Sv: MeasureString
Det som är viktigt för att lösa MS-problemen med Measurestring är de tillagda extra höjder som varje typsnitt har.
float fontHeight = font.GetHeight(g);
float fontAscentHeight = (fontHeight/font.FontFamily.GetLineSpacing(font.Style))*font.FontFamily.GetCellAscent(font.Style);