<table><tr><td style="">mglb updated this revision to Diff 51234.<br />mglb retitled this revision from "Improve built-in line/box characters drawing" to "Add line/block characters table for testing".<br />mglb edited the summary of this revision. <a href="https://phabricator.kde.org/transactions/detail/PHID-XACT-DREV-qmyk4omzvu2ntlu/">(Show Details)</a><br />mglb added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D18735">View Revision</a></tr></table><br /><div><div><p>Update description (I hope so)</p></div></div><br /><div><strong>CHANGES TO REVISION SUMMARY</strong><div><div style="white-space: pre-wrap; color: #74777D;"><span style="padding: 0 2px; color: #333333; background: rgba(251, 175, 175, .7);">* Fix bold lines (BUG 402415).<br />
* Make drawing pixel-perfect.<br />
* Make line width proportional to font size.<br />
* Move relevant code to separate file and namespace.<br />
* Remove code for checking supported line characters from Character<br />
class. Information about what is supported is now in one place<br />
together width drawing code.<br />
* Remove fontembedder/LineFont files (no longer used).<br />
* Add test script for displaying supported characters table.<br />
* Add triple and quadruple dashes (U+2504...U+250B).<br />
* Change shade block characters (U+2591...U+2593) look. When<br />
antialiasing is turned on, shades are drawn as transculent solid<br />
rectangles with 25%, 50% and 75% alpha. This matches the characters<br />
name/description and their usage. Without antialiasing, previous<br />
method with patterns is used.<br />
<br />
{F6587215}<br />
<br />
{F6587216}<br />
<br />
{F6587214}<br />
<br />
Without AA:<br />
<br />
{F6587330}<br />
<br />
{F6587331}</span><span style="padding: 0 2px; color: #333333; background: rgba(151, 234, 151, .6);">Improve built-in line/block characters drawing<br />
<br />
* Fix bold lines (BUG xxxx)<br />
* Pixel-perfect line drawing<br />
* Make line width proportional to font size<br />
<br />
Remove fontembedder/LineFont files<br />
<br />
New line drawing code does not use this.<br />
<br />
Line/block characters: refactoring<br />
<br />
* Move code to separate namespace/file<br />
* Remove code for checking supported line characters from Character<br />
class. Information about what is supported is now in one place<br />
together width drawing code<br />
* Tune line widths<br />
* Formatting, etc.<br />
<br />
Copyrights in LineBlockCharactersDrawer.cpp are based on<br />
`git blame -w src/TerminalDisplay.cpp` executed before moving the code<br />
to a separate file. Years from first/last commit. Authors sorted by<br />
year. Whitespace-only changes were ignored. Maksim's code was commited<br />
by Waldo Bastian who mentioned him as the author in commit message<br />
(see 5062b40dd).<br />
<br />
Line/block characters: add triple and quad dashes<br />
<br />
Make code responsible for drawing double dash more generic and add<br />
triple and quadruple dashes (U+2504...U+250B).<br />
<br />
Line/block characters: rename namespace and files<br />
<br />
Remove stray ;<br />
<br />
Remove unused overloaded function<br />
<br />
Change LightWidthToFontSizeRatio to 1/6.5<br />
<br />
DejaVu Sans Mono 8pt (7px character width)<br />
TODO: describe when the 2px/3px starts<br />
<br />
Improve code formating and constant name<br />
<br />
Add frames to line/block characters test table<br />
<br />
Make bold lines at least 1px wider than regular lines<br />
<br />
When font size is big enough (i.e. has width >= 7), bold lines always<br />
will be at least 1px wider than regular lines.<br />
<br />
Use uint instead of qreal for line widths<br />
<br />
Improve built-in line/box characters drawing<br />
<br />
* Fix bold lines (BUG 402415).<br />
* Make drawing pixel-perfect.<br />
* Make line width proportional to font size.<br />
* Move relevant code to separate file and namespace.<br />
* Remove code for checking supported line characters from Character<br />
class. Information about what is supported is now in one place<br />
together width drawing code.<br />
* Remove fontembedder/LineFont files (no longer used).<br />
* Add test script for displaying supported characters table.<br />
* Add triple and quadruple dashes (U+2504...U+250B).<br />
* Change shade block characters (U+2591...U+2593) look. When<br />
antialiasing is turned on, shades are drawn as transculent solid<br />
rectangles with 25%, 50% and 75% alpha. This matches the characters<br />
name/description and their usage. Without antialiasing, previous<br />
method with patterns is used.<br />
<br />
*Screenshots*<br />
<br />
Font size: 10pt; character width: 8px<br />
{F6602823}<br />
<br />
Font size: 11pt; character width: 9px<br />
{F6602824}<br />
<br />
Font size: 12pt; character width: 10px<br />
{F6602825}<br />
<br />
Font size: 13-14pt; character width: 11px; w/o antialiasing<br />
{F6602826}<br />
<br />
Font size: 13-14pt; character width: 11px<br />
{F6602827}<br />
<br />
Font size: 15pt; character width: 12px<br />
{F6602828}<br />
<br />
Font size: 6-7pt; character width: 5px<br />
{F6602829}<br />
<br />
Font size: 8-9pt; character width: 7px; w/o antialiasing<br />
{F6602830}<br />
<br />
Font size: 8-9pt; character width: 7px<br />
{F6602831}<br />
<br />
Alignment test (8pt)<br />
{F6602832}</span><br />
<br />
Note: Copyrights in LineBlockCharactersDrawer.cpp are based on<div style="padding: 8px 0;">...</div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R319 Konsole</div></div></div><br /><div><strong>CHANGES SINCE LAST UPDATE</strong><div><a href="https://phabricator.kde.org/D18735?vs=51233&id=51234">https://phabricator.kde.org/D18735?vs=51233&id=51234</a></div></div><br /><div><strong>BRANCH</strong><div><div>wip/line-block-characters-drawing</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D18735">https://phabricator.kde.org/D18735</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/CMakeLists.txt<br />
src/Character.h<br />
src/LineBlockCharacters.cpp<br />
src/LineBlockCharacters.h<br />
src/LineFont.h<br />
src/LineFont.src<br />
src/TerminalDisplay.cpp<br />
tests/line_block_characters_table.py<br />
tools/CMakeLists.txt<br />
tools/fontembedder.cpp</div></div></div><br /><div><strong>To: </strong>mglb, Konsole, VDG, fvogt<br /><strong>Cc: </strong>sandsmark, fvogt, konsole-devel, maciejn, thsurrel, ngraham, maximilianocuria, hindenburg<br /></div>