Abstract:
An accessing computer accessing an image specified by a web page to be rendered at a resolution that is smaller than the resolution of the full image downloaded from the server does not store the full image. Instead, the accessing computer immediately decompresses the full image to the specified smaller resolution, renders it, and then stores the smaller version of the image.

Description:
FIELD OF THE INVENTION 
       [0001]    The present application relates generally to rendering an image at a resolution specified by a web designer to be smaller than the original image resolution without an accessing computer storing the full resolution original image first to conserve storage space. 
       BACKGROUND OF THE INVENTION 
       [0002]    When an accessing computer seeks to render an image specified by a selected Web page, the accessing computer retrieves the full image, decodes it, and stores it. As understood herein, it may happen that the image is designated to be presented in a resolution that is smaller than the resolution of the original full image. In such a case, the accessing computer down-scales the original image that had been stored in its memory and presents the down-scaled version. But as understood herein, this means that greater storage space than necessary for the specified resolution has been consumed in the accessing computer. 
       SUMMARY OF THE INVENTION 
       [0003]    Accordingly, an accessing computer includes a display, an input device, and a processor controlling the display and receiving signals from the input device. A network interface is provided through which the processor communicates with an Internet server storing a full resolution version of an image. Computer readable storage media are accessible to the processor and bear a web browser executable by the processor to respond to a signal from the input device to render an image identified on a web page by, responsive to the signal, retrieving the full resolution version of the image according to an image identification specified by the web page but not storing the full resolution version of the image. Instead, the full resolution version of the image is decompressed to a smaller resolution version of the image according to an image dimension specified by the web page, and the smaller resolution version of the image is rendered on the display. Only the smaller resolution version of the image and not the full resolution version of the image is stored at the accessing computer. 
         [0004]    In example embodiments the full resolution version can be 1920 by 1080 pixels and the smaller resolution version can be 720 by 480 pixels. The accessing computer retrieves image information to render the smaller resolution version of the image, and in one example the image information is in the format: img width=“[int]” height=“[int]” url=“[image name]”&gt;, wherein “int” is a respective integer. In another example the image information is in the format: Image img=new Image ( ); img.width=[int]; img.height=[int]; img.url=“image name”, wherein “int” is a respective integer. 
         [0005]    In some embodiments, with the smaller resolution version of the image stored locally, the accessing computer, responsive to a user selection of an image, determines whether information of the image specified on a web page subject to the user selection indicates the same dimensions and identifies the same image as the smaller resolution version of the image stored locally. Responsive to a determination that information of the image specified on the web page subject to the user selection indicates the same dimensions and identifies the same image as the smaller resolution version of the image stored locally, the accessing computer presents the locally stored image on the display. However, responsive to a determination that information of the image specified on the web page subject to the user selection indicates different dimensions than the smaller resolution version of the image stored locally and identifies the same image as the smaller resolution version of the image stored locally, the accessing computer retrieves the full resolution version of the image from the server, does not store the full resolution version, decompresses the full resolution version to a new smaller version of the image according to the information of the image, renders the new smaller version, and stores the new smaller version in place of the smaller resolution version of the image previously stored locally. 
         [0006]    In another aspect, a method includes accessing an image specified by a web page to be rendered at a resolution that is smaller than a resolution of a full version of the image stored on a server. The method includes downloading full version of the image but not storing the full version of the server on computer memory or computer disk media. The full image is processed to render a smaller resolution version of the image according to the resolution specified by the web page. The method also includes presenting the smaller resolution version of the image, and storing the smaller resolution version of the image and not storing the full version of the image. 
         [0007]    In another aspect, a computer system includes a server computer storing a full resolution version of an image and an accessing computer rendering a web page on a display. The web page contains image information including an identification of the full resolution version and a desired rendering resolution smaller than the full resolution. The accessing computer responsive to a user selection of the image retrieves the full resolution version of the image from the server but does not store the full resolution version. Instead, the accessing computer processes the full resolution version to render a smaller resolution version according to the image information and presents and stores only the smaller resolution version. 
         [0008]    The details of the present invention, both as to its structure and operation, can best be understood in reference to the accompanying drawings, in which like reference numerals refer to like parts, and in which: 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0009]      FIG. 1  is a block diagram of a non-limiting example system in accordance with present principles; 
           [0010]      FIG. 2  is a flow chart of example web designer computer logic; and 
           [0011]      FIGS. 3 and 4  are flow charts of example accessing computer logic. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0012]    Referring initially to the non-limiting example embodiment shown in  FIG. 1 , a system  10  includes an accessing computer  12  that has, among other components, a processor  14  accessing a computer readable storage medium  16  such as solid state memory. Disk memory  18  may also be accessible to the processor  14 . The processor  14  may execute a web browser stored on one of the memories  16 ,  18  to render images from the Internet  20  on a display  22  such as a standard definition computer monitor, a touch screen display, a flat screen standard definition or high definition display, or other video display. Images may be downloaded based on selections of a presented web page input by means of one or more input devices  24  such as mice or other point-and-click devices, keypads, keyboards, voice recognition software, etc. The processor  14  communicates with one or more servers  26  using a network interface  28  such as a wired or wireless modem. Each server  26  typically includes one or more server processors  30  accessing one or more computer readable storage media  32 . Web pages sourced by the server  26  may be configured by a web designer computer  34  including one or more processors  36  accessing one or more computer readable storage media  38  according to designer user input signals from one or more input devices  40 . The accessing computer  12  and web designer computer  34  may be, without limitation, a workstation computer, a desktop computer, a laptop computer, a notebook computer, a personal digital assistant (PDA), a wireless telephone. 
         [0013]    Now referring to  FIG. 2 , commencing at block  42  a user of the web designer computer  34  specifies a desired image, typically by specifying an image identification, that the user wishes to be rendered on a Web page served by the server  26 . The image identification may include information as to storage location of the image. At block  44  the user may also specify a resolution, equivalently the screen dimensions, that the user wants the image to be rendered in on the Web page when the Web page is displayed on an accessing computer  12 . 
         [0014]    As understood herein, the image referenced by the designer may be stored at the server  26  in a relatively high resolution that requires relatively large storage space, yet render a smaller version of the image at the accessing computer  12 . For example suppose that a web page references a PNG image that is stored at the server  26  with the relatively large resolution/dimension of 1920×1080, which when decoded can consume up to eight megabytes. Suppose further that the web page designer wishes an accessing computer  12  to present the image but only at a lesser resolution, e.g., 720×480. 
         [0015]    At blocks  42  and  44  the web page designer using the web designer computer  34  can accomplish the above by specifying an image object in hypertext markup language (HTML) as follows: 
         [0000]    img width=“720” height=“480” url=“image.png”&gt; 
         [0016]    Or, the above image can be specified in Javascript as follows: 
         [0000]    Image img=new Image ( ); img.width=720; img.height=480; img.url=“image.png”. 
         [0017]      FIG. 3  illustrates subsequent logic executed by the accessing computer  12  responsive to a user selecting to download the image specified in  FIG. 2 . Such user selection typically occurs by a user viewing a web page on the display  22  under control of the processor  14  executing a browser and selecting, using an appropriate input device  24 , a link to the image. 
         [0018]    Commencing at block  46 , the user selection of the image is received. Moving to block  48 , the image is fetched according to the image identification, typically accompanying the selected link or otherwise embedded in the web page, that was specified at block  42 . Also, the image rendering resolution input by the web designer at block  44  is also received. In some embodiments the rendering resolution is embedded in the link or is elsewhere on the web page. 
         [0019]    Proceeding to block  50 , the image is accessed but the full image downloaded from the server  26  (in the hypothetical above, the 1920×1080 image) is not stored in the accessing computer  12 . Instead, it is decompressed as it is downloaded to the resolution specified at block  44  in  FIG. 2  and the smaller version of the image (in the hypothetical above, the 720×480 version of the image) and rendered on the display  22 . Then, the smaller version of the image is stored at block  52  on the accessing computer  12 ; the full original version downloaded from the server  26  is never stored in the storage media  16 ,  18  shown in  FIG. 1  according to the logic shown in  FIG. 3  and at most is perhaps incidentally and transitorily stored only in processor  14  temporary memory registers only until such time as decompression is complete. 
         [0020]      FIG. 4  shows additional logic that may be executed by the accessing computer  12 . Suppose the web designer subsequently changes the desired dimensions of the image as it is to be rendered on the display of an accessing computer, e.g., from 720×480 to 960×540 as follows (in Javascript): 
         [0000]    
       
         
               
               
             
           
               
                   
               
             
             
               
                   
                 Image img = new Image( ); 
               
               
                   
                 img.width = 720; img.height = 480; img.url = “image.png”; 
               
               
                   
                 context.drawImage(img); 
               
               
                   
                 img.width = 960; img.height=540; 
               
               
                   
                 context.drawImage(img). 
               
               
                   
               
             
          
         
       
     
         [0021]    Under these conditions, at block  54 , with, the originally defined (smaller) image of 720×480 stored locally, the accessing computer  12  receives a user selection of the image. Moving to decision diamond  56 , the accessing computer determines whether the specified dimensions of the image according to the above-described image information fetch pursuant to new user selection indicates a changed dimension from the image stored in local accessing computer  12  storage, and if not, the logic ends at block  58  by presenting the locally stored image on the display  22 . 
         [0022]    On the other hand, if the dimensions have changed since the prior image storage the logic moves from decision diamond  56  to decision diamond  60  to determine whether the new image dimensions are larger than the dimensions of the original image. If they are, the logic moves to block  62  to present the image but only in the original dimensions, not the dimensions specified in the newly-fetched image information. On the other hand, if the new image dimensions are not larger than the dimensions of the original image, the logic moves from decision diamond  60  to block  64  to present the image in the dimensions specified in the newly-fetched image information. Also at block  64  the new (in the above hypothetical, slightly larger) version of the image is stored and the older (in the hypothetical above, slightly smaller) image is removed from memory. 
         [0023]    While the particular RENDERING IMAGE ON WEB BROWSER DISPLAY AT SMALLER RESOLUTION THAN ORIGINAL IMAGE WITHOUT STORING ORIGINAL IMAGE FIRST TO CONSERVE SPACE is herein shown and described in detail, it is to be understood that the subject matter which is encompassed by the present invention is limited only by the claims.