Although the disclosure herein refers to certain illustrated embodiments, it is to be understood that these embodiments are presented by way of example and not by way of limitation. Not all modifications, alternatives, and equivalents of the embodiments are described, and other embodiments may fall within the spirit and scope of the invention. It is to be understood and appreciated that the process steps and structures described herein do not cover a complete process flow nor all elements and components that may be found in a complete product, apparatus, or system. The following description is therefore presented for illustrative purposes.
This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
Inclusion of certain aspects and implementations in the description below should not be regarded as excluding other aspects and implementations. For example, in accordance with some aspects and implementations that are herein described, selected non-label objects may collectively be regarded as a layout grouping and may be arranged within a view. Each may be assigned an ordinal value, regardless of data type, according to each object's position in a first direction (e.g., horizontal position) relative to other objects of the layout grouping. The objects may be linearly aligned along a line parallel to the first direction (e.g., horizontally). Each object's position may then be minimally adjusted in the first direction (e.g., horizontally) such that the object has a minimum distance from each other object having a lower ordinal value, without overlapping any of the other objects. Such aspects and implementations should not be regarded as limiting, since other aspects and implementations are also contemplated. For example, in accordance with another aspect and implementation, a computer-readable medium contains computer-readable instructions that, when executed by a computer system, cause the computer system to perform the above-described method. In accordance with still another aspect and implementation, a computer system has a memory containing computer-readable instructions that, when executed by the computer system's processor, cause the processor to perform the method.
Moreover, description of various embodiments in terms of software programs running on a computer processor, for example, should not be interpreted as excluding other embodiments having dedicated hardware implementations including, but not limited to application specific integrated circuits (ASICs) and programmable logic arrays (PLAs). Other hardware devices can likewise be constructed to implement the methods described herein. Furthermore, alternative software implementations including, but not limited to, distributed processing or component/object distributed processing, parallel processing, or virtual machine processing can also be constructed to implement the methods described herein.