Web browsing system, communication terminal and control method thereof
Patent Information
- Application Number
- JP2022145033
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2022-09-13
- Publication Date
- 2025-09-02
AI Technical Summary
Existing web browsing systems, such as those described in Patent Document 1, do not adequately account for the diverse display sizes of various communication terminals, leading to suboptimal rendering results when different devices connect to cloud servers.
A web browsing system that includes a server rendering web pages and a communication terminal displaying the results, where the terminal provides display environment information to the server, which adjusts rendering conditions and generates images tailored to the terminal's specifications.
Enables rendered images that are optimized for the display capabilities of individual communication terminals, improving web content viewing experience across devices with varying display sizes.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a web browsing system that offloads a browser engine to a cloud. The communication terminals that can use this web browsing system include image processing devices such as printers, scanners, FAX machines, and multifunction devices thereof, as well as general-purpose information processing devices such as personal computers and mobile terminals. [Background technology]
[0002] Conventionally, communication terminals such as image processing devices (information processing devices) that are equipped with a web browser (hereinafter referred to as a browser) and have a function for browsing web pages on the browser are known. A communication terminal that accesses a web page of an external service through the web browser can expand its functions by linking with the external service.
[0003] Recently, a mechanism called a cloud browser that uses an image generation server that generates rendering results of a web page on a cloud server is under consideration. Patent Document 1 discloses a system that renders a web page in a virtual machine on a network different from that of a communication terminal and displays the rendering results on the communication terminal. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent Publication No. 2022-41717 Summary of the Invention [Problem to be solved by the invention]
[0005] The system described in Patent Document 1 has room for improvement in the method of displaying web pages. This is because Patent Document 1 does not provide a detailed consideration of the types of communication terminals that connect to the cloud server. If this system becomes widespread, it is expected that various types of communication terminals will connect to the cloud server. Since various communication terminals are expected to have displays of various sizes, it is desirable for the cloud server to be able to output rendering results suitable for each display size.
[0006] The present invention has been made in view of the above, and has an object to provide a Web browsing system that can acquire a rendering image suited to a communication terminal that displays Web content. [Means for solving the problem]
[0007] The present invention provides a web browsing system having a server that renders a web page and a communication terminal that displays the web page based on the results of the rendering, wherein the communication terminal has a means for transmitting address information of the web page and specific information for identifying the display environment of the communication terminal to the server, and a means for receiving from the server a rendered image of the web page rendered based on rendering conditions identified based on the specific information, and the server has a means for receiving the address information and the specific information from the communication terminal, and a means for accessing the web page based on the address information, generating a rendered image from the web page based on the rendering conditions identified based on the specific information, and transmitting it to the communication terminal. Effect of the Invention
[0008] According to the present invention, it is possible to provide a Web browsing system capable of acquiring a rendering image suited to a communication terminal that displays Web content. [Brief description of the drawings]
[0009] [Figure 1] FIG. 2 is a diagram showing the overall system configuration of a cloud browser. [Diagram 2] Fig. 2A is a block diagram showing an example of a hardware configuration of a virtual machine operating in the cloud browser system, and Fig. 2B is a diagram showing a software configuration of a virtual machine operating in the cloud browser system. [Diagram 3] Fig. 3A is a diagram showing a hardware configuration of an image forming apparatus that operates in a cloud browser system, and Fig. 3B is a diagram showing a software configuration of an image forming apparatus that operates in a cloud browser system. [Figure 4] FIG. 13 is a diagram showing an example of a home screen displayed on an operation unit 3-12 of the image forming apparatus. [Diagram 5] FIG. 13 is a diagram illustrating an example of a browser screen. [Figure 6] FIG. 11 is a diagram showing an example of a sequence using a User Agent in a cloud browser system. [Figure 7] FIG. 2 is a flowchart showing the control of the cloud browser system. [Figure 8] Fig. 8(A) is a diagram showing an example of a User Agent information management table, and Fig. 8(B) is a diagram showing an example of a User Agent information management table. [Figure 9] FIG. 11 is a diagram illustrating an example of a sequence in a cloud browser system. [Figure 10] FIG. 2 is a flowchart showing the control of the cloud browser system. [Figure 11] Fig. 11(A) is a diagram showing an example of content display for a small display, Fig. 11(B) is a diagram showing an example of content display for a large display, and Fig. 11(C) is a diagram showing an example of display in which improvement is desired. [Figure 12] Fig. 12(A) is a diagram showing an example of content display for a small display, Fig. 12(B) is a diagram showing an example of content display for a large display, and Fig. 12(C) is a diagram showing an example of display in which improvement is desired. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] Hereinafter, the embodiment of the present invention will be described in detail with reference to the drawings. Note that the scope of the present invention is not limited to the configurations described in the embodiments. As long as the same effect is obtained, modifications such as replacing part of the configuration or part of the processing with an equivalent or omitting it may be made.
[0011] Example 1 <Cloud Browser System> FIG. 1 is a diagram showing the overall configuration of a cloud browser system. The cloud browser system 1-00 is a web browsing system that renders web content on the cloud. The cloud browser system 1-00 includes multiple image forming apparatuses 1-01 to 1-03 and an image generation server 1-20 to which these image forming apparatuses are connected. The cloud browser system 1-00 also includes a web page server 1-05 (web content providing server) that provides web pages, and a proxy 1-04, or cooperates with the proxy 1-04 as an external service. FIG. 1 shows an example in which three image forming apparatuses 1-01 to 1-03 are connected to one image generating server 1-20. However, the number of image forming apparatuses connected to the image generating server 1-20 may be any number. The image generating server 1-20 is configured to provide services to multiple image forming apparatuses in parallel or in a time-sharing manner. Therefore, the number of image generating servers 1-20 in the cloud browser system 1-00 is relatively small compared to the number of image forming apparatuses. In addition, multiple image generation servers may be arranged in the cloud browser system 1-00 for the purpose of distributing the load, etc. In the following, the relationship with the image generation server 1-20 will be described using the image forming device 1-01 as an example representing multiple image forming devices.
[0012] The image generation server 1-20 is a system on the cloud that provides a service that substitutes for the rendering of web content. The image generation server 1-20 includes a gateway 1-06, a virtual machine 1-07, and a storage 1-09. Although details will be described later, a browser engine, which is a software module, runs on the virtual machine 1-07 of the image generation server 1-20. The browser engine receives the URL of a web page 1-05 transmitted from the image forming device 1-01 via the gateway 1-06. The browser engine then accesses the web page 1-05 corresponding to the received URL via the gateway 1-06 and receives web content such as HTML from the web page 1-05. After that, a rendering result of the received web content is generated by a software module that performs rendering that is separately prepared. The rendering result is transmitted to the image forming device 1-01 via the gateway 1-06.
[0013] For simplicity of explanation, in the first embodiment, the image generation server 1-20 is configured to have only one virtual machine 1-07. However, multiple virtual machines may be provided, for example, to improve availability and durability. In this case, a load balancer is placed between the gateway 1-06 and the virtual machines. Then, it is preferable to configure the storage 1-09 to be shared by multiple virtual machines, while selecting one of the multiple virtual machines depending on the load situation to operate the browser engine.
[0014] The storage 1-09 of the image generating server 1-20 holds non-volatile information such as settings required for the browser engine to operate. The storage 1-09 also stores table data that associates and manages device information sent from the image forming apparatus 1-01 and the like with User Agent information. Details will be described later.
[0015] The image forming apparatus 1-01 is an image processing apparatus (information processing apparatus, communication terminal) having a function of forming (printing) an image on a sheet (paper) or a function of sending image data generated by scanning to an arbitrary destination. The image forming apparatus 1-01 may be a printer of either MFP or SFP type. The printing method of the image forming apparatus 1-01 may be either electrophotographic method or inkjet method. The image forming apparatus 1-01 of this embodiment is characterized in that it browses and displays web content on the Internet by using an image generation server 1-20. Details will be described later.
[0016] The Proxy 1-04 is a server that monitors and restricts communication between the network to which the image forming apparatus 1-01 belongs and the Internet, and performs URL filtering (Web filtering) to restrict access to Web sites.
[0017] <System usage sequence> In the cloud browser system 1-00 of this embodiment, when rendering a Web page in the image generation server 1-20, the image is output as an image adapted to the display environment of the image forming apparatuses 1-01, 1-02, and 1-03 that display the rendering result. FIG. 12(A) is a diagram showing an example of content display for a small display. FIG. 12(B) is a diagram showing an example of content display for a large display. FIG. 12(C) is a diagram showing an example of display that needs improvement. Assume that there is a cloud browser system 1-00 that displays Web content by providing a rendering image to a small display as in the screen 1201 of FIG. 12(A). If a similar rendering result is provided to a device with a large display, the screen becomes difficult to view as in the screen 1203 of FIG. 12(C). Therefore, in this embodiment, rendering is performed in consideration of information on the display environment (considering the rendering conditions) so that an image of an appropriate size and resolution can be provided to a device with a large display as in the screen 1202 of FIG. 12(B). With this configuration, even if the display environments of the devices used to view Web pages differ, a Web browsing environment with excellent operability can be provided.
[0018] The flow of using the cloud browser system will be described with reference to Fig. 9. Fig. 9 is a diagram showing an example of a sequence in the cloud browser system.
[0019] In S901, when a user issues an instruction to execute a cloud browser function, the UI control unit 3-52 of the image forming apparatus 1-01 receives the instruction.
[0020] In step S902, when the UI control unit 3-52 issues a start request, the browser control unit 3-60 starts up.
[0021] In S903, the browser control unit 3-60 makes a rendering request for a Web page to the virtual machine 1-07. The rendering request includes URL information (address information) indicating the location of the Web content to be displayed and device information of the image forming apparatus 1-01. The device information is, for example, screen size information of the operation unit 3-12 of the image forming apparatus 1-01 and specific information for identifying the operation unit 3-12. An example of the specific information is screen type information. The URL information indicating the location of the Web content is a preset URL or URL information input by the user.
[0022] In S904, the virtual machine 1-07 makes a request to the Web page server 1-05 to acquire Web contents.
[0023] In S905, the Web page server 1-05 transmits the Web content in response to the request to acquire the Web content.
[0024] In S906, the virtual machine 1-07 renders the Web content after performing adjustment processing so that the image is suitable for display on the image forming apparatus 1-01 based on the device information included in the rendering request received in S903. The adjustment processing adjusts the display size, character size, resolution, image size within the content, etc.
[0025] In S907, the virtual machine 1-07 notifies the browser control unit 3-60 of URL information indicating the location of the image data of the rendering result.
[0026] In S908, the browser control unit 3-60 makes a request to acquire image data of the rendering result using the URL information received in S907.
[0027] In S909, the Web page server 1-05 transmits image data in response to the image data acquisition request.
[0028] In S910, the browser control unit 3-60 displays the image data received in S909.
[0029] <Virtual Machine> FIG. 2A is a block diagram showing an example of the hardware configuration of a virtual machine that operates in the cloud browser system.
[0030] The virtual machine 1-07 includes a CPU 2-01, an internal storage 2-02, a RAM 2-03, an interface 2-04, and a communication interface 2-05. Each component is connected to be able to communicate with each other via a bus 2-06.
[0031] The CPU (Central Processing Unit) 2-01 is a control unit that performs various controls on the virtual machine 1-07. The CPU 2-01 executes various processes using computer programs and data stored in the internal storage 2-02. As a result, the CPU 2-01 controls the overall operation of the virtual machine 1-07, and also executes or controls each process (described later) that runs on the virtual machine 1-07.
[0032] The internal storage 2-02 stores setting data for the virtual machine 1-07, computer programs and data related to the startup of the virtual machine 1-07, computer programs and data related to the basic operation of the virtual machine 1-07, and the like.
[0033] The RAM 2-03 has an area for storing computer programs and data loaded from the internal storage 2-02, data received from an external device via the communication interface 2-05, etc. The RAM 2-03 also has a work area used when the CPU 2-01 executes various processes. In this way, the RAM 2-03 can provide various areas (storage regions) as appropriate.
[0034] The interface 2-04 is an interface including a display unit for displaying the processing results by the CPU 2-01 as images and characters, and an operation unit operated by the user to perform various operation inputs. The display unit (display device) includes an LCD screen and a touch panel screen. The operation unit includes user interfaces such as a keyboard, a mouse, and a touch panel screen.
[0035] The communication interface 2-05 is an interface for performing data communication with an external device, and may be, for example, a network interface compatible with Ethernet.
[0036] Note that the configuration shown in Fig. 2(A) is merely one example of a configuration applicable to the virtual machine 1-07, and is not intended to be limited to the configuration shown in Fig. 2(A). For example, in the configuration shown in Fig. 2(A), a memory device may be further connected to the bus 2-06. Examples of memory devices include a hard disk drive, a USB memory, a magnetic card, an optical card, an IC card, a memory card, and a drive device.
[0037] The virtual machine 1-07 can be configured by so-called virtualization technology, and various resources constituting a computer system can be organized into logical units independent of the physical configuration. That is, it is possible to configure the virtual machine 1-07 by integrating multiple resources, or to divide one resource and configure one of the divided resources as the virtual machine 1-07. The virtual machine 1-07 can also be configured using at least a portion of multiple resources (which can be configured by multiple devices) of an information processing system constituting a cloud.
[0038] 2B is a diagram showing the software configuration of a virtual machine that operates in the cloud browser system. As shown in FIG. 2B, the virtual machine 1-07 includes, as software modules, a browser processing unit 2-50 and a NW control unit 2-54.
[0039] The browser processing unit 2-50 is a module that handles all processing related to the browser executed on the cloud side, and is a main part of the cloud browser system 1-00. The browser processing unit 2-50 includes an overall control unit 2-51, a browser engine 2-52, and a drawing control unit 2-53.
[0040] The overall control unit 2-51 is a module that controls the entire browser processing unit 2-50 that operates on the virtual machine 1-07. When a user operates the image forming device 1-01 to input a request to view a Web page that the user wants to view, the URL of the Web page is transmitted from the image forming device 1-01 to the image generation server 1-20 via the Proxy 1-04. The overall control unit 2-51 has a role of accepting various requests sent from the image forming device 1-01 in a lump. It also has a role of appropriately distributing the accepted requests to a browser engine 2-52 and a drawing control unit 2-53, which will be described later.
[0041] The browser engine 2-52 accesses a web page provided by the web page server 1-05 shown in FIG. 1 via the NW control unit 2-54 described later based on the URL passed from the overall control unit 2-51, and acquires the web content. The browser engine 2-52 includes an HTTP client function required to acquire the web content. The browser engine 2-52 then analyzes the acquired web content, and when the analysis of the web content is completed, requests a rendering process from the drawing control unit 2-53 described later.
[0042] The rendering control unit 2-53 has a role of rendering Web content based on a rendering request from the browser engine 2-52. It also has a role of returning the rendering result to the image forming device 1-01 or the like that is the request source of the URL via the NW control unit 2-54 described later. At this time, the storage 1-09 may be used as an area for storing the rendering result, and the rendering control unit 2-53 may transfer the image data stored there.
[0043] The NW control unit 2-54 is a module that mediates communication upon receiving an access request to the outside from the overall control unit 2-51, the browser engine 2-52, and the drawing control unit 2-53. Examples of the outside that makes the access request include the image forming device 1-01 and the Web page server 1-05. The NW control unit 2-54 also includes a protocol stack for HTTP communication required to access the Web page server 1-05. When the NW control unit 2-54 actually performs communication, it controls the communication interface 2-05 shown in FIG. 2(A) to realize communication with the image forming device 1-01 and the Web page server 1-05.
[0044] <Image forming device> 3A is a diagram showing the hardware configuration of an image forming device that operates in a cloud browser system. The image forming device 1-01 includes a controller unit 3-00, an operation unit 3-12, a USB storage 3-14, a scanner 3-70, and a printer 3-95. The controller unit 3-00 is connected to the scanner 3-70, which is an image input device, the printer 3-95, which is an image output device, and the operation unit 3-12.
[0045] The operation unit 3-12 is an operation unit that displays information to a user and accepts input from the user. The operation unit 3-12 is configured, for example, with a display, a touch panel sensor, hard keys, etc. In this embodiment, the shape and size of the display of the operation unit 3-12 are different for each of the image forming apparatuses 1-01, 1-02, and 1-03.
[0046] The USB storage 3-14 is an external storage device that stores data and is detachable from the USB host I / F 3-13.
[0047] The scanner 3-70 is an image reading unit (image reading device, image input device) that reads an image from a document.
[0048] The printer 3-95 is an image forming unit (image forming device, image output device) that forms an image on a sheet (paper).
[0049] The controller unit 3-00 is a control unit having a configuration for performing various controls in the image forming apparatus 1-01. For example, the controller unit 3-00 performs control for realizing a copy function for printing out image data read by the scanner 3-70 by the printer 3-95.
[0050] The controller unit 3-00 includes a CPU 3-01, a RAM 3-02, a ROM 3-03, a storage 3-04, and an image path I / F 3-05. These components are connected to each other so as to be able to communicate with each other via a system bus 3-07.
[0051] The controller unit 3-00 also includes an operation unit I / F 3-06, a network I / F 3-10, a USB host I / F 3-13, an RTC 3-15, a device I / F 3-20, a scanner image processing unit 3-80, and a printer image processing unit 3-90. These components are communicatively connected via an image path I / F 3-05 and an image path.
[0052] The CPU 3-01 starts up an operating system (OS) using a boot program stored in the ROM 3-03. The CPU 3-01 executes a program stored in the storage 3-04 on this OS, thereby executing various processes.
[0053] The RAM 3-02 is used as a working area for the CPU 3-01. The RAM 3-02 provides a working area as well as an image memory area for temporarily storing image data.
[0054] The storage 3-04 stores programs and image data. The storage 3-04 may be an HDD, SSD, or eMMC.
[0055] The CPU 3-01 is connected to the ROM 3-03, the RAM 3-02, an operation unit I / F (operation unit interface) 3-06, and a network I / F (network interface) 3-10 via a system bus 3-07. Also connected are a USB host I / F 3-13 and an image bus I / F (image bus interface) 3-05.
[0056] The operation unit I / F 3-06 is an interface with the operation unit 3-12, and outputs image data to be displayed on the operation unit 3-12 to the operation unit 3-12. The operation unit I / F 3-06 also sends information input by a user on the operation unit 3-12 to the CPU 3-01.
[0057] The network I / F 3-10 is an interface for connecting the image forming apparatus to a LAN.
[0058] The USB host I / F 3-13 is an interface unit that communicates with the USB storage 3-14. The USB host I / F 3-13 also functions as an output unit for storing data stored in the storage 3-04 in the USB storage 3-14. The USB host I / F 3-13 also inputs data stored in the USB storage 3-14 and transmits it to the CPU 3-01.
[0059] The USB storage 3-14 is an external storage device that stores data, and is detachable from the USB host I / F 3-13. A plurality of USB devices including the USB storage 3-14 can be connected to the USB host I / F 3-13.
[0060] The RTC3-15 controls the current time. The time information controlled by the RTC3-15 is used to record the time when a job is submitted, etc.
[0061] The image bus I / F 3-05 is a bus bridge that connects the system bus 3-07 and an image bus 3-08 that transfers image data at high speed and converts the data format.
[0062] The image bus 3-08 is configured by a PCI bus, etc. On the image bus 3-08, a device I / F 3-20, a scanner image processing unit 3-80, and a printer image processing unit 3-90 are provided.
[0063] The device I / F 3-20 is connected to a scanner 3-70 and a printer 3-95, and performs synchronous / asynchronous conversion of image data.
[0064] The scanner image processor 3-80 corrects, processes, and edits the input image data.
[0065] The printer image processor 3-90 performs correction, resolution conversion, etc. on the print output image data in accordance with the printer 3-95.
[0066] FIG. 3B is a diagram showing the software configuration of an image forming apparatus that operates in the cloud browser system.
[0067] Each part indicated by a solid line in Fig. 3(B) is a software module realized by the CPU 3-01 executing a main program loaded into the RAM 3-02. The execution of each module of the main program, which will be described later, is managed and controlled by an OS (Operating System) 3-51.
[0068] The UI control unit 3-52 displays a screen on the operation unit 3-12 and accepts operations from the user via the operation unit I / F 3-06. It also has a function of notifying other modules, receiving drawing instructions from other modules, and controlling screen updating.
[0069] The job execution control unit 3-53 is a module that receives a job execution instruction from the UI control unit 3-52 and controls job processing such as copying, scanning, and printing.
[0070] The NW control unit 3-54 receives a communication request from another module, controls the network I / F 3-10, and controls communication with an external device. Also, upon receiving a notification from an external device, it notifies the other modules of the content of the notification.
[0071] The storage control unit 3-55 holds and manages the setting information, job information, and user data recorded in the storage 3-04. Each module located in the OS hierarchy accesses the storage control unit 3-55 to refer to and set the setting values.
[0072] The browser control unit 3-60 is a submodule included in the OS 3-51, and performs control specific to the cloud browser, which will be described later. The number of submodules included in the OS is arbitrary. As shown in FIG. 3B, the browser control unit 3-60 of this embodiment is composed of at least an image data acquisition unit 3-61, a browser operation unit 3-62, a browser display unit 3-63, a command IF unit 3-64, and a proxy processing unit 3-65.
[0073] The browser operation unit 3-62 has a function of notifying the command IF unit 3-64 of the contents of the user operation upon receiving a notification of the user operation from the UI control unit 3-52.
[0074] The command IF unit 3-64 has a role of controlling the entire browser control unit 3-60. In addition, the command IF unit 3-64 receives a notification from the browser operation unit 3-62 and requests communication with the image generation server 1-20 through the NW control unit 3-54. The communication request at this time may include the notified information. The notified information includes user operations such as text input, link pressing, scrolling, and zooming. For example, text input includes a URL. When a link is pressed, the pressed coordinate on the operation unit 3-12 is included, and when scrolling and zooming, character strings associated with each are included. Furthermore, the command IF unit 3-64 accepts communication from the image generation server 1-20 through the NW control unit 3-54. It processes the accepted content and notifies the image data acquisition unit 3-61 or the browser display unit 3-63.
[0075] The image data acquisition unit 3-61 receives a notification of completion of the rendering result from the command IF unit 3-64. Upon receiving the notification, the image data acquisition unit 3-61 requests the image generation server 1-20 to acquire an image. As described in FIG. 2B, the image acquisition request is transmitted to the drawing control unit 2-53 running on the virtual machine 1-07 constituting the image generation server 1-20, the image is sent from the same module, and the rendering result is returned to the image data acquisition unit 3-61. The image data acquisition unit 3-61 that has received the rendering result transfers the image, which is the rendering result, to the browser display unit 3-63.
[0076] The browser display unit 3-63 receives an image from the image data acquisition unit 3-61 and instructs the UI control unit 3-52 to draw the image, or receives a notification from the command IF unit 3-64 and instructs the UI control unit 3-52 to display a message corresponding to the notification.
[0077] The proxy processing unit 3-65 receives a notification from the browser operation unit 3-62 and requests the storage control unit 3-55 to obtain proxy setting information. If the proxy setting is valid based on the obtained proxy setting information, it requests communication to the Proxy 1-04 via the NW control unit 3-54. It also has a function of receiving a response to the communication request from the NW control unit 3-54 and notifying the browser display unit 3-63 or the command IF unit 3-64 of the result of processing the contents of the response.
[0078] <Operation screen> FIG. 4 is a diagram showing an example of a home screen display displayed on the operation unit 3-12 of the image forming apparatus. A home screen 400 displays a plurality of buttons for allowing a user to instruct the execution of functions related to the image forming apparatus. Button 401 is a button corresponding to the "cloud A" function. Button 402 is a button corresponding to the "cloud B" function. Button 403 is a button corresponding to the cloud browser system 1-00. Button 404 is a button corresponding to the "standard print" function.
[0079] When the user presses the button 403 on the browser, the browser control unit 3-60 shown in FIG. 3(B) is started.
[0080] FIG. 5 is a diagram showing an example of a browser screen.
[0081] As described with reference to FIG. 4, when the browser button 403 is pressed and the browser control unit 3-60 is started, a browser screen 500 as shown in FIG. 5 is displayed on the operation unit 3-12 of the image forming apparatus 1-01 or the like.
[0082] The browser screen 500 includes a back button 501, a forward button 502, an address bar 503, and a settings button 504. Also, below these, there is a content area 505 that displays the rendering results of Web content. The functions of these are the same as those of existing browsers.
[0083] The browser control unit 3-60 is configured so that nothing is displayed in the content area 505 from when it is started until a URL is input. Note that, like existing browsers, it may be possible to register a default URL in an item in the address bar 503, and to display the result of rendering the Web content of that URL immediately after startup. Fig. 5 shows an example in which the result of rendering some Web content obtained from a Web page indicated by the URL "https: / / ***.***.***.*** / " is displayed.
[0084] <Control> FIG. 10 is a flowchart showing the control of the cloud browser system. In FIG. 10, the process surrounded by S1000 in FIG. 9 will be described in detail. "S9XX" in FIG. 10 indicates information of the corresponding part in FIG. 9. Each process performed by the browser control unit in FIG. 10 is realized by CPU3-01 executing a program expanded in RAM3-02. Each process performed by virtual machine 1-07 in FIG. 10 is realized by CPU2-01 executing a program expanded in RAM2-03. Each process performed by web page server 1-05 in FIG. 10 is realized by CPU (not shown) executing a program expanded in RAM (not shown).
[0085] In S1001, the browser control unit 3-60 executes processing for a rendering request to the virtual machine 1-07. Here, the rendering request includes URL information indicating the location of the Web content to be displayed, as described above, and device information of the image forming apparatus 1-01. An example of device information is screen size information of the operation unit 3-12 of the image forming apparatus 1-01, such as information 803 in Fig. 8, and screen type information for identifying the operation unit 3-12 of the image forming apparatus 1-01, such as information 805 in Fig. 8.
[0086] In S1002, the Virtual Machine 1-07 judges whether or not a rendering request has been received. If it is judged that a rendering request has not been received (NO), the Virtual Machine 1-07 returns to S1002 and repeats the process.
[0087] If it is determined that a rendering request has been received (YES), the virtual machine 1-07 advances the process to S1003.
[0088] In S1003, the virtual machine 1-07 checks the device information from the information included in the rendering request.
[0089] In S1004, the virtual machine 1-07 makes a Web content acquisition request for the URL information included in the rendering request received in S1002.
[0090] In S1015, the Web page server 1-05 judges whether or not a Web content acquisition request has been received from the virtual machine 1-07. If it is judged that a Web content acquisition request has not been received (NO), the Web page server 1-05 returns to S1015 and repeats the process.
[0091] If it is determined that a Web content acquisition request has been received (YES), the Web page server 1-05 advances the process to S1016.
[0092] In S1016, the Web page server 1-05 transmits the Web content corresponding to the Web content acquisition request to the virtual machine 1-07, and ends the process.
[0093] In S1005, the virtual machine 1-07 acquires the Web content from the Web page server 1-05 and advances the process to S1006.
[0094] In S1006, the virtual machine 1-07 performs rendering in S1006 so that the acquired Web content is displayed appropriately on the operation unit 3-12 based on the device information confirmed in S1003. For example, when screen size information (screen resolution information) of 200×120 (pixels) is acquired as device information, rendering is performed so that the display size, character size, and resolution correspond to the screen size information of 200×120. On the other hand, when screen size information of 400×240 is acquired as device information, rendering is performed so that the display size, character size, and resolution correspond to the screen size information of 200×120. Here, the display size of the rendered image when the screen size information is 400×240 is larger than the display size of the rendered image when the screen size information is 200×120. The character size of the rendered image when the screen size information is 400×240 is larger than the character size of the rendered image when the screen size information is 200×120. The resolution of the rendered image when the screen size information is 400×240 is higher than the resolution of the rendered image when the screen size information is 200×120.
[0095] In S1007, the virtual machine 1-07 generates and stores a rendering result image. In S1008, the virtual machine 1-07 notifies the browser control unit 3-60 of URL information indicating the storage destination of the rendering result image.
[0096] In S1011, the browser control unit 3-60 judges whether or not the storage destination URL information of the rendering result image has been received from the virtual machine 1-07. If it is judged that the storage destination URL information of the rendering result image has not been received (NO), the browser control unit 3-60 returns to S1011 and repeats the process. If it is judged that the storage destination URL information of the rendering result image has been received (YES), the browser control unit 3-60 advances the process to S1012.
[0097] In S1012, the browser control unit 3-60 sends an image data acquisition request to the virtual machine 1-07.
[0098] In S1009, the virtual machine 1-07 judges whether or not an image data acquisition request has been received from the browser control unit 3-60. If it is judged that an image data acquisition request has not been received (NO), the virtual machine 1-07 returns to S1009 and repeats the process. If it is judged that an image data acquisition request has been received (YES), the virtual machine 1-07 transmits image data to the browser control unit 3-60 in S1010 and ends the process.
[0099] In S1013, the browser control unit 3-60 judges whether image data has been received from the virtual machine 1-07. If it is judged that image data has not been received (NO), the browser control unit 3-60 returns to S1013 and repeats the process. If it is judged that image data has been received (YES), the browser control unit 3-60 advances the process to S1014.
[0100] In S1014, the browser control unit 3-60 causes the received image data to be displayed on the display of the operation unit 3-12, and the process ends.
[0101] Example 2 In the first embodiment, an example is described in which the rendering content is adjusted based on device information of the image forming device 1-01, which is a display device, to improve the display on the screen. In the second embodiment, an example is described in which the acquired content of Web content is adjusted based on device information of the image forming device 1-01, which is a display device, to improve the display on the screen. Note that the components in the system of the second embodiment are the same as those of the first embodiment, except for the characteristic parts. Therefore, the same components are denoted by the same reference numerals, and detailed descriptions thereof will be omitted.
[0102] <System usage sequence> In the cloud browser system 1-00 of this embodiment, when the image generation server 1-20 acquires a Web page, the image generation server 1-20 acquires contents suited to the display environment of the image forming apparatuses 1-01, 1-02, and 1-03 that display the rendering results.
[0103] Fig. 11(A) is a diagram showing an example of content display for a small display, Fig. 11(B) is a diagram showing an example of content display for a large display, and Fig. 11(C) is a diagram showing an example of display in which improvement is desired.
[0104] Assume that a virtual machine acquires and renders content for a large display (content for a PC) as shown in screen 1102 in FIG. 11(B). When this rendering image is provided to a device having a large display, it is displayed as shown in screen 1102, which is appropriate. On the other hand, when this rendering image is provided to a device having a small display, it is displayed as shown in screen 1103 in FIG. 11(C), which is not appropriate. In a device having a small display, it is desirable to display the content as shown in screen 1101 in FIG. 11(A). Therefore, the virtual machine 1-07 of this embodiment acquires web content using user agent information that matches the display size of the device that displays the web content. With this configuration, even if the display environments of the devices used to browse web pages are different from one another, a web browsing environment with excellent operability can be provided.
[0105] FIG. 6 is a diagram showing an example of a sequence in which the image generating server 1-20 selects a User Agent from the received information and makes a request to acquire Web content when it receives a rendering request from the browser control unit 3-60. In FIG. 6, a User Agent is selected based on the device information (specific information) of the image forming apparatus 1-01 acquired from the browser control unit 3-60, and a request to acquire Web content is made. In this way, content suitable for the screen size of the operation unit 3-12 of the image forming apparatus 1-01 or the like is acquired. Here, the User Agent is information included in the HTTP request sent to the server. The User Agent includes system information such as the OS of the request source and the type of browser. The server side determines the terminal based on the information of the User Agent and switches the content to be generated depending on the terminal. For example, the server side provides content with a layout that makes it easy to operate by touch for a vertically long terminal with a small screen size such as a mobile terminal, and provides content with a layout that is easy to view for a terminal with a large screen size.
[0106] In S601, when a user issues an instruction to execute a cloud browser function, the UI control unit 3-52 of the image forming apparatus 1-01 receives the instruction.
[0107] In step S602, when the UI control unit 3-52 issues a start request, the browser control unit 3-60 starts up.
[0108] In S603, the browser control unit 3-60 requests the virtual machine 1-07 to render a Web page. The rendering request includes URL information indicating the location of the Web content to be displayed and device information of the image forming apparatus 1-01. Examples of device information include screen size information of the operation unit 3-12 of the image forming apparatus 1-01 and screen type information for identifying the operation unit 3-12. The URL information indicating the location of the Web content is a preset URL or URL information input by the user.
[0109] In S604, the browser control unit 3-60 refers to the storage 1-09 using the acquired device information.
[0110] In S605, the browser control unit 3-60 obtains User Agent information corresponding to the obtained device information.
[0111] In S606, the virtual machine 1-07 makes a request to acquire Web content to the Web page server 1-05. This request uses the URL information acquired in S603 and the User Agent information acquired in S605.
[0112] In S607, the Web page server 1-05 transmits the Web content in response to the Web content acquisition request, where the Web page server 1-05 provides the content corresponding to the User Agent information included in the acquisition request.
[0113] In S608, the virtual machine 1-07 renders the Web content.
[0114] In S609, the virtual machine 1-07 notifies the browser control unit 3-60 of URL information indicating the location of the image data of the rendering result.
[0115] In S610, the browser control unit 3-60 makes a request to acquire image data of the rendering result using the URL information received in S607.
[0116] In S611, the Web page server 1-05 transmits image data in response to the image data acquisition request.
[0117] In S612, the browser control unit 3-60 displays the image data received in S609.
[0118] <Control> FIG. 7 is a flowchart showing the control of the cloud browser system. In FIG. 7, the process surrounded by S700 in FIG. 6 will be described in detail. "S6XX" in FIG. 7 indicates information of the corresponding part in FIG. 6. Note that each process performed by the browser control unit in FIG. 7 is realized by CPU3-01 executing a program expanded in RAM3-02. Each process performed by virtual machine 1-07 in FIG. 7 is realized by CPU2-01 executing a program expanded in RAM2-03. Each process performed by web page server 1-05 in FIG. 7 is realized by CPU (not shown) executing a program expanded in RAM (not shown).
[0119] In S701, the browser control unit 3-60 executes processing for a rendering request to the virtual machine 1-07. The rendering request includes URL information indicating the location of the Web content to be displayed and device information of the image forming device 1-01. The device information includes screen size information (resolution information, aspect ratio information) of the display of the image forming device 1-01, or information for identifying this screen size. For example, the screen size (resolution, aspect ratio) can be identified by using identification information such as the model number of the operation unit 3-12 or identification information such as the model number of the image forming device 1-01.
[0120] In S702, the virtual machine 1-07 judges whether or not a rendering request has been received. If it is judged that a rendering request has not been received (NO), the virtual machine 1-07 returns to S702 and repeats the process. If it is judged in S702 that a rendering request has been received, the virtual machine 1-07 advances the process to S703.
[0121] In S703, the virtual machine 1-07 checks the device information from the information included in the rendering request.
[0122] In S704, the virtual machine 1-07 refers to the User Agent information management table stored in the storage 1-09. An example of the User Agent information management table is shown in FIG. 8. The information management table 801 in FIG. 8 is an information table in which the screen size information 803 of the operation unit 3-12 of the image forming apparatus 1-01 and the information of the User Agent 804 are linked. In this embodiment, the information of the User Agent for acquiring Web content suitable for the screen size of the operation unit 3-12 of the screen forming apparatus 1-01 is defined and stored in advance. Then, the corresponding User Agent information can be acquired using the device information included in the rendering request. Note that, although an example of the information management table in which the screen size information and the User Agent are linked is shown here, the information management table may be a table of another format. For example, as shown as the information management table 802 in FIG. 8B, a table in which the screen type information 805 for identifying the operation unit 3-12 of the image forming apparatus 1-01 and the User Agent 804 are associated with each other may be used. Also, a table in which the identification information of the image forming apparatus 1-01 is linked with the User Agent may be used.
[0123] In S705, the virtual machine 1-07 uses the device information and the information management table 801 to identify a User Agent for acquiring the Web content most suitable for viewing on the image forming apparatus 1-01.
[0124] In S706, the virtual machine 1-07 makes a Web content acquisition request for the URL information included in the rendering request received in S702. In the Web content acquisition request, information specifying the User Agent identified in S705 is notified.
[0125] In S717, the Web page server 1-05 judges whether or not a Web content acquisition request has been received from the virtual machine 1-07. If it is judged that a Web content acquisition request has not been received (NO), the Web page server 1-05 returns to S717 and repeats the process.
[0126] If it is determined that a Web content acquisition request has been received (YES), the Web page server 1-05 advances the process to S718.
[0127] In S718, the Web page server 1-05 transmits the Web content corresponding to the User Agent included in the Web content acquisition request to the virtual machine 1-07, and ends the process.
[0128] For example, suppose that a User Agent corresponding to screen size information (screen resolution information) of 120 x 200 (pixels) is used as the User Agent used for the Web content acquisition request. In this case, Web content with a display size, character size, resolution, and layout suitable for the screen size information of 120 x 200 is acquired. Suppose that a User Agent corresponding to screen size information of 400 x 240 is used as the User Agent used for the Web content acquisition request. In this case, Web content with a display size, character size, resolution, and layout suitable for the screen size information of 400 x 240 is acquired.
[0129] Here, the display size of the Web content acquired using a User Agent corresponding to screen size information of 400×240 is larger than the display size of the Web content acquired using a User Agent corresponding to screen size information of 120×200. The character size of the Web content acquired using a User Agent corresponding to screen size information of 400×240 is larger than the character size of the Web content acquired using a User Agent corresponding to screen size information of 120×200. The resolution of the Web content acquired using a User Agent corresponding to screen size information of 400×240 is larger than the resolution of the Web content acquired using a User Agent corresponding to screen size information of 120×200. The layout of the Web content acquired using a User Agent corresponding to screen size information of 400×240 is different from the layout of the Web content acquired using a User Agent corresponding to screen size information of 120×200.
[0130] In S707, the virtual machine 1-07 acquires the Web content from the Web page server 1-05 and proceeds to S708.
[0131] In S708, the virtual machine 1-07 performs rendering based on the acquired Web content.
[0132] In S709, the virtual machine 1-07 generates and stores a rendering result image. In S710, the virtual machine 1-07 notifies the browser control unit 3-60 of URL information indicating the storage destination of the rendering result image.
[0133] In S713, the browser control unit 3-60 judges whether or not the storage destination URL information of the rendering result image has been received from the virtual machine 1-07. If it is judged that the storage destination URL information of the rendering result image has not been received (NO), the browser control unit 3-60 returns to S713 and repeats the process. If it is judged that the storage destination URL information of the rendering result image has been received (YES), the browser control unit 3-60 advances the process to S714.
[0134] In S714, the browser control unit 3-60 sends an image data acquisition request to the virtual machine 1-07.
[0135] In S711, the virtual machine 1-07 judges whether or not an image data acquisition request has been received from the browser control unit 3-60. If it is judged that an image data acquisition request has not been received (NO), the virtual machine 1-07 returns to S711 and repeats the process. If it is judged that an image data acquisition request has been received (YES), the virtual machine 1-07 advances the process to S712.
[0136] In S712, the virtual machine 1-07 transmits the image data to the browser control unit 3-60 and ends the process.
[0137] In S715, the browser control unit 3-60 judges whether image data has been received from the virtual machine 1-07. If it is judged that image data has not been received (NO), the browser control unit 3-60 returns to S715 and repeats the process. If it is judged that image data has been received (YES), the browser control unit 3-60 advances the process to S716.
[0138] In S716, the browser control unit 3-60 causes the received image data to be displayed on the display of the operation unit 3-12, and the process ends.
[0139] (Other Examples) The present invention is not limited to the above-described embodiments, and various modifications (including organic combinations of the embodiments) are possible based on the spirit and scope of the present invention, and these are not excluded from the scope of the present invention.
[0140] The present invention can also be realized by a process in which a program for realizing the functions of the above-mentioned first embodiment or more is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program. Also, the present invention can be realized by a circuit (e.g., ASIC) for realizing one or more functions.
[0141] The present invention may be applied to a system consisting of multiple devices, or to an apparatus consisting of a single device. For example, a part of a software module may be configured to be executed on an external server, and the function may be realized by obtaining the results of processing on the external server.
[0142] In the second embodiment, device information is taken as an example of information for identifying a user agent. However, the information transmitted from the image forming apparatus 1-01 to the virtual machine 1-07 may be the user agent itself.
[0143] The features of the first embodiment and the second embodiment may be combined. That is, the Web content may be acquired using a user agent corresponding to the screen size of the image forming apparatus 1-01, and the Web content may be rendered under conditions corresponding to the screen size.
[0144] The meanings of the abbreviations used in the examples are as follows:
[0145] ASIC stands for Application Specific Integrated Circuit.
[0146] CPU stands for Central Processing Unit.
[0147] EMMC stands for embedded MultiMediaCard.
[0148] FAX stands for Facsimile.
[0149] HDD stands for Hard Disk Drive.
[0150] HTML stands for Hyper Text Markup Language.
[0151] HTTP stands for HyperText Transfer Protocol.
[0152] HTTPS stands for Hypertext Transfer Protocol Secure.
[0153] IC stands for Integrated Circuit. LAN stands for Local Area Network.
[0154] MFP stands for Multi Function Peripheral.
[0155] OS stands for Operating System.
[0156] PC stands for Personal Computer.
[0157] RAM stands for Random-Access Memory.
[0158] ROM stands for Read Only Memory.
[0159] RTC stands for Real-Time Clock.
[0160] SFP stands for Single Function Peripheral.
[0161] SSD stands for Solid State Drive.
[0162] UI stands for User Interface.
[0163] URL stands for Uniform Resource Locator.
[0164] USB stands for Universal Serial Bus. [Explanation of symbols]
[0165] 1-00 Cloud Browser System (Web Browsing System) 1-01 Image forming device (communication terminal) 1-05 Web page server 1-20 Image generation server
Claims
1. A web browsing system having a server that renders a web page and a communication terminal that displays the web page based on the rendering result, The communication terminal means for transmitting address information of a web page and specific information for specifying a display environment of the communication terminal to the server; and means for receiving from the server a rendered image of the web page that has been rendered based on the rendering conditions specified based on the specified information, The server means for receiving the address information and the identification information from the communication terminal; a means for accessing the web page based on the address information, generating a rendering image from the web page based on the rendering conditions specified based on the specification information, and transmitting the rendering image to the communication terminal; A web browsing system comprising:
2. 2. The web browsing system according to claim 1, wherein the specific information is screen size information of the communication terminal.
3. 2. The web browsing system according to claim 1, wherein the specific information is identification information of a display device provided in the communication terminal.
4. 2. The web browsing system according to claim 1, wherein the specific information is identification information of the communication terminal.
5. a further communication terminal that communicates with the server and displays the web page; The web browsing system according to claim 1, characterized in that the rendering result of the web page transmitted from the server to the further communication terminal has a larger screen size than the rendering result of the web page transmitted from the server to the communication terminal.
6. a further communication terminal that communicates with the server and displays the web page; The web browsing system according to claim 1, characterized in that the rendering result of the web page transmitted from the server to the further communication terminal has larger characters than the rendering result of the web page transmitted from the server to the communication terminal.
7. a further communication terminal that communicates with the server and displays the web page; 2. The web browsing system according to claim 1, wherein the rendering result of the web page transmitted from the server to the further communication terminal has a higher resolution than the rendering result of the web page transmitted from the server to the communication terminal.
8. The server has a means for identifying a user agent based on the identification information, 2. The web browsing system according to claim 1, wherein the web page is accessed based on the address information and the user agent.
9. 2. The web browsing system according to claim 1, wherein the communication terminal is an image processing apparatus having an image forming unit that forms an image on a sheet or an image reading unit that reads an image from a document.
10. A communication terminal that displays a web page based on a rendering result received from a server that renders the web page, a transmitting means for transmitting to the server address information of a web page to be accessed by the server and specification information for specifying the display environment of the communication terminal; a receiving means for receiving from the server a rendering image of the web page that has been rendered based on the rendering conditions specified based on the specific information;
11. The server accesses the web page based on the address information and a user agent identified based on the identification information, The communication terminal according to claim 10, characterized in that the receiving means receives the rendering image generated by the server from the web page obtained by access based on the address information and the user agent identified based on the identification information.
12. A control method in a communication terminal that displays a web page based on a rendering result received from a server that renders the web page, comprising: a transmitting step of transmitting to the server address information of a web page to be accessed by the server and specification information for specifying a display environment of the communication terminal; a receiving step of receiving from the server a rendered image of the web page that has been rendered based on the rendering conditions specified based on the specific information.