Jump to content

File:Subpixel demonstration (Quartz).png

Page contents not supported in other languages.
This is a file from the Wikimedia Commons
From Wikipedia, the free encyclopedia

Subpixel_demonstration_(Quartz).png (666 × 474 pixels, file size: 88 KB, MIME type: image/png)

Summary

Description
English: This is an illustration of subpixel rendering. The first column displays the original text at 100% size. A part of the text has been magnified 600% (each pixel in the magnification is 6×6 pixels) in a regular image editing program. The upper image does not use subpixel rendering, but does use anti-aliasing. It is completely gray-scale. The lower does use subpixel rendering. At the edges of the strokes of the letters there is noticeable colour deviations. The normal-sized, subpixel-rendered text should appear significantly sharper than the regularly rendered text, but only on a TFT display with RGB subpixels in that exact order.

The second column displays the pixels as they would look if one enlarged an image of the monitor. The white pixels do not appear white, since the display elements are red, green and blue. In the regular rendition, the red, green and blue pixels are only controlled in triplets, i.e. a triplet of subpixels must have the same colour value. There is no such restriction in the subpixel-rendered version, below.

The third column shows, enlarged, how the text is perceived when the light from the red, green and blue pixels mix and form various shades of gray.

The text was generated by the Quartz engine used by Mac OS X. Microsoft's ClearType subpixel rendering technology would have produced slightly different results, but the principle is the same. The font used for the example is Optima. Helvetica Neue is used for the labels.
Español: Esta es una ilustración de la representación por subpíxeles. La primera columna muestra el texto original con el zum al 100 %. Parte del texto se ha aumentado al 600 % (cada píxel en la ampliación abarca un área de 6 × 6 px) en un programa de edición de imágenes ordinario. La imagen superior no utiliza representación por subpíxeles, pero sí emplea antidentado. Es de escala de grises en su totalidad. La inferior sí que utiliza representación por subpíxeles. En los bordes de los trazos de las letras hay divergencias de color perceptibles. El texto representado por subpíxeles de tamaño normal debería aparecer mucho más nítido que el representado de la forma normal, pero este será el caso solamente en una pantalla TFT que tenga los subpíxeles RGB en el mismo orden exacto.

La segunda columna muestra los píxeles como se podrían ver si se agrandara una imagen del monitor. Los píxeles blancos no aparecerían blancos, porque los elementos del visualizador son rojos, verdes y azules. En la reproducción usual, los píxeles rojo, verde y azul solo se controlan en tripletes; esto es, cada triplete de subpíxeles debe tener el mismo valor cromático. Esta restricción no existe en la versión representada por subpíxeles, más abajo.

La tercera columna muestra, de forma ampliada, cómo se percibe el texto cuando la luz de los píxeles rojo, verde y azul se mezclan y forman varias tonalidades de gris.

El texto se ha generado en el motor Quartz que utiliza Mac OS X. La tecnología de representación por subpíxeles ClearType de Microsoft habría producido resultados algo diferentes, pero el principio es el mismo. La letra utilizada para el ejemplo es Optima; Helvetica Neue se utiliza para los rótulos.
Date
Source Own work
Author © 2004 David Remahl

How the image was created

First, Apple's text editing program TextEdit was used to draw the text at 12 and 18 pt (72 dpi) and captured by taking a screenshot. The images were imported in Photoshop and positioned. The two images were then duplicated and scaled up with nearest-neighbour sampling, 600%. Then the following Python script was used to split the components of the source image into three vertical components:

#!/usr/bin/env python

from AppKit import *
from Foundation import *
import sys

image = NSImage.alloc().initWithContentsOfFile_(sys.argv[1])
imageRep = image.representations()[0]

bmpData = imageRep.bitmapData()

numPixels = len(bmpData) / 3

if sys.argv[2] == "1":
 for p in range(numPixels):
 (r,g,b) = bmpData[p*3:(p+1)*3]
 sys.stdout.write(3*r)
 sys.stdout.write(3*g)
 sys.stdout.write(3*b)
elif sys.argv[2] == "2":
 nul = '\0'
 for p in range(numPixels):
 (r,g,b) = bmpData[p*3:(p+1)*3]
 sys.stdout.write(r+nul+nul)
 sys.stdout.write(nul+g+nul)
 sys.stdout.write(nul+nul+b)

The above script was used twice per text image (the raw screenshot), producing four distorted image that were three times as wide as normal. They were imported into Photoshop using the RAW format import. Each of the four images was scaled like this, with nearest-neighbour sampling:

  • Scale height 300%.
  • Scale width and height 200%.

The resulting images had the same scale as the original text that had been enlarged 6 times. The enlarged images were cropped to an approximate square and positioned like they appear in the final image.

The Photoshop file, with intact layers, can be acquired by mailing the copyright holder. In the future, I plan to upload it to the wiki, but right now Photoshop files are unfortunately not supported by MediaWiki.

Licensing

Chmod007 at the English Wikipedia, the copyright holder of this work, hereby publishes it under the following license:
GNU head Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported license.
Attribution: Chmod007 at the English Wikipedia
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
This licensing tag was added to this file as part of the GFDL licensing update.

Original upload log

The original description page was here. All following user names refer to en.wikipedia.
  • 2004-10-27 20:10 Chmod007 666×474×8 (90438 bytes) Infinitesimally small tweak to the position of one of the texts.
  • 2004-10-27 20:05 Chmod007 666×474×8 (90427 bytes) New version, luminance corrected (though the lack of colour management will probably make it look just as bad on many computers.) Still (c) David Remahl, {{GFDL}}
  • 2004-10-27 13:09 Chmod007 666×474×8 (75149 bytes) minor correction of the colours in the mid-lower cell
  • 2004-10-27 11:54 Chmod007 666×474×8 (93082 bytes) Demonstration of subpixels. Detailed description forthcoming. © [[2004]] [[User:Chmod007|David Remahl]]. {{GFDL}}

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

27 October 2004

image/png

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current15:07, 9 December 2018Thumbnail for version as of 15:07, 9 December 2018666 × 474 (88 KB)OgreBot(BOT): Reverting to most recent version before archival
15:07, 9 December 2018Thumbnail for version as of 15:07, 9 December 2018666 × 474 (88 KB)OgreBot(BOT): Uploading old version of file from en.wikipedia; originally uploaded on 2004-10-27 20:05:59 by Chmod007
15:07, 9 December 2018Thumbnail for version as of 15:07, 9 December 2018666 × 474 (73 KB)OgreBot(BOT): Uploading old version of file from en.wikipedia; originally uploaded on 2004-10-27 13:09:34 by Chmod007
15:06, 9 December 2018Thumbnail for version as of 15:06, 9 December 2018666 × 474 (91 KB)OgreBot(BOT): Uploading old version of file from en.wikipedia; originally uploaded on 2004-10-27 11:54:22 by Chmod007
08:46, 18 October 2007Thumbnail for version as of 08:46, 18 October 2007666 × 474 (88 KB)Liftarn{{Information |Description=Demonstration of subpixels. © en:2004 David Remahl. This is an illustration of en:subpixel rendering. The first column displays the original text at 100% size. A part of the text has been magnif

The following 2 pages use this file:

Global file usage

The following other wikis use this file:

Metadata