Knowledge

Subpixel rendering

Source 📝

220:. These pixel components appear as a single color to the human eye because of blurring by optics and spatial integration by nerve cells in the eye. However, the eye is much more sensitive to the location. Therefore, turning on the G and B of one pixel and the R of the next pixel to the right will produce a white dot, but it will appear to be 1/3 of a pixel to the right of the white dot that would be seen from the RGB of only the first pixel. Subpixel rendering takes advantage of this to provide three times the horizontal resolution of the rendered image, though it has to blur this image to produce the correct color by ensuring the same amount of red, green, and blue are turned on as when no subpixel rendering is being done. 414:, that "offers high quality LCD-optimized output without resorting to ClearType techniques of resolution tripling and filtering". This is the method enabled by default. When using this method, "each color channel is generated separately after shifting the glyph outline, capitalizing on the fact that the color grids on LCD panels are shifted by a third of a pixel. This output is indistinguishable from ClearType with a light 3-tap filter." Since the Harmony method does not require additional filtering, it is not covered by the ClearType patents. 128: 78: 250: 25: 196:
of the patent by FreeType indicates that the idea of subpixel rendering is not covered by the patent, but by the actual filter used as a last step to balance the color. Microsoft's patent describes the smallest filter possible that distributes each subpixel value to an equal amount of R,G, and B pixels. Any other filter will either be blurrier or will introduce color artifacts.
227:, and gives a smoother result regardless of whether antialiasing is used or not since it artificially increases the resolution. However, it introduces color aliasing since subpixels are colored. Subsequent filtering applied to remove the color artifacts is a form of antialiasing, although its purpose is not smoothing jagged shapes as in conventional antialiasing. 335:
and the purple left half of the next pixel, then the result is a white block that is 1/2 pixel to the right, which is indeed an instance of subpixel rendering. However, it is not clear whether any programmers of the Apple II have considered the pairs of bits as pixels—instead calling each bit a pixel.
195:
in the United States on subpixel rendering technology for text rendering on RGB Stripe layouts. The patents 6,219,025, 6,239,783, 6,307,566, 6,225,973, 6,243,070, 6,393,145, 6,421,054, 6,282,327, 6,624,828 were filed between October 7, 1998, and October 7, 1999, and expired on July 30, 2019. Analysis
334:
Gibson's example claims that because two adjacent bits make a white block, there are in fact two bits per pixel: one which activates the purple left half of the pixel, and the other which activates the green right half of the pixel. If the programmer instead activates the green right half of a pixel
399:
implementations. The original implementation uses the ClearType antialiasing filters and carries the following notice: "The colour filtering algorithm of Microsoft's ClearType technology for subpixel rendering is covered by patents; for this reason the corresponding code in FreeType is disabled by
321:
contain seven visible bits (each corresponding directly to a pixel) and a flag bit used to select between purple/green or blue/orange color sets. Each pixel, since it is represented by a single bit, is either on or off; there are no bits within the pixel itself for specifying color or brightness.
230:
Subpixel rendering requires the software to know the layout of the subpixels. The most common reason it is wrong is monitors that can be rotated 90 (or 180) degrees, though monitors are manufactured with other arrangements of the subpixels, such as BGR or in triangles, or with 4 colors like RGBW
338:
The flag bit in each byte affects color by shifting pixels half a pixel-width to the right. This half-pixel shift was exploited by some graphics software, such as HRCG (High-Resolution Character Generator), an Apple utility that displayed text using the high-resolution graphics mode, to smooth
330:
color encoding scheme, determined by horizontal position: pixels with even horizontal coordinates are always purple (or blue, if the flag bit is set), and odd pixels are always green (or orange). Two lit pixels next to each other are always white, regardless of whether the pair is even/odd or
429:, allowing them to display documents the same way across various operating systems: Windows, MacOS, Linux etc. When it was launched around the year 2001, CoolType supported a wider range of fonts than Microsoft's ClearType, which at the time was limited to 135:, showing various arrangements of pixels and subpixels, which must be considered for subpixel rendering. LCD displays consisting of red, green, and blue subpixels (bottom right is the most typical example) are best suited to subpixel rendering. 215:
A single pixel on a color display is made of several subpixels, typically three arranged left-to-right as red, green, and blue (RGB). The components are easily visible when viewed with a small magnifying glass, such as a
783: 231:
squares. On any such display the result of incorrect subpixel rendering will be worse than if no subpixel rendering was done at all (it will not produce color artifacts, but it will produce noisy edges).
331:
odd/even, and irrespective of the value of the flag bit. This is an approximation, but it is what most programmers of the time would have in mind while working with the Apple's high-resolution mode.
103: 91: 766: 714: 791: 313:, introduced in 1977, supports an early form of subpixel rendering in its high-resolution (280×192) graphics mode. The Wozniak patent only used 2 "sub-pixels". The 35: 855: 509: 817: 709:
Platt, John; Keely, Bert; Hill, Bill; Dresevic, Bodin; Betrisey, Claude; Mitchell, Don P.; Hitchcock, Greg; Blinn, Jim; Whitted, Turner (2000-05-01).
755: 46: 400:
default. Note that subpixel rendering per se is prior art; using a different colour filter thus easily circumvents Microsoft's patent claims."
593: 456:. However, it was removed after the introduction of Retina displays. Unlike Microsoft's implementation, which favors a tight fit to the grid ( 667: 188:
patented various implementations with certain technical differences owing to the different purposes their technologies were intended for.
959: 838: 763: 710: 407:, a filter that is both normalized (value sums up to 1) and color-balanced (eliminate color fringes at the cost of resolution). 538: 1348: 1321: 884: 879: 1364: 968: 689: 1088: 306: 851: 293: 64: 506: 275: 567: 460:) to maximize legibility, Apple's implementation prioritizes the shape of the glyphs as set out by their designer. 150:'s composition of individually addressable red, green, and blue components adjacent on the display matrix, called 952: 1211: 1012: 260: 1336: 1326: 1216: 1035: 813: 162: 1331: 1196: 1136: 1385: 1124: 945: 644: 742: 1390: 894: 589: 899: 39:
that states a Knowledge editor's personal feelings or presents an original argument about a topic.
664: 271: 1343: 1293: 1258: 1236: 1231: 1186: 1165: 1109: 729: 480: 224: 267: 42: 1069: 1055: 999: 486: 615: 8: 1201: 1129: 1017: 396: 1263: 1251: 1098: 1093: 1045: 923: 469: 403:
FreeType offers a variety of color filters. Since version 2.6.2, the default filter is
158: 168:
Despite the inherent color anomalies, it can also be used to render general graphics.
1313: 1206: 1191: 1007: 932: 1298: 1288: 1170: 1158: 927: 915: 534: 434: 1119: 984: 976: 888: 770: 759: 671: 513: 392: 323: 204: 192: 452:(later OS X, now macOS) used to use subpixel rendering as well, as part of 1268: 906:
Engelhardt, Thomas (2013). "Low-Cost Subpixel Rendering for Diverse Displays".
143: 132: 683: 1379: 1273: 1147: 1077: 422: 373: 318: 1278: 1241: 1226: 1221: 1141: 1082: 457: 784:"On slight hinting, proper text rendering, stem darkening and LCD filters" 127: 1246: 1114: 1050: 475: 368:
describing the filtering behind ClearType. It was then made available in
77: 563: 369: 177: 919: 176:
The origin of subpixel rendering as used today remains controversial.
453: 357: 353: 348: 185: 937: 616:"A Treatise on Font Rasterisation With an Emphasis on Free Software" 278:. Statements consisting only of original research should be removed. 1104: 449: 438: 430: 426: 388: 310: 151: 535:"ClearType Patents, FreeType and the Unix Desktop: an explanation" 1153: 142:
is a method used to increase the effective resolution of a color
1283: 1040: 361: 1303: 989: 217: 200: 147: 636: 410:
Since version 2.8.1, a second implementation exists, called
1027: 327: 314: 102: 90: 36:
personal reflection, personal essay, or argumentative essay
377: 181: 841:", Seybold Report on Internet Publishing, Vol. 4 Issue 8 472: – Process of converting text from vector to raster 708: 665:
David Turner (24 Sep 20:00 2006) LCD Rendering Patches
380:, however, could and did change the default setting.) 154:, and uses them as rendering units instead of pixels. 507:
Microsoft's Cleartype Sets Off Debate on Originality
356:
announced its subpixel rendering technology, called
16:
Technique for increasing apparent display resolution
391:, the library used by most current software on the 223:Subpixel rendering does not necessitate the use of 933:http://jankautz.com/publications/SubpixelCGF13.pdf 364:in 1998. Microsoft published a paper in May 2000, 1377: 880:Ron Feigenblatt's remarks on Microsoft ClearType 528: 526: 637:"GRC - The Origins of Sub-Pixel Font Rendering" 433:fonts, whereas Adobe's CoolType also supported 953: 902:Article from the Anti-Grain Geometry Project. 764:Engineering Changes to ClearType in Windows 7 523: 711:"Displaced Filtering for Patterned Displays" 532: 372:, but it was not activated by default until 885:Pixel Borrowing, ClearType and Antialiasing 425:created their own subpixel renderer called 366:Displaced Filtering for Patterned Displays, 317:that comprise the Apple II high-resolution 960: 946: 905: 558: 556: 294:Learn how and when to remove this message 157:Subpixel rendering is primarily used for 65:Learn how and when to remove this message 126: 76: 852:"The Ails Of Typographic Anti-Aliasing" 811: 685:ICT Bill Gates 1998 keynote comdex 1998 1378: 553: 967: 941: 839:ClearType, CoolType: The Eyes Have It 1365:List of computer graphics algorithms 749: 243: 18: 1026: 566:. FreeType.org. February 13, 2018. 13: 234: 210: 81:A simulation of subpixel rendering 14: 1402: 873: 483: – Electronic device display 891: (archived October 12, 2007) 248: 101: 89: 23: 858:from the original on 2014-08-09 844: 831: 820:from the original on 2019-11-16 805: 776: 717:from the original on 2021-11-30 692:from the original on 2021-11-30 647:from the original on 2006-03-06 596:from the original on 2011-06-03 570:from the original on 2018-11-10 541:from the original on 2009-03-31 322:Color is instead created as an 812:Lemberg, Werner (2017-09-16). 702: 676: 658: 629: 608: 582: 499: 120:channel separated and animated 1: 1322:3D computer graphics software 900:Texts Rasterization Exposures 533:David Turner (June 1, 2007). 492: 146:. It takes advantage of each 108:The previous image, with the 1137:Hidden-surface determination 837:Felici, James (April 2000) " 773:", MSDN blogs, June 23, 2009 342: 199:Apple was able to use it in 7: 814:"Announcing FreeType 2.8.1" 463: 417: 383: 274:the claims made and adding 239: 10: 1407: 346: 171: 1357: 1312: 1179: 1068: 998: 975: 96:"Aa" rendered in subpixel 444: 1349:Vector graphics editors 1344:Raster graphics editors 908:Computer Graphics Forum 590:"LCD Rendering Patches" 1232:Checkerboard rendering 758:(with introduction by 737:Cite journal requires 592:. September 24, 2006. 564:"FreeType and Patents" 191:Microsoft had several 136: 82: 45:by rewriting it in an 1187:Affine transformation 1166:Surface triangulation 1110:Anisotropic filtering 481:PenTile matrix family 441:equivalent as well). 309:has claimed that the 130: 80: 854:. November 2, 2009. 487:Sub-pixel resolution 1202:Collision detection 1130:Global illumination 1252:Scanline rendering 1046:Parallax scrolling 1036:Isometric graphics 769:2012-12-18 at the 670:2007-02-08 at the 520:, December 7, 1998 512:2017-04-21 at the 470:Font rasterization 259:possibly contains 140:Subpixel rendering 137: 83: 47:encyclopedic style 34:is written like a 1386:Computer graphics 1373: 1372: 1314:Graphics software 1207:Planar projection 1192:Back-face culling 1064: 1063: 1008:Alpha compositing 969:Computer graphics 920:10.1111/cgf.12267 895:Subpixel Explorer 304: 303: 296: 261:original research 75: 74: 67: 1398: 1299:Volume rendering 1171:Wire-frame model 1024: 1023: 962: 955: 948: 939: 938: 931: 867: 866: 864: 863: 848: 842: 835: 829: 828: 826: 825: 809: 803: 802: 800: 799: 790:. Archived from 780: 774: 753: 747: 746: 740: 735: 733: 725: 723: 722: 706: 700: 699: 698: 697: 680: 674: 662: 656: 655: 653: 652: 633: 627: 626: 624: 623: 612: 606: 605: 603: 601: 586: 580: 579: 577: 575: 560: 551: 550: 548: 546: 530: 521: 503: 435:PostScript fonts 299: 292: 288: 285: 279: 276:inline citations 252: 251: 244: 203:due to a patent 119: 115: 111: 105: 93: 70: 63: 59: 56: 50: 27: 26: 19: 1406: 1405: 1401: 1400: 1399: 1397: 1396: 1395: 1391:Vector graphics 1376: 1375: 1374: 1369: 1353: 1308: 1175: 1120:Fluid animation 1060: 1022: 994: 985:Diffusion curve 977:Vector graphics 971: 966: 889:Wayback Machine 876: 871: 870: 861: 859: 850: 849: 845: 836: 832: 823: 821: 810: 806: 797: 795: 782: 781: 777: 771:Wayback Machine 760:Steven Sinofsky 754: 750: 738: 736: 727: 726: 720: 718: 707: 703: 695: 693: 682: 681: 677: 672:Wayback Machine 663: 659: 650: 648: 635: 634: 630: 621: 619: 614: 613: 609: 599: 597: 588: 587: 583: 573: 571: 562: 561: 554: 544: 542: 531: 524: 514:Wayback Machine 505:John Markoff, " 504: 500: 495: 466: 447: 420: 395:, contains two 393:X Window System 386: 351: 345: 300: 289: 283: 280: 265: 253: 249: 242: 237: 235:Implementations 213: 211:Characteristics 205:cross-licensing 174: 125: 124: 123: 122: 121: 117: 113: 109: 106: 98: 97: 94: 71: 60: 54: 51: 43:help improve it 40: 28: 24: 17: 12: 11: 5: 1404: 1394: 1393: 1388: 1371: 1370: 1368: 1367: 1361: 1359: 1355: 1354: 1352: 1351: 1346: 1341: 1340: 1339: 1334: 1329: 1318: 1316: 1310: 1309: 1307: 1306: 1301: 1296: 1291: 1286: 1281: 1276: 1271: 1269:Shadow mapping 1266: 1261: 1256: 1255: 1254: 1249: 1244: 1239: 1234: 1229: 1224: 1214: 1209: 1204: 1199: 1194: 1189: 1183: 1181: 1177: 1176: 1174: 1173: 1168: 1163: 1162: 1161: 1151: 1144: 1139: 1134: 1133: 1132: 1122: 1117: 1112: 1107: 1102: 1096: 1091: 1085: 1080: 1074: 1072: 1066: 1065: 1062: 1061: 1059: 1058: 1053: 1048: 1043: 1038: 1032: 1030: 1021: 1020: 1015: 1010: 1004: 1002: 996: 995: 993: 992: 987: 981: 979: 973: 972: 965: 964: 957: 950: 942: 936: 935: 914:(1): 199–209. 903: 897: 892: 882: 875: 874:External links 872: 869: 868: 843: 830: 804: 775: 756:Greg Hitchcock 748: 739:|journal= 701: 675: 657: 628: 607: 581: 552: 522: 518:New York Times 497: 496: 494: 491: 490: 489: 484: 478: 473: 465: 462: 446: 443: 419: 416: 385: 382: 376:. (Windows XP 347:Main article: 344: 341: 302: 301: 256: 254: 247: 241: 238: 236: 233: 212: 209: 173: 170: 159:text rendering 144:display device 133:pixel geometry 107: 100: 99: 95: 88: 87: 86: 85: 84: 73: 72: 31: 29: 22: 15: 9: 6: 4: 3: 2: 1403: 1392: 1389: 1387: 1384: 1383: 1381: 1366: 1363: 1362: 1360: 1356: 1350: 1347: 1345: 1342: 1338: 1335: 1333: 1330: 1328: 1325: 1324: 1323: 1320: 1319: 1317: 1315: 1311: 1305: 1302: 1300: 1297: 1295: 1292: 1290: 1287: 1285: 1282: 1280: 1277: 1275: 1274:Shadow volume 1272: 1270: 1267: 1265: 1262: 1260: 1257: 1253: 1250: 1248: 1245: 1243: 1240: 1238: 1235: 1233: 1230: 1228: 1225: 1223: 1220: 1219: 1218: 1215: 1213: 1210: 1208: 1205: 1203: 1200: 1198: 1195: 1193: 1190: 1188: 1185: 1184: 1182: 1178: 1172: 1169: 1167: 1164: 1160: 1157: 1156: 1155: 1152: 1149: 1148:Triangle mesh 1145: 1143: 1140: 1138: 1135: 1131: 1128: 1127: 1126: 1123: 1121: 1118: 1116: 1113: 1111: 1108: 1106: 1103: 1100: 1097: 1095: 1092: 1090: 1086: 1084: 1081: 1079: 1078:3D projection 1076: 1075: 1073: 1071: 1067: 1057: 1054: 1052: 1049: 1047: 1044: 1042: 1039: 1037: 1034: 1033: 1031: 1029: 1025: 1019: 1018:Text-to-image 1016: 1014: 1011: 1009: 1006: 1005: 1003: 1001: 997: 991: 988: 986: 983: 982: 980: 978: 974: 970: 963: 958: 956: 951: 949: 944: 943: 940: 934: 929: 925: 921: 917: 913: 909: 904: 901: 898: 896: 893: 890: 886: 883: 881: 878: 877: 857: 853: 847: 840: 834: 819: 815: 808: 794:on 2020-11-12 793: 789: 785: 779: 772: 768: 765: 761: 757: 752: 744: 731: 716: 712: 705: 691: 687: 686: 679: 673: 669: 666: 661: 646: 642: 638: 632: 617: 611: 595: 591: 585: 569: 565: 559: 557: 540: 536: 529: 527: 519: 515: 511: 508: 502: 498: 488: 485: 482: 479: 477: 474: 471: 468: 467: 461: 459: 455: 451: 442: 440: 436: 432: 428: 424: 415: 413: 408: 406: 401: 398: 394: 390: 381: 379: 375: 374:Windows Vista 371: 367: 363: 359: 355: 350: 340: 336: 332: 329: 325: 320: 319:screen buffer 316: 312: 308: 298: 295: 287: 277: 273: 269: 263: 262: 257:This section 255: 246: 245: 232: 228: 226: 221: 219: 208: 206: 202: 197: 194: 189: 187: 183: 179: 169: 166: 164: 160: 155: 153: 149: 145: 141: 134: 129: 104: 92: 79: 69: 66: 58: 55:February 2024 48: 44: 38: 37: 32:This article 30: 21: 20: 1279:Shear matrix 1242:Path tracing 1227:Cone tracing 1222:Beam tracing 1142:Polygon mesh 1083:3D rendering 911: 907: 860:. Retrieved 846: 833: 822:. Retrieved 807: 796:. Retrieved 792:the original 788:freetype.org 787: 778: 751: 730:cite journal 719:. Retrieved 704: 694:, retrieved 684: 678: 660: 649:. Retrieved 640: 631: 620:. Retrieved 618:. 2010-09-15 610: 598:. Retrieved 584: 574:November 29, 572:. Retrieved 543:. Retrieved 517: 501: 458:font hinting 448: 421: 411: 409: 404: 402: 387: 365: 352: 337: 333: 307:Steve Gibson 305: 290: 281: 258: 229: 225:antialiasing 222: 214: 198: 190: 175: 167: 163:standard DPI 156: 139: 138: 131:Examples of 61: 52: 33: 1294:Translation 1247:Ray casting 1237:Ray tracing 1115:Cel shading 1089:Image-based 1070:3D graphics 1051:Ray casting 1000:2D graphics 713:: 296–299. 476:Kell factor 437:(and their 397:open source 339:diagonals. 284:August 2014 207:agreement. 1380:Categories 1358:Algorithms 1212:Reflection 862:2014-08-11 824:2019-04-30 798:2020-11-14 721:2021-11-30 696:2021-11-30 651:2006-03-02 622:2023-11-11 493:References 370:Windows XP 268:improve it 178:Apple Inc. 165:displays. 1337:rendering 1327:animation 1217:Rendering 454:Quartz 2D 358:ClearType 354:Microsoft 349:ClearType 343:ClearType 272:verifying 186:Microsoft 152:subpixels 1332:modeling 1259:Rotation 1197:Clipping 1180:Concepts 1159:Deferred 1125:Lighting 1105:Aliasing 1099:Unbiased 1094:Spectral 856:Archived 818:Archived 767:Archived 715:Archived 690:archived 668:Archived 645:Archived 600:April 9, 594:Archived 568:Archived 545:April 9, 539:Archived 510:Archived 464:See also 450:Mac OS X 439:OpenType 431:TrueType 427:CoolType 418:CoolType 389:FreeType 384:FreeType 324:artifact 311:Apple II 240:Apple II 201:Mac OS X 1264:Scaling 1154:Shading 928:9851327 887:at the 641:grc.com 412:Harmony 326:of the 266:Please 193:patents 172:History 41:Please 1284:Shader 1056:Skybox 1041:Mode 7 1013:Layers 926:  362:COMDEX 184:, and 1304:Voxel 1289:Texel 990:Pixel 924:S2CID 445:macOS 423:Adobe 405:light 360:, at 315:bytes 218:loupe 148:pixel 1028:2.5D 743:help 602:2009 576:2018 547:2009 378:OEMs 328:NTSC 116:and 916:doi 762:) " 516:", 270:by 182:IBM 161:on 1382:: 922:. 912:33 910:. 816:. 786:. 734:: 732:}} 728:{{ 688:, 643:. 639:. 555:^ 537:. 525:^ 180:, 112:, 1150:) 1146:( 1101:) 1087:( 961:e 954:t 947:v 930:. 918:: 865:. 827:. 801:. 745:) 741:( 724:. 654:. 625:. 604:. 578:. 549:. 297:) 291:( 286:) 282:( 264:. 118:B 114:G 110:R 68:) 62:( 57:) 53:( 49:.

Index

personal reflection, personal essay, or argumentative essay
help improve it
encyclopedic style
Learn how and when to remove this message




pixel geometry
display device
pixel
subpixels
text rendering
standard DPI
Apple Inc.
IBM
Microsoft
patents
Mac OS X
cross-licensing
loupe
antialiasing
original research
improve it
verifying
inline citations
Learn how and when to remove this message
Steve Gibson
Apple II
bytes

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.