L'indépendance de la résolution en brevet

Anthony Nelzin-Santos |
L'indépendance de la résolution, ce concept qui permettrait à une interface de s'ajuster à n'importe quelle résolution d'écran, est une arlésienne du Mac : on en parle depuis Mac OS X 10.0, on en a vu quelques signes dans Mac OS X 10.4, un peu plus dans Mac OS X 10.5… et puis plus rien. Alors qu'on parle de la mise en place d'un mode HiDPI dans Mac OS X Lion et que la résolution des MacBook Air monte à 135ppp, un nouveau brevet signé Apple sur l'indépendance de la résolution est apparu à l'USPtO.

La résolution de 135ppp du MacBook Air 11" double celle du Mac original, sans que l'interface n'ait particulièrement plus évolué : du texte en 12pt apparaît sur le MacBook Air 11" comme le texte en 6,5pt apparaissait sur le Macintosh. Les éléments d'interface comme les boutons, les menus, les ascenseurs sont 30 % plus grands sur l'iMac 27" que sur le MacBook Air 11", pour ne comparer que les deux extrêmes de la gamme. Il s'agit donc d'éviter qu'en augmentant la résolution des écrans (définition supérieure pour une même diagonale d'écran), on ne diminue trop la taille des éléments d'interface. Apple a résolu le problème avec iOS et le mode HiDPI (éléments 1x pour les écrans normaux, 2x pour les écrans Retina), mais on peut faire plus élégant.

Une piste explorée depuis longtemps est la conception d'interface avec des éléments vectoriels, c'est-à-dire des éléments dont les formes sont calculées par des formules mathématiques et peuvent donc être adaptées à toutes les résolutions. Ou presque : le système a des limites, notamment pour les éléments de petite taille dont le tracé ne doit pas être simplement mis à l'échelle, mais simplifié pour plus de lisibilité.

i-m-free

Dans le brevet 7,907,146 (via), Apple expose une possible solution qui n'est pas éloignée de l'approche vectorielle. L'idée serait de définir les éléments d'interface par leurs propriétés : forme, texture, couleur, reflets, etc.. Tous ces paramètres seraient stockés dans un petit fichier (hiérarchisé comme un fichier XML) qui permettrait au système de « dessiner » l'élément d'interface en fonction de ce qui est décrit de lui (programmation procédurale). Le concepteur de l'interface pourrait même décrire comme tel ou tel élément pourrait être affecté par son déplacement, son redimensionnement…

Reste à savoir, comme d'habitude, et encore plus avec ce sujet, quand on passera de la théorie à la pratique. Ce système est implémenté dans Mac OS X 10.6 et 10.7, mais n'est pas actif.
avatar Macleone | 
Ce système est déjà utilisé dans Mac OS X depuis 10.5 (/System/Library/PrivateFrameworks/CoreUI.framework) En plus d'un tas d'image similaires à celles de l'article, on trouve un dossier pleins de "xml" (qui sont en fait des fichiers binaires) qui décrivent comment dessiner les éléments d'interface.
avatar SolMJ | 
Macleone > Sauf que la résolution indépendante n'existe pas actuellement sur les mac ;)
avatar Macleone | 
Si. Il suffit de lancer "Quartz Debug" et de changer la résolution pour l'essayer. Il manque encore quelques éléments (barre de titre des fenêtres), mais sinon dans l'ensemble, ça fonctionne plutôt bien.
avatar oomu | 
@SolMJ [16/03/2011 18:07] ce que Macleone explique c'est que ce qui est décrit dans le brevet, la fondation technique de os x pour arriver un jour à la "indépendance de résolution", existent déjà depuis mac os x 10.5 entre autre, cela permet de générer l'icône de ical avec la date du jour, par exemple. - c'est en "sommeil" dans os x depuis un bon moment.
avatar sebastiano | 
Dédicace à ceux qui estiment que la R&D d'Apple se tourne les pouces. Ça continue de bosser dur ...
avatar Anthony Nelzin-Santos | 
@Macleone : oui, c'est aussi le truc que l'on retrouve dans Lion mais qui n'est pas activé par défaut. Remarque, à la réfléxion, je vais le préciser.
avatar romainbessuges | 
C'est dans l'idée excellent, mais quid des temps de conception et de réalisation qui par ce procédé vont exploser, quid de l'espace de liberté et de l'innovation potentielle du designer ?
avatar oomu | 
Ars Technica avait expliqué de "CoreUI.framework" dans os x 10.5 qui est cette fonctionnalité de décrire l'interface (icones etc) en mélange de vectoriel/bitmap/autre . C'est un "framework privé", c'est à dire une brique de programmation non documentée, que les développeurs ne sont pas censés utiliser (à leurs risques et périls s'ils tentent, rien n'est garanti). La page de ars technica semble malheureusement avoir perdu ses images (en anglais). http://arstechnica.com/apple/reviews/2007/10/mac-os-x-10-5.ars/10
avatar oomu | 
@romainbessuges [16/03/2011 18:32] "C'est dans l'idée excellent, mais quid des temps de conception et de réalisation qui par ce procédé vont exploser, quid de l'espace de liberté et de l'innovation potentielle du designer ?" O_o ben heu comme d'hab, c'est un complot : le designer est sacrifié par pure haine, les prix explosant vont provoquer une inflation record, la Liberté sera interdite, et le Monde Va Disparaître.. - Dans le principe c'est pas différent de ce que permettent des outils comme Flash MX. et que je sache, une armée entière d'infographistes a très bien survécu à Flash MX (voir même ils adorent ça). De ce qui fut compris, CoreUI.framework permet l'usage de pdf aussi, format que tout plein d'artistes ont su dresser. BREF, le jour où Apple s'estimera prêt pour permettre cela, y aura évidemment dans xcode le petit bidule qui permettra d'intégrer tout ça joli ce que l'artiste pond et le monde sera Sauvé.
avatar guigui31 | 
Vous ne confondez pas résolution et définition?
avatar Céroce | 
Dire que l'indépendance de la résolution sert à afficher les éléments d'interface utilisateur toujours à la même taille me parait bien réducteur. L'idée est de pouvoir donner la taille des éléments à l'écran dans une unité de mesure physique (par ex. en millimètres). Aujourd'hui, si on affiche une page A4 verticale dans un traitement de texte à 100%, quelle est sa largeur à l'écran ? Ceux qui ont répondu 21 cm ont perdu: ça dépend de la résolution de l'écran. Comme indiqué plus haut, on peut activer l'indépendance de la résolution avec Quartz Debug. Malheureusement, l'IHM présente alors de gros blocs. Plus de détails: http://www.renaudpradenc.com/?post/L-indépendance-de-la-résolution
avatar Anthony Nelzin-Santos | 
@guigui31 : non. La résolution est une mesure de la finesse de l'affichage (en nombre de pixel par unité), la définition est le produit du nombre de points à l'horizontale par celui à la verticale. Ce n'est pas parce que tout le monde confond les deux que je devrais en faire autant.
avatar Fred. | 
Ouais! C'est symptomatique de la façon de fonctionner d'Apple maintenant: on fait des brevets plutôt que sortir de sortir des innovations de leurs concepts! Depuis le temps qu'ils en parlent, j'aurais préfèré qu'ils le fassent dans lion plutôt que de déposer un brevet...
avatar bugman | 
Une "vieille" techno que j'attend depuis un moment (parce que je la trouve intéressante). Tant mieux si cela refait surface.
avatar SolMJ | 
[quote]Depuis le temps qu'ils en parlent, j'aurais préfèré qu'ils le fassent dans lion plutôt que de déposer un brevet...[/quote] C'est pas prévu justement pour Lion ?
avatar Mektoub | 
Notons qu'il n'est pas forcement utile ou indispensable d'avoir la même taille d'icônes sur un mba 11" et un iMac 27, vu que les distances d'observation sont différentes. L'indépendance de résolution permet surtout à l'utilisateur de choisir lui même la taille des éléments d'interface qu'il souhaite, et ce sans artefacts d'extrapolation.
avatar Fred. | 
@ SolMJ : Et bien non! Comme précisé dans l'article, on en parle presque pour chaque version depuis X.0 Si c'était implémenté dans Lion , on le saurait (on doit savoir presque tout de lion, maintenant)
avatar oomu | 
rien ne semble indiquer que cela sera utilisé à grande échelle dans Lion. non, ça sera en veilleuse jusqu'à ce que fasse à des écrans fantasmagoriques, apple se sente obliger d'y répondre. de plus, ça sera obligatoirement associé à des ajouts à xcode et de l'information au près des développeurs. Bref, ça sera dit.
avatar françois bayrou | 
@oomu "c'est en "sommeil" dans os x depuis un bon moment." Et fonctionnel sur MS Windows depuis l'arrivée de WPF !
avatar PA5CAL | 
L'idée n'est pas nouvelle, et les exemples n'ont pas attendu Apple pour exister. Il paraît donc plutôt inquiétant qu'un brevet à ce sujet puisse être déposé puis accepté, compte tenu du fait que cela aurait pour conséquence d'ôter toute liberté à ceux qui voudrait avoir recours à cette "technologie" (ne pas rire)... à moins d'avoir les moyens d'entrer en guerre juridique contre Apple.
avatar Mektoub | 
@ PA5CAL : Effectivement, mon gamin de 6 ans m'a spontanément parlé de l'indépendance de la résolution ( avec ses mots bien sur) le jour où le MBP13 est arrivé et qu'il l'a comparé à notre iMac 27 Si on commence à breveter le bon sens, comme la fermeture du toit ouvrant lorsqu'il pleut, où va t'on?
avatar Lemmings | 
En attendant, Microsoft l'a implémenté depuis Windows Vista... Et ça marche du feu de dieu !
avatar - B'n - | 
Ça serait pas plus léger de faire une version agrandie de chaque élément de l'interface, comme on le fait pour les icônes par exemple ? Parce que le vectoriel nécessite de calculer l'image, ça risque d'alourdir la charge processeur destinée à l'affichage non ?
avatar Liam128 | 
@sebastiano: [quote]Dédicace à ceux qui estiment que la R&D d'Apple se tourne les pouces. Ça continue de bosser dur ... [/quote] C'est une blague ? Comme d'autres l'ont dit, cette idée est loin d'être neuve, et est même déjà implémentée sous Windows depuis Vista.
avatar PA5CAL | 
@ Mektoub : la situation est bien pire que si l'on avait seulement évoqué le principe (ce qui en soi peut déjà être une raison de refuser le brevet), puisqu'il y a eu déjà des réalisations parfaitement fonctionnelles. Les abus du système des brevets sont une véritable plaie. Alors qu'il était censé favoriser l'innovation, ce système est majoritairement utilisé pour empêcher celle-ci ou la mettre sous le contrôle d'une petite minorité prédatrice dont le pouvoir repose essentiellement sur l'organisation de la pénurie. De fait, ceux qui ont les moyens de déposer les brevets et de gagner les batailles juridiques peuvent interdire qu'un concept soit pensé, développé ou seulement utilisé par les autres... souvent contre le bien de l'humanité. La propriété intellectuelle aurait besoin d'une grande réforme.

CONNEXION UTILISATEUR