System, method, edge server, font delivery server, and program

The system addresses the challenge of displaying diverse fonts by caching them at the edge server, improving user experience and reducing server load through direct font delivery to user terminals.

JP2026052569AActive Publication Date: 2026-03-24MORISAWA CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-11
Publication Date
2026-03-24

AI Technical Summary

Technical Problem

Existing font distribution systems face challenges in enhancing user experience and response speed when displaying diverse fonts on web pages, particularly when the user's terminal lacks the necessary font files.

Method used

A system comprising a font distribution server, user's terminal, edge server, and origin server, where the edge server caches font information from the font distribution server, allowing direct delivery to the user's terminal without additional queries, thereby improving display speed and reducing processing load.

Benefits of technology

The system enhances user experience by accelerating web page display with diverse fonts and reduces the load on the font distribution server by caching fonts at the edge server, ensuring faster and more efficient font delivery.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026052569000001_ABST
    Figure 2026052569000001_ABST
Patent Text Reader

Abstract

This technology provides a further enhanced experience for browsing web pages with diverse designs using fonts managed by a font distribution system. [Solution] The edge server's processor, in response to a user's terminal access to a web page that uses a specific font managed by the font distribution server, performs the following steps: requesting the font used on the web page from the font distribution server if the edge server does not have the font used on the web page; receiving and storing the specific font from the font distribution server; and, in response to a user's terminal access to a web page that uses a specific font managed by the font distribution server, if the edge server has the information for the specific font, sending the specific font to the user's terminal without requesting the font from the font distribution server, thereby allowing the user's terminal browser to view the web page that uses the specific font.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a system, a method, an edge server, and a program.

Background Art

[0002] In order to further improve the appearance and diversification of designs, various fonts have been developed and provided. Among such fonts, some are provided for a fee. For example, on a website, there may be provided a web page that adopts a font provided by a font producer.

[0003] There is a technology that enables content to be viewed using a font provided by a font producer even if the user's terminal does not have the font file. Patent Document 1 mainly describes "a font distribution system and a font distribution method for distributing a font to a user terminal via a communication line so that characters on a web page such as an HTML file viewed using a web browser can be viewed in a font not owned by the user terminal."

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] According to the technology of Patent Document 1, when displaying a paid font distributed by a font distribution system on a web page, in order to specify the necessary font file as a subset font and distribute it from the font distribution system, the response speed of the web page display can be increased, and the experience of a viewer of a website viewing the web page can be improved.

[0006] There is a need to further improve the user experience of browsing web pages with diverse designs using fonts managed by font distribution systems.

[0007] The purpose of this disclosure is to provide technology that further enhances the experience of browsing web pages with diverse designs using fonts managed by a font distribution system. [Means for solving the problem]

[0008] To solve the above problems, one aspect of the present disclosure is a system comprising a font distribution server, a user's terminal, an edge server, and an origin server. The font distribution server manages information on fonts available based on a contract for the use of the fonts, and distributes font information based on the contract for the use of the fonts it manages. The origin server holds information on the content of the website's web pages and responds to requests from the edge servers with the content. The edge server retrieves and holds content information from the origin server and provides the content information it holds to the user's terminal in response to access from the user's terminal browsing the website. The edge server's processor, in response to a user's terminal access to a web page that uses a specific font managed by the font distribution server, performs the following steps: requesting the font from the font distribution server if the edge server does not have information on the specific font used on the web page; receiving and storing the specific font from the font distribution server; and, in response to a user's terminal access to a web page that uses a specific font managed by the font distribution server, if the edge server has information on the specific font, sending the specific font to the user's terminal without requesting the font from the font distribution server, thereby allowing the user's terminal browser to view the web page that uses the specific font. [Effects of the Invention]

[0009] According to this disclosure, if the edge server holds information about the fonts distributed by the font distribution server, the font information can be delivered to the user's terminal without querying the font distribution server, thereby improving the display speed of web pages on the user's terminal. This further enhances the experience of browsing web pages with diverse designs using fonts managed by the font distribution system. In addition, by having the edge server send the fonts, the processing load of delivering font information from the font distribution server to the user's terminal can be reduced. [Brief explanation of the drawing]

[0010] [Figure 1] Figure 1 shows the configuration of System 1. [Figure 2] Figure 2 shows the configuration of the font distribution system server 20. [Figure 3] Figure 3 shows the configuration of the edge server 30. [Figure 4] Figure 4 shows the configuration of terminal 10. [Figure 5] Figure 5 shows the data structure of the user database 211. [Figure 6] Figure 6 shows the data structure of the contract database 212. [Figure 7] Figure 7 shows the data structure of the pricing plan database 213. [Figure 8] Figure 8 shows the data structure of the usage management database 214. [Figure 9] Figure 9 shows the process flow for generating embedding information to be embedded in the website's source code, based on a contract for using fonts managed by the font distribution system server 20. [Figure 10]Figure 10 shows the process flow for changing the entity that has a contract to use fonts managed by the font distribution system server 20, without changing the information used for embedding. [Figure 11] Figure 11 shows the process flow for controlling the edge server 30 so that it does not provide fonts managed by the font distribution system server 20 unless the domain is one that has been registered in advance. [Figure 12] Figure 12 shows the process flow in which the edge server 30 pre-divides and stores font files managed by the font distribution system server 20 as blocks, and then provides the font files stored as blocks in response to website access. [Figure 13] Figure 13 shows the process flow in the edge server 30, which aggregates font usage, determines its compatibility with the contracted pricing plan, and sends the aggregated font usage results to the font distribution system server 20. [Figure 14] Figure 14 shows the flow of processes in the font distribution system server 20, including the billing of contracts based on font usage and the payment of compensation to font creators. [Figure 15] Figure 15 shows the processing flow for displaying the usage status of managed fonts on the font distribution system server 20. [Figure 16] Figure 16 is an example of an operation screen that presents the contract details for the font distribution system server 20 and the information to be embedded in the website's source code, for the production staff responsible for creating the website. [Figure 17] Figure 17 shows an example of an operation screen for changing the contracting party for the services provided by the font distribution system server 20, while keeping the embedded information unchanged. [Figure 18] Figure 18 shows an example of an operation screen that displays the aggregated results of font usage for subscribers of the font distribution system's server 20 service. [Figure 19]FIG. 19 is an example screen of an operation screen for displaying the usage status of fonts managed by server 20 of the font distribution system.

Embodiments for Carrying Out the Invention

[0011] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In all the drawings for describing the embodiments, the same reference numerals are assigned to common components, and repeated descriptions are omitted. Note that the following embodiments do not unduly limit the content of the present disclosure described in the claims. Also, not all the components shown in the embodiments are essential components of the present disclosure. Further, each drawing is a schematic diagram and is not necessarily drawn precisely.

[0012] In the following description, a "processor" is one or more processors. At least one processor is typically a microprocessor such as a CPU (Central Processing Unit), but may also be another type of processor such as a GPU (Graphics Processing Unit). At least one processor may be single-core or multi-core.

[0013] Also, at least one processor may be a processor in a broad sense such as a hardware circuit (for example, an FPGA (Field-Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit)) that performs part or all of the processing.

[0014] In the following description, an expression such as "xxx table" may be used to describe information from which an output can be obtained for an input. This information may be data of any structure or a learning model such as a neural network that generates an output for an input. Therefore, "xxx table" can be referred to as "xxx information".

[0015] Furthermore, in the following explanation, the structure of each table is just an example; one table may be divided into two or more tables, or all or part of two or more tables may constitute a single table.

[0016] Furthermore, in the following explanation, the subject of the process may sometimes be "program," but since a program is executed by a processor and performs defined processes using the memory and / or interface as appropriate, the subject of the process may also be the processor (or a device such as a controller that has that processor).

[0017] The program may be installed on a device such as a computer, or it may reside on a program distribution server or a computer-readable (e.g., non-temporary) recording medium. Furthermore, in the following description, two or more programs may be implemented as a single program, or one program may be implemented as two or more programs.

[0018] Furthermore, in the following explanation, identification numbers are used as identification information for various objects, but other types of identification information (for example, identifiers that include letters or symbols) may also be used.

[0019] Furthermore, in the following explanations, when describing similar elements without distinction, a reference code (or a common code among reference codes) may be used, and when describing similar elements with distinction, the element's identification number (or reference code) may be used.

[0020] Furthermore, in the following explanation, only control lines and information lines deemed necessary for the explanation are shown, and not all control lines and information lines in the product are necessarily shown. All components may be interconnected.

[0021] <Outline of the Embodiment> <1.1 System Configuration Diagram> Figure 1 shows the configuration of System 1.

[0022] The system 1 shown in Figure 1 includes a font distribution system server 20, terminals 10, an origin server 40, an edge server 30, and a font creation tool 50. Regarding terminal 10, the illustrated example shows other examples of terminal 10, including a website visitor's terminal 10A, a font creator's user's terminal 10B, a website operator's user's terminal 10C, and a website production staff member's terminal 10D. These devices communicate with each other via the network 80.

[0023] The font distribution system's server 20 manages information on fonts available based on contracts for using the fonts, and is a device that provides a service to distribute font information based on contracts for using the fonts it manages. As font information, server 20 manages character typefaces formed with typefaces such as Mincho and Gothic, or font programs for reproducing characters with typefaces such as Mincho and Gothic. Server 20 receives requests that include at least information indicating the characters on a web page and information indicating the typeface name of the characters, and distributes information such as font files for displaying the fonts.

[0024] In this embodiment, Server 20 describes an example where paid fonts managed by Server 20 are used to display on a website's webpage for viewers to view. In addition, although not generally publicly known, paid fonts managed by Server 20 may also be distributed to documents, videos, etc., managed on storage accessible only to those with viewing privileges.

[0025] The origin server 40 is managed by the website operator and holds content such as text, images, and videos necessary for the website to be displayed in the browser of the user's terminal 10. As described above, the origin server 40 holds information about the content of the website's web pages and responds to requests from the edge server 30 with the content.

[0026] The edge server 30 retrieves and stores content information from the origin server 40, and in response to access from a user's terminal 10A or the like that browsing the website, it provides the stored content information to the user's terminal 10A or the like.

[0027] Font creation tool 50 provides font creators with a tool for creating fonts. Font creation tool 50 outputs font files in various formats, such as PostScript, TrueType, OpenType, SVG, and bitmap fonts, depending on the user's font creation operations.

[0028] In this embodiment, each device (terminal device, server, etc.) can also be considered as an information processing device. That is, the collection of each device can be considered as a single "information processing device," and System 1 may be formed as a collection of multiple devices. The way in which the multiple functions required to realize System 1 according to this embodiment are distributed to one or more hardware can be appropriately determined in view of the processing capacity of each hardware and / or the specifications required for System 1.

[0029] The following outlines the hardware configuration of terminal 10 and server 20. Terminals 10A, 10B, 10C, and 10D may have the same hardware configuration as terminal 10. Edge server 30, origin server 40, and font creation tool 50 may have the same hardware configuration as server 20.

[0030] Terminal 10 is a device operated by the user. Terminal 10 can be implemented, for example, as follows: • Handheld mobile devices such as smartphones and tablets • Stationary PCs (Personal Computers), Laptop PCs • Wearable devices worn by the user (watch-type, glasses-type, etc.) Terminal 10 includes a communication interface (IF) 12, an input device 13, an output device 14, memory 15, storage 16, and a processor 19.

[0031] The communication interface 12 is an interface for inputting and outputting signals so that terminal 10 can communicate with an external device.

[0032] The input device 13 is a device for receiving input operations from the user (for example, a touch panel, touchpad, pointing device such as a mouse, keyboard, etc.).

[0033] The output device 14 is a device (such as a display or speaker) for presenting information to the user.

[0034] Memory 15 is for temporarily storing programs and data processed by programs, etc., and is a volatile memory such as DRAM (Dynamic Random Access Memory).

[0035] Storage 16 is for storing data, and can be, for example, flash memory or an HDD (Hard Disk Drive).

[0036] The processor 19 is hardware for executing the instruction set described in the program, and consists of an arithmetic unit, registers, peripheral circuits, etc.

[0037] The server 20 includes a communication interface 22, an input / output interface 23, memory 25, storage 26, and a processor 29.

[0038] Communication IF22 is an interface for inputting and outputting signals so that the server 20 can communicate with external devices.

[0039] Input / Output IF23 functions as an interface between an input device for receiving user input operations and an output device for presenting information to the user.

[0040] Memory 25 is for temporarily storing programs and data processed by programs, etc., and is a volatile memory such as DRAM (Dynamic Random Access Memory).

[0041] Storage 26 is for storing data, and can be, for example, flash memory or an HDD (Hard Disk Drive).

[0042] The processor 29 is hardware for executing the instruction set described in the program, and consists of an arithmetic unit, registers, peripheral circuits, etc.

[0043] <1.2 Functional configuration of the font distribution system server 20> Figure 2 shows the configuration of the server 20 of the font distribution system. As shown in Figure 2, the server 20 functions as a communication unit 201, a storage unit 202, and a control unit 203.

[0044] The communications unit 201 performs processing to enable the server 20 to communicate with external devices.

[0045] The memory unit 202 stores various databases, such as the user database 211, the contract database 212, the pricing plan database 213, the usage management database 214, and the paid font data file 215.

[0046] User database 211 is a database that manages information about each user who uses the font distribution system's services. Further details will be provided later.

[0047] The contract database 212 is a database that manages the contract status of each contract for using the font distribution system's services. Further details will be provided later.

[0048] Pricing plan database 213 is a database that manages information on pricing plans for using the font distribution system. Further details will be provided later.

[0049] The usage management database 214 is a database that manages the aggregated results of the amount of time that fonts distributed by the font distribution system have been used. Further details will be described later.

[0050] Paid font data file 215 is information about the data file for a paid font managed by the font distribution system.

[0051] The control unit 203 is realized when the processor 29 reads a program stored in the memory unit 202 and executes instructions contained in the program. By operating according to the program, the control unit 203 performs the functions shown as the reception control module 2041, transmission control module 2042, user management module 2043, contract registration module 2044, fraud detection module 2045, usage management module 2046, font usage billing module 2047, and reward granting module 2048.

[0052] The receive control module 2041 controls the process by which the server 20 receives signals from external devices according to a communication protocol.

[0053] The transmission control module 2042 controls the process by which the server 20 transmits signals to external devices according to a communication protocol.

[0054] User Management Module 2043 is a program module that manages information for each user who uses the font distribution system.

[0055] More specifically, the user management module 2043 manages the information of each user by accepting registrations of information for each user, such as font creators, website operators, and website developers, as users of the font distribution system.

[0056] Contract registration module 2044 is a program module that accepts registrations for contracts to use fonts managed by the font distribution system on websites, etc.

[0057] More specifically, the contract registration module 2044 accepts and manages the specification of the font name, the domain on which the font will be used, and the contract start date for paid fonts managed by the font distribution system. When the contract registration module 2044 receives the font and domain specifications from the user, it generates a CSS file for using the font on a website (the information of the paid font is specified within the CSS file). The server 20 manages the generated CSS file in the contract database 212 and also generates and manages in the contract database 212 information for the access destination link so that the link to the generated CSS file is unique. As a result, when the server 20 displays the font on a website, it can determine which contract to use for font distribution based on the access based on the unique link to the CSS file.

[0058] The contract registration module 2044 accepts the specification of domains on which fonts will be used, etc., within the scope of the user's pricing plan (for example, the number of fonts and domains that can be used may differ depending on the pricing plan). Depending on the user's pricing plan, the contract registration module 2044 may display a message prompting the user to change their pricing plan if the fonts cannot be used (for example, if the user is attempting to use fonts in excess of the limits on the number of fonts and domains that can be used as stipulated in the pricing plan).

[0059] The fraud detection module 2045 is a program module that determines whether a request for a font distributed by the font distribution system is legitimate, made by a subscriber, or fraudulent, made by someone who is not a subscriber.

[0060] More specifically, the misuse detection module 2045 can determine which contract is responsible for accessing a CSS file based on a unique link to the CSS file managed in the contract database 212. The misuse detection module 2045 also determines whether the domain using the font in that contract is managed in the contract database 212. If the request for the CSS file comes from a domain not specified in the contract database 212, the misuse detection module 2045 will consider the link tag to the CSS to have been obtained illegally and will not distribute the managed font. This prevents the unauthorized display of paid fonts even if a website illegally obtains a link (link tag) to a CSS file listed on a webpage under a legitimate contract.

[0061] The usage management module 2046 is a program module that aggregates the usage amount of fonts when fonts managed by the font distribution system are used on web pages.

[0062] More specifically, the usage management module 2046 compiles the number of times paid fonts have been delivered to users' devices (the number of views of web pages that use paid fonts) based on the link tags in the CSS files.

[0063] The font usage billing module 2047 is a program module that processes billing for subscribers of contracts managed in the contract database 212, based on the amount of font usage managed by the font distribution system.

[0064] The reward distribution module 2048 is a program module that determines the reward to be given to the font creator based on the amount of use of the fonts managed by the font distribution system (results compiled by the usage management module 2046).

[0065] <1.3 Functional Configuration of Edge Server 30> Figure 3 shows the configuration of the edge server 30. As shown in Figure 3, the edge server 30 functions as a communication unit 301, a storage unit 302, and a control unit 303.

[0066] The communication unit 301 performs processing to enable the edge server 30 to communicate with external devices.

[0067] The memory unit 302 stores various information such as contract information 312, usage information 314, and a block-type paid font data file 315.

[0068] Contract information 312 is contract information (contracting party, fee plan related to the contract) managed in the contract database 212 on the font distribution system server 20 for domains where the edge server 30 holds content. The edge server 30 obtains the information from the contract database 212 held by server 20 by communicating with server 20 and manages it as contract information 312.

[0069] The edge server 30 aggregates font usage (the number of times fonts are delivered to the user's terminal 10, the number of times web pages using fonts are viewed) using the same processing as the usage management module 2046 of the server 20, manages it as usage information 314 described later, and determines whether it meets the usage limit specified in the pricing plan of the contract information 312.

[0070] The edge server 30 refers to the contract information 312 and, using the same processing as the server 20's fraud detection module 2045, determines whether the font request for viewing the web page is legitimate by the subscriber or fraudulent by someone other than the subscriber.

[0071] Usage information 314 is aggregated information that summarizes the number of times a font distributed by the font distribution system was delivered to a user's terminal in response to viewing a website's web page (the number of times a web page containing the font was viewed). Usage information 314 is associated with domain information, and the aggregated information on font usage is stored and sent to server 20.

[0072] The pre-blocked paid font data file 315 is created by pre-dividing the data of the paid font data file 215 on server 20 into multiple blocks. For fonts managed by server 20 of the font distribution system, frequently used character types are prioritized and extracted as blocks. This allows the edge server 30 to deliver the block containing the characters requested by the website visitor's terminal A to terminal 10A. This reduces the font download time at terminal 10A compared to delivering the entire font data file, thereby improving the web page display speed.

[0073] The control unit 303 reads the program stored in the memory unit 202 by the processor of the edge server 30 and executes the instructions contained in the program, thereby performing the functions indicated as the reception control module 3041, transmission control module 3042, content acquisition module 3043, contract information acquisition module 3044, fraudulent use detection module 3045, usage management module 3046, and content provision module 3047.

[0074] The receive control module 3041 controls the process by which the edge server 30 receives signals from external devices according to a communication protocol.

[0075] The transmission control module 3042 controls the process by which the edge server 30 transmits signals to external devices according to a communication protocol.

[0076] The content acquisition module 3043 is a program module that acquires and stores the content that makes up the website from the origin server 40.

[0077] More specifically, the content retrieval module 3043, in response to a website visitor's access to the website, requests the website content from the origin server 40 via the edge server 30 and holds the content received from the origin server 40. When a website visitor accesses the website, if the content is held on the edge server 30, the content retrieval module 3043 responds to the website visitor's browser with the held content without querying the origin server 40. In this way, the edge server 30 functions as a Content Delivery Network (CDN).

[0078] The contract information acquisition module 3044 is a program module that acquires contract information pertaining to the domain of a website from the server 20 when the website uses fonts managed by the font distribution system.

[0079] More specifically, the contract information acquisition module 3044 acquires contract information (information managed in the contract database 212 for each domain) from the server 20 and stores it in the storage unit 302 as contract information 312.

[0080] The fraud detection module 3045 has the same function as the fraud detection module 2045, and is a program module that determines whether a request for fonts distributed by the font distribution system is legitimate by a subscriber or fraudulent by a non-subscriber by referring to the contract information 312.

[0081] The usage management module 3046 has the same functionality as the usage management module 2046, and is a program module that aggregates the usage amount of fonts when fonts managed by the font distribution system are used on web pages.

[0082] The content delivery module 3047 is a program module that accepts access to the website from website visitors and, on behalf of the origin server 40, sends the website content to the website visitor's terminal 10A.

[0083] <1.4 Configuration of Terminal 10> Figure 4 shows the configuration of terminal 10.

[0084] As shown in Figure 4, terminal 10 includes multiple antennas (antenna 111, antenna 112), communication units corresponding to each antenna (first communication unit 120, second communication unit 121), an input device 130 (including a touch-sensitive device 131), a display 132, an audio processing unit 140, a microphone 141, a speaker 142, a position information sensor 150, a camera 160, a motion sensor 170, a storage unit 180, and a control unit 190. Terminal 10 also has functions and configurations not specifically shown in Figure 3 (for example, a battery for maintaining power, a power supply circuit for controlling the supply of power from the battery to each circuit, etc.). As shown in Figure 3, each block included in terminal 10 is electrically connected by a bus or the like.

[0085] Antenna 111 radiates signals emitted by terminal 10 as radio waves. Antenna 111 also receives radio waves from space and provides the received signals to first communication unit 120.

[0086] Antenna 112 radiates signals emitted by terminal 10 as radio waves. Antenna 112 also receives radio waves from space and provides the received signals to the second communication unit 121.

[0087] The first communication unit 120 performs modulation and demodulation processing, etc., for the terminal 10 to transmit and receive signals via the antenna 111 in order to communicate with other wireless devices. The second communication unit 121 also performs modulation and demodulation processing, etc., for the terminal 10 to transmit and receive signals via the antenna 112 in order to communicate with other wireless devices. The first communication unit 120 and the second communication unit 121 are a communication module that includes a tuner, an RSSI (Received Signal Strength Indicator) calculation circuit, a CRC (Cyclic Redundancy Check) calculation circuit, a high-frequency circuit, etc. The first communication unit 120 and the second communication unit 121 perform modulation and demodulation, frequency conversion, etc., of the wireless signals transmitted and received by the terminal 10, and provide the received signal to the control unit 190.

[0088] The input device 130 has a mechanism for receiving user input operations. Specifically, the input device 130 is configured as a touchscreen and includes a touch-sensitive device 131. The touch-sensitive device 131 receives user input operations of the terminal 10. The touch-sensitive device 131 detects the user's contact position with the touch panel, for example, by using a capacitive touch panel. The touch-sensitive device 131 outputs a signal indicating the user's contact position detected by the touch panel to the control unit 190 as an input operation.

[0089] The display 132 displays data such as images, videos, and text in accordance with the control of the control unit 190. The display 132 is implemented by, for example, an LCD or an organic EL display.

[0090] The audio processing unit 140 modulates and demodulates the audio signal. The audio processing unit 140 modulates the signal received from the microphone 141 and provides the modulated signal to the control unit 190. The audio processing unit 140 also provides the audio signal to the speaker 142. The audio processing unit 140 is implemented, for example, by an audio processing processor. The microphone 141 receives an audio input and provides the audio signal corresponding to that audio input to the audio processing unit 140. The speaker 142 converts the audio signal received from the audio processing unit 140 into sound and outputs the sound to the outside of the terminal 10.

[0091] The location information sensor 150 is a sensor that detects the location of the terminal 10, and is, for example, a GPS (Global Positioning System) module. A GPS module is a receiving device used in a satellite positioning system. In a satellite positioning system, signals are received from at least three or four satellites, and the current location of the terminal 10, which is equipped with a GPS module, is detected based on the received signals.

[0092] Camera 160 is a device that receives light using a photodetector and outputs it as an image. Camera 160 is, for example, a depth camera that can detect the distance from camera 160 to the object being photographed.

[0093] The motion sensor 170 includes an acceleration sensor, an angular velocity sensor, etc., and detects the movement of the terminal 10.

[0094] The storage unit 180 is composed of, for example, flash memory and stores data and programs used by the terminal 10. The various types of information stored in the storage unit 180 will be described later.

[0095] The control unit 190 controls the operation of the terminal 10 by reading the program stored in the memory unit 180 and executing the instructions contained in the program. The control unit 190 is, for example, an application processor. By operating according to the program, the control unit 190 performs the functions of an operation reception unit 191, a transmission / reception unit 192, a data processing unit 193, a notification control unit 194, and a memory control unit 195.

[0096] The operation reception unit 191 processes input operations from the user to an input device such as a touch-sensitive device 131. Based on the coordinate information of the touch-sensitive device 131 where the user's finger or the like has made contact, the operation reception unit 191 determines the type of operation, such as whether the user's operation is a flick operation, a tap operation, or a drag (swipe) operation.

[0097] The transmitting / receiving unit 192 performs processing to enable the terminal 10 to send and receive data with an external device such as a server 20 in accordance with a communication protocol.

[0098] The data processing unit 193 performs calculations on the data received as input by the terminal 10 according to the program and outputs the calculation results to memory or other locations.

[0099] The notification control unit 194 performs the following processes: displaying the display image on the display 132, outputting sound to the speaker 142, and generating vibrations.

[0100] The memory control unit 195 controls the storage of data to the memory unit 180.

[0101] The various types of information stored by the memory unit 180 will now be explained. In a given situation, the memory unit 180 stores various types of information, such as user information 181.

[0102] User information 181 includes, for example, information such as the user's login ID for a service provided by the font distribution system server 20.

[0103] <2 Data Structure> Figure 5 shows the data structure of the user database 211. The user database 211 includes the fields "User ID", "User Attributes", "Contact Information", "Affiliation", "Name", "Font Production History", and "Font Usage History".

[0104] The "User ID" field is information that identifies each user.

[0105] The "User Attributes" field contains information about the type of each user.

[0106] The item "User Attributes" may include the following as types of users who use the font distribution system: Font creators who produce fonts • Web designers who create websites • Website operators who run websites The "Contact Information" field contains each user's contact information.

[0107] More specifically, the "Contact Information" field includes contact information that identifies the user logging into the font distribution system.

[0108] The "Affiliation" field contains information about each user's affiliation.

[0109] More specifically, the "Affiliation" field is information that identifies the organization each user belongs to.

[0110] The "Name" field contains information about each user's name.

[0111] The item "Font Creation Portfolio" contains information about fonts created by the user.

[0112] The item "Font Production Achievements" may be associated with the item "Paid Fonts Used" in Contract Database 212, which will be described later.

[0113] The item "Font Usage History" contains information about the fonts that users have used.

[0114] The item "Font Usage History" may be associated with the item "Paid Fonts Used" in the contract database 212, which will be described later. Information identifying fonts that the user has used in the past may be included as information on the user's font usage history.

[0115] Figure 6 shows the data structure of the contract database 212. The contract database 212 includes the following fields: "Contract ID", "Contracting User ID", "Paid Fonts to be Used", "Predefined CSS File for Paid Fonts", "Domain Using Paid Fonts", "Link to CSS File", "Contract Start Date", "Contract End Date", "Status", and "Pricing Plan".

[0116] The item "Contract ID" is information that identifies each user's contract for the service provided by the font distribution system server 20.

[0117] The item "Contracting Party User ID" is information that identifies the contracting party in the contract for the use of the font.

[0118] The item "Contracting Entity User ID" may be associated with the item "User ID" in user database 211.

[0119] The item "Paid fonts to be used" is information that identifies the fonts that the contracting party has designated to be used in the contract.

[0120] More specifically, the item "Paid fonts to use" is the font identification information issued for each font managed by the font distribution system server 20.

[0121] The item "Predefined Paid Font CSS File" contains information about CSS data files that stipulate the use of fonts specified in the contract.

[0122] More specifically, the item "Predefined paid font CSS file" refers to information about the CSS file (which defines the use of the specified font) that Server 20 generates in accordance with the contract.

[0123] The item "Domains using paid fonts" contains information about the domains for which the fonts will be used under the contract.

[0124] More specifically, the item "Domains using paid fonts" includes information on domains specified in accordance with the terms and conditions stipulated in the pricing plan of the contract (for example, the maximum number of domains that can use paid fonts).

[0125] The item "Link to CSS file" contains information about a uniquely generated link for accessing the CSS file generated in the contract.

[0126] The item "Contract Start Date" contains information about the start date of the contract for using the font.

[0127] The item "Contract End Date" contains information about the timing of the termination of the contract for using the font.

[0128] The "Status" field contains information about the status of each contract.

[0129] The "Status" item may include the following as the contract status: • In use (The website is accessible using the font specified in the contract.) • Termination of use (The font was previously used under a contract, but the contract has been terminated, and the font is no longer provided for viewing the website.) • Contract procedures are underway (the contract terms for using the font, domain, etc., are being set up, but the contract has not yet commenced). The item "Pricing Plan" is information that identifies the pricing plan for each contract.

[0130] The item "Pricing Plan" may be associated with the item "Pricing Plan ID" in the pricing plan database 213 shown in Figure 7.

[0131] Figure 7 shows the data structure of the pricing plan database 213. The pricing plan database 213 includes the items "Pricing Plan ID", "Plan Name", "Monthly Fee", "Usage Limit", "Number of Available Fonts", and "Number of Available Domains".

[0132] The item "Pricing Plan ID" is information that identifies each pricing plan.

[0133] The item "Plan Name" contains information about the name of the pricing plan.

[0134] The item "Plan Name" may include the following as the name of the pricing plan: • Free plan (in the example shown, "Free Plan") • A paid service with multiple tiers based on usage (in the example shown, "Plan 1" and "Plan 2"). The item "Monthly Fee" contains information about the amount charged for the pricing plan.

[0135] More specifically, the item "Monthly Fee" is information indicating the monthly fee, as shown in the diagram.

[0136] The item "Usage Limits" contains information about font usage limits based on your pricing plan.

[0137] The item "Usage Limits" may include the following as information regarding usage limits: • The amount of usage determined in regular payments, as indicated in the item "Monthly Fee". • Conditions for exceeding the specified usage amount. In the illustrated example, a charge amount corresponding to the excess usage amount is specified. If the usage amount corresponding to the monthly fee is exceeded, the charge amount corresponding to the excess usage amount may be automatically charged without any action from the subscriber, or the server 20 may accept an operation by the subscriber to purchase a charge for the excess amount (in the illustrated example, it is shown that in "Plan 1", font distribution can be used up to 300,000 page views, but if it exceeds 300,000 page views, a charge of 600 yen is required for every 100,000 page views), and font distribution will be provided for the excess page views in accordance with the purchased excess charge. If the usage amount is exceeded, font distribution may not be performed for the period of that monthly fee (font distribution can be resumed by paying a charge for the excess amount or by renewing the price plan). Server 20 may manage separately, in the usage management database 214 described later, the number of times a webpage using the managed font has been viewed and the number of times the font has been displayed on that webpage (even if a webpage is viewed, the font may not be sent to the user's terminal 10A because the usage limit specified in the pricing plan has been reached). This allows Server 20 to display to the subscriber both the number of webpage views and the number of times the font was displayed, making it even easier for the subscriber to consider payment of charges and changes to their pricing plan. The item "Number of available fonts" indicates the maximum number of fonts that can be used in your chosen pricing plan.

[0138] The item "Number of available fonts" may include the following information regarding the upper limit of the number of available fonts: As illustrated, the higher the price plan (the larger the payment), the more fonts become available. For example, there could be no upper limit on the number of fonts available once a certain price plan is reached. The item "Number of available domains" indicates the maximum number of domains that can be used under the pricing plan.

[0139] The item "Number of available domains" may include the following as information regarding the maximum number of domains that can be used: As illustrated, the number of available domains may increase as the pricing plan becomes more expensive (the payment amount increases). Depending on the pricing plan, there may be no limit on the number of available domains. Figure 8 shows the data structure of the usage management database 214. The usage management database 214 includes the items "Contract ID", "Aggregation Period", "Aggregation Target Domain", "Usage Amount", "Status", and "Charged Amount during Aggregation Period".

[0140] The item "Contract ID" is information that identifies each user's contract for the service provided by the font distribution system server 20.

[0141] The item "Contract ID" may be associated with the item "Contract ID" in contract database 212.

[0142] The "Aggregation Period" field contains information about the period over which font usage is aggregated.

[0143] The item "Aggregation Period" may include the following as the aggregation period for font usage: • Usage data will be aggregated periodically from the start of the aggregation period (for example, by accumulating daily aggregate results). • Aggregation period corresponding to the payment cycle of the pricing plan in the pricing plan database 213 (for example, for monthly payments, the aggregation period is divided into monthly segments). The item "Domains included in aggregation" contains information about the domains for which font usage data is collected.

[0144] The item "Usage" contains information on the total amount of font usage.

[0145] The item "Usage" may include the following as aggregated information on font usage: • Number of users' devices 10A that have the font delivered to a website using that font. • Number of times the web page of a website using the font was viewed. As shown in the diagram, the data may include information indicating that the font usage during the aggregation period has reached the upper limit of the pricing plan specified in the contract. The "Status" field contains information about the delivery status of fonts managed by the font distribution system, based on the contract.

[0146] The "Status" field may include the following information regarding the delivery status: • The font is being distributed based on the contract. • In the pricing plan, a usage limit is set, and if the usage limit is exceeded, the website will not display fonts (fonts will not be delivered to the user's device 10A). In this case, the delivery of fonts is being restricted because the plan limit has been exceeded. The item "Charge Amount During the Calculation Period" contains information on the amount charged to the subscriber, which is determined by the amount of font usage and the pricing plan during the period indicated in the item "Calculation Period".

[0147] <3 operations> Figure 9 shows the process flow for generating embedding information to be embedded in the website's source code, based on a contract for using fonts managed by the font distribution system server 20.

[0148] In step S921, the contract registration module 2044 of server 20 outputs an operation screen for using paid fonts to the user terminal 10D of the website production manager.

[0149] In step S911, terminal 10D receives information from the user regarding the font to be used, the domain on which the font will be used, and the pricing plan, as part of the contract process. Terminal 10D then sends the information regarding the paid font contract to server 20.

[0150] In step S923, the contract registration module 2044 of the server 20 receives information regarding the paid font contract from the terminal 10D and updates the contract database 212 in accordance with the subscriber's operation. The contract registration module 2044 generates a CSS file for using the specified paid font on the website. This CSS file defines the font information specified by the subscriber.

[0151] In step S925, the contract registration module 2044 of server 20 generates a unique link to access the generated CSS file. This link is different for each CSS file. In this way, the contract registration module 2044 generates unique embedding information for each contract, which is embedded in the source code of the website to display the paid font on the website, for contracts in which a fee is paid for the use of the paid font. The contract registration module 2044 stores the generated unique embedding information in the contract database 212, associating it with the contractor information related to the contract.

[0152] Specifically, the contract registration module 2044 generates a stylesheet specifying the paid font in order to display the paid font on the website related to the contract with the contractor. The contract registration module 2044 generates unique embedding information by generating a unique link to the generated stylesheet.

[0153] In step S927, the contract registration module 2044 of server 20 updates the contract database 212 by generating a link tag to be embedded in the website's source code, based on a unique link to the generated CSS file. The contract registration module 2044 outputs the information of the generated link tag to terminal 10D.

[0154] Here, the contract registration module 2044 may accept a contract from a contractor for the temporary use of paid fonts, premised on a change in the contractor, and store the contractor's information and unique embedding information in the storage unit 202 (for example, in the contract database 212). In this case, before the change in the contractor, the contract registration module 2044 may provide the paid fonts to website visitors under certain restrictions in accordance with the temporary contract, regarding visitors' access to websites using the paid fonts. Possible such restrictions include the following: • In the case of a temporary contract, the contracting party can be changed if certain conditions are met. For example, if the usage limit for paid fonts in the contract with the original entity is reached, the contracting entity may be changed to a pre-specified alternative. Furthermore, if the usage period for paid fonts reaches a certain point in the contract with the original entity, the contracting entity may be changed to a pre-specified new entity. This allows, for example, a person in charge of website production to enter into a contract with server 20 to use fonts managed by the font distribution system under their own contract, have the website operator review the website being produced, and then, once certain conditions such as the amount and duration of paid font usage are met, the contracting party can be changed to a predetermined entity (for example, the website operator), thereby reducing the effort required to change the contracting party.

[0155] In step S913, terminal 10D displays information related to the use of paid fonts, such as the domain using the paid font, the typeface to be used, and link tags.

[0156] Figure 10 shows the process flow for changing the entity that has a contract to use fonts managed by the font distribution system server 20, without changing the information used for embedding.

[0157] In step S1021, the contract registration module 2044 of the server 20 outputs an operation screen for changing the paid font contract to the user terminal 10D of the website production staff. Thus, the example in Figure 10 describes an example in which the website production staff accepts an operation to change the entity of the paid font contract, and updates the contract database 212 with the changed entity.

[0158] Furthermore, the server 20 may accept operations to change the contracting party, accepting operations from the user who initiated the change (in the example in Figure 10, the website production manager), and changing the contracting party without requiring confirmation from the user who initiated the change (in the example in Figure 10, the website operator).

[0159] Furthermore, the server 20 may accept operations to change the contracting entity, accepting operations from the original user and notifying the new user (or notifying them), and then updating the contract database 212 by accepting operations from the new user to approve the change in the contracting entity.

[0160] Furthermore, the server 20 may accept operations to change the contracting entity, starting with the user after the change, accepting an operation requesting a change in the contracting entity, notifying the original user (or notifying them), and then accepting an operation from the original user approving the change in the contracting entity, thereby changing the contracting entity and updating the contract database 212.

[0161] In step S1011, terminal 10D displays a list of contracts and accepts from the user the operation to specify the contract whose contracting entity to change, and the operation to specify the new contracting entity, without changing the link tag based on the unique link to the CSS file that defines the paid font. Terminal 10D sends the information regarding the change in the contracting entity of the paid font to server 20.

[0162] In step S1023, the contract registration module 2044 of the server 20 updates the contract database 212 by changing the contract entity without changing the link tag, in response to the operation to change the contract entity received from the terminal 10D.

[0163] In this way, the contract registration module 2044 accepts user requests to change the information of subscribers who use paid fonts on a website without requiring any changes to the embedded information generated for the website. In response to a user request to change subscriber information, the contract registration module 2044 updates the information of subscribers who use paid fonts on a website and stores it in the contract database 212 without requiring any changes to the unique embedded information generated before the change.

[0164] Figure 11 shows the processing flow for controlling the edge server 30 so that it does not provide fonts managed by the font distribution system server 20 unless the domain is one that has been registered in advance.As shown in the processing below, by having the edge server 30, rather than the font distribution system server 20, perform the processing to check whether the domain is eligible for distribution of fonts managed by the font distribution system server 20, and whether the amount of font usage has reached the limit specified in the pricing plan (if it has reached the limit, the font will not be sent to the user's terminal 10A), the response time for processing to allow the user's terminal 10A to view web pages that use the font can be shortened, further improving the browsing experience.In addition, the processing load on the font distribution system server 20 can be reduced, security can be strengthened, and unauthorized access related to font requests from domains outside the contract can be deterred.

[0165] In step S1111, the website visitor's terminal 10A accepts an operation from the user to access the website via the browser.

[0166] In step S1121, the control unit 203 of the edge server 30 responds with information (HTML, images, videos, and other content that make up the web page) necessary to display the website on the user's terminal.

[0167] In step S1113, terminal 10A refers to the information of a link tag embedded in the website's source code (HTML) and requests the CSS file indicated by the link.

[0168] In step S1123, the control unit 203 of the edge server 30 identifies the contract for using paid fonts based on a unique link to the CSS file by referring to the contract information 312, referring to the contract database 212 of the server 20, etc. The control unit 203 determines whether the access is from a domain specified in the contract, based on the information of the contract for using paid fonts, etc., by referring to the contract information 312, etc. If the access is from an unauthorized domain not specified in the contract, the control unit 203 does not send the font file of the paid font covered by the contract to the user terminal 10A. If the access is from a specified domain, it responds to the user terminal 10A with the font file of the font specified in the contract.

[0169] In this way, when a viewer accesses a website using a paid font via their browser, the control unit 203 identifies the paid font used on the website based on the embedded information of the website. The control unit 203 responds with the identified paid font, allowing the website viewer to view the website with the identified paid font in use. More specifically, the control unit 203 identifies the paid font used on the website by providing the browser with the stylesheet file referenced by the unique link information to the stylesheet embedded in the website's source code.

[0170] As described above, unique embedding information is stored in the contract information 312 and contract database 212, associated with the domain specified by the subscriber. The control unit 203 obtains information about the domain of the website accessed by the viewer. If the obtained domain is a domain specified by the subscriber in the contract information 312, etc., the control unit 203 responds with a paid font, allowing the website viewer to view a website that uses the paid font. However, if it is not a specified domain, the control unit 203 prevents the website viewer from viewing the website in a state where the paid font is used. For example, if the obtained domain is different from a specified domain, the control unit 203 does not deliver the paid font to the website viewer's terminal, thereby preventing the website viewer from viewing the website in a state where the paid font is used.

[0171] A website allows visitors to view the website through an edge server that temporarily stores the content of the website's web pages and provides the stored web page content in response to access from the visitor's device, and an origin server that stores information about the content of the website's web pages and provides the content to the edge server in response to a request from the edge server. The edge server determines whether the domain information of the website accessed by the visitor, which includes unique embedding information, is a domain specified by the subscriber. Server 20 receives the result of the determination made by the edge server from the edge server. Server 20 determines whether to respond with a paid font based on the result of the received determination. If Server 20 responds with a paid font, it causes the paid font to be provided to the visitor's device via the edge server; if it does not respond with a paid font, it does not cause the paid font to be provided to the visitor's device.

[0172] Furthermore, the contract database 212 or contract information 312 is configured to store information about paid fonts, including the upper limit on the amount of website viewing that uses paid fonts and the usage fee, as pricing plan information (pricing plan database 213). The control unit 203 of the edge server may also determine whether the upper limit specified in the pricing plan for the contract is appropriate for the amount of website access by visitors (usage information 314).

[0173] The control unit 203 may, if the amount of access by visitors to a website using paid fonts exceeds the limit, refrain from providing the paid fonts to the visitor's device, and may also notify subscribers of their pricing plan to change their pricing plan as the amount of visitor access approaches the limit.

[0174] In step S1115, terminal 10A receives the font file for the paid font if it is a domain specified in the contract, and displays the web page containing the paid font using its browser.

[0175] Figure 12 shows the process flow in which the edge server 30 pre-divides and stores font files managed by the font distribution system server 20 as blocks, and provides the font files stored as blocks in response to website access. Through the following process, for example, fonts with a large number of characters, such as Japanese fonts, may take time to be delivered from the font distribution system server 20. However, by dividing the font files according to the commonly used character types and placing them on the edge server 30, and sending the block of font file containing the characters being used to the terminal 10A when a font is requested from the terminal 10A, the font download time can be shortened and the display speed of web pages using the fonts can be improved, thus further enhancing the web page browsing experience.

[0176] In step S1221, the control unit 203 of the edge server 30 communicates with the server 20 of the font distribution system and receives the font files of the paid fonts as blocks divided according to the frequency of use of each character type, and stores the data of the received blocks as a block-prepared paid font data file 315.

[0177] In this way, the memory unit 302 of the edge server 30 pre-stores the font files of fonts managed by the font distribution server by dividing them into multiple blocks. The memory unit 302 of the edge server 30 pre-stores the divided font file blocks for each font distributed by the font distribution server, as blocks that group together character types that are displayed relatively frequently on websites.

[0178] In step S1225, the control unit 203 of the edge server 30 responds to the user terminal 10A with a block of font files containing the fonts specified in the contract and the character types used on the web page, based on the contract information for using paid fonts.

[0179] In this manner, the control unit 203, in order to deliver the contracted fonts to the user's terminal that is accessing the system, does not request the contracted fonts from the font distribution system server 20, but instead refers to the pre-obtained block-type paid font data file 315 that it has acquired and stored from the server 20, and sends the block font file corresponding to the font displayed in the browser of the user's terminal 10A.

[0180] In step S1215, terminal 10A receives a block of font files and displays a webpage containing the paid fonts specified in the CSS file using its browser.

[0181] Figure 13 shows the flow of processes in the edge server 30, including the aggregation of font usage, determination of compatibility with the contract's fee plan, and transmission of the aggregated font usage results to the font distribution system server 20. In the illustrated example, the edge server 30 aggregates font usage and transmits the aggregated results to the font distribution system server 20, as described in steps S1321 and S1325 later. However, the process of aggregating font usage (step S1321) and the process of transmitting the aggregated results to the font distribution system server 20 (step S1325) may be performed as separate processes. For example, the frequency of the aggregation process and the frequency of transmitting the aggregated results to the server 20 may be different. The edge server 30 may also receive a query from the font distribution system server 20 and respond to the server 20 with information on the aggregated font usage results for domains that the edge server 30 can aggregate. The font distribution system server 20 may periodically make the above query to the edge server 30.

[0182] In step S1321, the usage management module 3046 of the edge server 30 aggregates the amount of paid fonts used (number of web page views) for each domain based on the web page access logs.

[0183] The content acquisition module 3043 of the edge server 30 requests the font files of the fonts used on a webpage from the server 20 of the font distribution system if the edge server 30 does not have them in its possession, in response to a user's terminal access to the webpage that uses fonts distributed by the server 20 of the font distribution system. The content acquisition module 3043 receives and stores the font files from the server 20. The content provision module 3047 sends the fonts to the user's terminal that made the access, allowing the user to view the webpage using the fonts in their terminal's browser. The usage management module 3046 counts the number of times a webpage using fonts managed by the server 20 has been viewed in the user's terminal's browser.

[0184] In step S1323, the usage management module 3046 of the edge server 30 refers to the contract information 312 to compare the amount of paid fonts used per domain with the pricing plan of the contract that uses the paid fonts, and determines whether the pricing plan is suitable (whether the maximum number of page views specified in the pricing plan has been exceeded). The usage management module 3046 may also notify the subscriber based on the determination result. (Alternatively, the edge server 30 may notify the server 20 of the above usage and contract suitability determination result, and the server 20 may notify the subscriber based on the determination result.) Server 20 manages information regarding the maximum number of times a specific font can be viewed in the contracted pricing plan (pricing plan database 213).

[0185] The usage management module 3046 of the edge server 30 determines whether the aggregated usage of paid fonts has reached the maximum number of times fonts can be viewed according to the pricing plan for the contract in the contract information 312. If the usage management module 3046 determines that the aggregated usage has reached the maximum number of times, it may allow the user's terminal to view web pages without providing the fonts managed by the server 20.

[0186] The usage management module 3046 may notify the contracting party if the aggregated usage of fonts managed by the server 20 is approaching the maximum number of views allowed under the pricing plan. The usage management module 3046 may determine that the limit is being reached, for example, when the usage fee reaches a predetermined percentage of the limit (for example, 90%).

[0187] In step S1325, the usage management module 3046 of the edge server 30 sends information on the aggregated amount of paid fonts used for each domain to the font distribution system server 20.

[0188] Specifically, the usage management module 3046 aggregates the number of times a user has viewed a webpage using a font managed by the server 20 in their browser, for each webpage domain, and stores this as usage information 314. By referring to the usage information 314, the usage management module 3046 sends the aggregated results for each domain to the server 20.

[0189] In step S1311, the usage management module 2046 of server 20 receives the aggregated results of font usage for each domain from the edge server 30 and updates the usage management database 214. In this way, the usage management module 2046 stores information on the aggregated results for each domain in association with the contract. The usage management module 2046 refers to the aggregated results information in the usage management database 214 and presents the usage status of fonts managed by server 20 in each domain to the user. The usage management module 2046 may, for example, display font usage information for each domain specified by the subscriber in the contract.

[0190] Figure 14 shows the flow of processes in the font distribution system server 20, including the billing of contracts based on font usage and the payment of compensation to font creators.

[0191] In step S1421, the font usage billing module 2047 of server 20 refers to the usage management database 214 and, based on the font usage information for each domain and the contracted fee plan (fee plan database 213), calculates the charge amount for each subscriber according to their font usage and updates the usage management database 214.

[0192] Thus, the font usage billing module 2047 processes invoices to the contractor in order to charge the contractor for using the fonts in the contract, based on the aggregated information of font usage associated with the contract (aggregated results of the number of times the fonts were viewed) held in the usage management database 214. The font usage billing module 2047 processes invoices to the contractor for payment methods such as credit cards or bank account numbers that the contractor has specified in advance, for example.

[0193] In step S1423, the reward distribution module 2048 of server 20 refers to the usage management database 214 and determines the amount of reward to the font creator according to the amount of font usage for each domain. In the illustrated example, the processing of the reward distribution module 2048 is explained as being performed immediately after the processing of the font usage billing module 2047, but each process may be performed separately.

[0194] In step S1425, the font usage billing module 2047 of server 20 notifies the subscriber of the calculated billing amount. The reward distribution module 2048 notifies the font creator of the determined reward amount. In this way, the reward distribution module 2048 distributes a reward to the font creator who produced the font, in accordance with the number of times the font managed by server 20 has been viewed.

[0195] In step S1411, the website operator's user terminal 10C displays the charge amount corresponding to the amount of paid fonts used.

[0196] Figure 15 shows the processing flow for displaying the usage status of managed fonts on the font distribution system server 20.

[0197] In step S1521, the usage management module 2046 of the server 20 refers to the usage management database 214 and generates information on font usage for each domain.

[0198] In step S1523, the usage management module 2046 of server 20 outputs information on the usage status of fonts (including paid fonts) managed by server 20 to the font creator.

[0199] The usage management module 2046 presents the usage status of fonts in each domain, displaying the amount of font usage in each domain in a comparative manner across domains. The usage management module 2046 may also display a breakdown of the types of fonts used in each domain. This makes it easier for font creators to see which domains their fonts are being used in, which can be useful for future font development.

[0200] Furthermore, the usage management module 2046 may display the usage status of fonts created by font creators, or it may display the usage status of fonts created by other users as well (for example, all fonts or some fonts managed by server 20). This makes it easier to check which domains are using various fonts, which can be useful as a reference for font creation.

[0201] The usage management module 2046 displays the usage status of fonts managed by server 20 in each domain, showing the amount of font usage in each domain in a way that allows for comparison between fonts on a font-by-font basis. In this case, the usage management module 2046 may also display a breakdown of the domains in which each font is used, for each font type (typeface).

[0202] The usage management module 2046 outputs information on the usage status of fonts managed by server 20, and may present the usage status of fonts in each domain, provided that the user is either a font creator who produces fonts managed by server 20, or a contractor who uses fonts managed by server 20 under contract. For example, for contractors who use fonts on websites, it becomes easier to understand trends in which fonts are being used, which can be used as a reference for font selection, and may further encourage the publication of websites using fonts.

[0203] In step S1511, the font creator's user terminal 10B displays the usage status of the fonts managed by server 20 in each domain.

[0204] <4 Screen Examples> Figure 16 is an example of an operation screen that presents the contract details for the font distribution system server 20 and the information to be embedded in the website's source code, for the production staff responsible for creating the website.

[0205] The contract operation screen 1600 is the operation screen for configuring contracts that use fonts managed by server 20.

[0206] The contract operation screen 1600 corresponds to step S921, etc., in Figure 9.

[0207] The account display area 1602 is an area that displays information about users who log in to the services provided by server 20.

[0208] More specifically, the account display area 1602 displays various user information managed in the user database 211 as information about the user logging in.

[0209] The settings display area 1604 is the area that displays the contract settings.

[0210] The setting display area 1604 corresponds to step S911, etc., in Figure 9.

[0211] The pricing plan display area 1606 is the area that displays the pricing plan that the user has subscribed to.

[0212] In the illustrated example, the pricing plan display area 1606 displays the details of each pricing plan as shown in the pricing plan database 213. The pricing plan display area 1606 accepts user input, and in response to user input, an operation screen for changing the pricing plan may be displayed as an overlay, transition to another screen, etc. This makes it easy to change the pricing plan while referring to the contract details in the contract details specification unit 1608, which will be described later.

[0213] The contract content specification unit 1608 is an operating component that accepts the specification of the contract content for using fonts managed by the server 20.

[0214] The contract content specification section 1608 accepts specifications for the content of the contract and may include the following: • Domains that will use the font. Depending on the pricing plan, there may be a limit to the number of domains that can be used. In the example shown, it is indicated that the font can be used on a maximum of 3 domains, depending on the pricing plan. • The font (typeface) to be used. As shown in the illustration, the font name and information about the font creator may be displayed. This includes information about a unique link to a CSS file generated by specifying the domain and font, and entering into a contract to use the font. The illustrated example shows the link tag to be embedded in the HTML file of the web page. The illustrated example also displays a message indicating that a link tag to the CSS file will be generated before the user starts using the font. This suggests to the user that they need to embed a link tag to the CSS file in their HTML file when using the font, making it easier to understand the work to be done after the user starts using the font. • Indicates that the font is in use. In the illustrated example, "In Use" is displayed for fonts that have been activated. After accepting the domain and font specifications, before the activation operation is performed, the activation operation unit 1610 (described later) is displayed to accept the user's activation operation (the operation to confirm the domain and font specifications). The Start Operation Unit 1610 is an operation component that accepts an operation to start using font distribution for the domain and font specified in the Contract Details Specification Unit 1608.

[0215] In the illustrated example, the activation operation unit 1610 becomes operational when it accepts specifications regarding the domain and fonts to be used, subject to the constraints (number of domains, number of available fonts, etc.) stipulated in the pricing plan.

[0216] The subject change operation unit 1612 is an operation component that accepts operations to change the subject of a contract without changing the unique link to the CSS file indicated in the link tag.

[0217] In the illustrated example, the subject change operation unit 1612 accepts a change of the subject of the contract with the service provided by the server 20, after specifying the domain that will use the font, as shown in the contract content specification unit 1608. This corresponds to steps S1011, S1023, etc. in Figure 10. As explained above, when a domain and typeface are specified for use of a font, server 20 generates a CSS file and a link tag containing a unique link to the CSS file.

[0218] For example, even if another contracting party specifies the same domain and font as above, a different link to the CSS file will be generated. Therefore, when a website is created by multiple parties (for example, when a website creator initially creates the website and then hands over the work to a website operator who adds content), if the website is to be checked to function, including the unique link to the CSS file generated by the contract of the first party, and then handed over to the second party, it may be necessary to delete the existing link and embed a link tag for a unique link to the CSS file generated by the contract of the second party.

[0219] In response to this, a subject change operation unit 1612 is provided, allowing the subject of the contract to be changed without modifying the link tag containing a unique link to the CSS file. This eliminates the need for the subject taking over the website production to separately embed the link tag in the above-mentioned cases, making website production and publication even easier.

[0220] The change reservation operation unit 1614 is an operating component that accepts operations to enter into a contract that is premised on changing the contracting party.

[0221] The change reservation operation unit 1614 may include the following as contracts that are based on changing the contracting party: • The contract specifies a period for the use of the font by the original entity, and upon the expiration of that period, the contract is automatically transferred to the predetermined new entity. • The contract specifies a limit on the amount of font usage by the original entity, and if that limit is exceeded, the contract is changed to a predetermined new entity. This makes it easier for the person in charge of website production to create a website that uses the font, have the website operator review the content, and then take over the operation of the website. In this case, a different pricing plan may be provided than the one specified in Pricing Plan Database 213.

[0222] Figure 17 shows an example of an operation screen for changing the contracting party for the services provided by the font distribution system server 20, while keeping the embedded information unchanged.

[0223] The main contract renewal operation unit 1616 is an operating component that accepts operations to renew the contracting entity.

[0224] The main update operation unit 1616 corresponds to steps S1011, S1023, etc. in Figure 10. The illustrated example shows how the contracting entity is changed and the contract database 212 is updated when the original entity performs an operation to change the contracting entity, and the new entity approves the change.

[0225] Figure 18 shows an example of an operation screen that displays the aggregated results of font usage for subscribers of the font distribution system's server 20 service.

[0226] The subscriber-only operation screen 1618 is an operation screen for subscribers that accepts operations based on the aggregated results of font usage.

[0227] The summary result display area 1620 is an area that displays the summary results of the amount of font usage related to the contract of the subscriber.

[0228] The aggregation period display area 1622 is the area that displays the aggregation period for which font usage is aggregated.

[0229] In the illustrated example, the aggregation period display area 1622 displays data up to the end of the month, based on monthly aggregation in line with the billing timing of the pricing plan (for example, from the beginning to the end of the month). This makes it even easier to select a pricing plan based on font usage at any time.

[0230] The usage display area 1624 is an area that displays the aggregated results of font usage for each domain covered by the contract.

[0231] In the illustrated example, the usage display area 1624 shows, for each domain, the fonts (typefaces) being used and the number of times web pages containing those fonts have been viewed (page views). Alternatively, the font usage for each domain may be displayed in descending order of page views.

[0232] The plan change operation unit 1626 is an operating component that accepts operations to change the rate plan.

[0233] In the illustrated example, the plan change operation unit 1626 displays that the aggregated font usage for each domain covered by the contract is approaching the upper limit indicated in the contracted pricing plan, suggesting to the user that they either pay the excess charge or review their pricing plan.

[0234] The pricing display area 1628 is the area that displays the pricing based on the amount of font used.

[0235] In the illustrated example, the pricing display area 1628 assumes a basic aggregation period (for example, a monthly period coinciding with the billing timing) and calculates the expected usage by the end of the aggregation period based on the rate of increase in font usage up to a certain point in the aggregation period. It then displays the expected usage and the estimated monthly fee based on the pricing plan. Furthermore, if the pricing plan includes charges for excess usage, the pricing display area 1628 also displays the estimated charges for that excess usage. Alternatively, it may be possible to display the monthly fee based on font usage up to the period for which aggregation is complete, relative to the basic aggregation period. This makes it easier for subscribers to consider whether their pricing plan is appropriate and makes it even easier to change to a pricing plan that is more suitable for their font usage.

[0236] The overall summary display area 1630 is an area that displays the aggregated results of font usage by each user of the services provided by server 20, not limited to the font usage of the subscriber.

[0237] The font-specific ranking operation unit 1632 is an operation component that accepts requests to check the aggregated usage results for each font within each user's domain.

[0238] More specifically, the font ranking operation unit 1632 accepts operations to check the usage status of fonts in a ranking format. Depending on the user's operation, it may also display a breakdown of the domains in which each font is used, while arranging the fonts in order of usage volume.

[0239] The domain-specific ranking operation unit 1634 is an operation component that accepts requests to check the aggregated results of font usage for each user for each domain.

[0240] More specifically, the domain-specific ranking operation unit 1634 accepts operations to check the font usage status for each domain in a ranking format. Depending on the user's operation, it may also display a breakdown of the fonts used in each domain while arranging the domains with the largest font usage in order.

[0241] Figure 19 is an example of an operation screen that displays the usage status of fonts managed by the font distribution system server 20.

[0242] Font creator operation screen 1636 is an operation screen for font creators that accepts operations based on the aggregated results of font usage.

[0243] The recipient operation unit 1638 is an operation component that accepts requests for the aggregation results of the usage volume of fonts created by the font creator.

[0244] The usage display area 1640 is an area that displays the aggregated results of font usage in each domain for the fonts that have been created.

[0245] More specifically, the usage display area 1640 is as follows:

[0246] The reward display area 1642 is an area that displays the amount of reward for the use of the font that was created.

[0247] More specifically, the reward display area 1642 displays the amount of reward, which varies depending on the amount of font usage. The greater the font usage, the greater the contribution of the font creator; therefore, the reward may be set by increasing the proportion of the subscriber's payment that is attributed to the font creator.

[0248] The production tool activation unit 1644 is an operating component that receives an operation to activate the font production tool 50.

[0249] In the illustrated example, the production tool activation unit 1644 has an embedded link to a service that provides the font production tool 50, and depending on the link, it launches the service site or an application installed on the terminal. This makes it easier for font creators to create new fonts while referring to the usage status of existing fonts.

[0250] <Variation> In addition to the embodiments described above, the following may also be used.

[0251] Furthermore, by distributing all or part of each hardware configuration across multiple computers and connecting them to each other via a network, a computer can be virtually realized. Thus, the concept of a computer includes not only computers housed in a single enclosure or case, but also virtualized computer systems.

[0252] A database, specifically a relational database, is used to manage and link together tabular data sets called masters, which are structurally defined by rows and columns. In a database, tables are called tables, masters are called masters, the columns of tables are called columns, and the rows of tables are called records. In a relational database, relationships can be established and linked between tables and masters.

[0253] Typically, each table and master has a primary key column to uniquely identify records, but setting a primary key column is not mandatory. The control unit can instruct the processor to add, delete, or update records in specific tables and masters stored in the memory unit, according to various programs.

[0254] Furthermore, by storing data, various programs, and various databases in the memory unit, the information processing device and information processing system related to this disclosure can be considered to have been manufactured.

[0255] Furthermore, the databases and masters in this disclosure may include any data structures (lists, dictionaries, associative arrays, objects, etc.) in which information is structurally defined. Data structures also include data that can be considered as data structures by combining data with functions, classes, methods, etc., written in any programming language.

[0256] Furthermore, each of the above-mentioned configurations, functions, processing units, processing means, etc., may be implemented in hardware, either partially or entirely, by designing them as integrated circuits, for example. The present invention can also be implemented by software program code that realizes the functions of the embodiment. In this case, a storage medium on which the program code is recorded is provided to a computer, and the processor of that computer reads the program code stored in the storage medium. In this case, the program code read from the storage medium itself realizes the functions of the embodiment described above, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media used to supply such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, SSDs, optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, ROMs, and the like.

[0257] Furthermore, the program code that implements the functions described in this embodiment can be implemented in a wide range of programming or scripting languages, such as assembler, C / C++, Perl, Shell, PHP, and Java (registered trademark).

[0258] Furthermore, the program code for the software that implements the functions of the embodiment may be distributed via a network and stored in a storage means such as a computer's hard disk or memory, or in a storage medium such as a CD-RW or CD-R, and the computer's processor may read and execute the program code stored in the storage means or storage medium.

[0259] The functions realized by the components described in this specification may be implemented in circuitry or processing circuitry including a general-purpose processor, a specific-purpose processor, an integrated circuit, ASICs (Application Specific Integrated Circuits), a CPU (a Central Processing Unit), conventional circuits, and / or combinations thereof, programmed to realize the described functions. The processor includes transistors and other circuits and is regarded as circuitry or processing circuitry. The processor may be a programmed processor that executes a program stored in a memory.

[0260] In this specification, circuitry, unit, and means are hardware programmed to realize the described functions or hardware that executes the functions. The hardware may be any hardware disclosed in this specification or any hardware known as being programmed or executing to realize the described functions.

[0261] When the hardware is a processor regarded as a type of circuitry, the circuitry, means, or unit is a combination of hardware and software used to configure the hardware and / or the processor.

[0262] Some embodiments of the present disclosure have been described above. However, these embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the gist of the invention. These embodiments and their modifications are to be included in the scope and gist of the invention, as well as in the invention described in the claims and the equivalent scope thereof.

[0263] (Supplementary Note) The matters described in each of the above embodiments are appended below.

[0264] (Appendix of the First Embodiment)

[0265] (Appendix 1) A program for operating a computer including one or more computer processors, configured to store, in a storage unit, information on a paid font that requires payment of a usage fee according to usage, and information on a contractee who uses the paid font, the program causing the one or more computer processors to: generate, for each contract for paying a usage fee according to the use of a paid font, embedding information to be embedded in the source code of the website to display the paid font on the website, such that the information is unique for each contract; store the generated unique embedding information in the storage unit in association with the contract information; identify the paid font used on the website based on the embedding information of the website when a viewer accesses the website through a browser; and cause the viewer of the website to view the website in a state where the identified paid font is used by responding to the identified paid font; receive, from a user, an operation to change the contractee information related to a contract for using a font for which a usage fee is payable on the website, without requiring a change to the embedding information generated for the website; and update and store in the storage unit the contractee information for using a paid font on the website without requiring a change to the unique embedding information generated before the change, in response to the operation to change the contractee information related to the contract.

[0266] (Appendix 2) The program described in Appendix 1 generates, in the generation step, a stylesheet that specifies a paid font in order to display the paid font on a website related to a contract with a contractor, generates unique embedding information by generating a unique link to the generated stylesheet, and identifies the paid font used on the website by providing the browser with the stylesheet file referenced by the unique link information to the stylesheet embedded in the website's source code.

[0267] (Note 3) The program, as described in Appendix 2, includes the step of storing unique embedding information in a memory unit, in association with a domain specified by the subscriber, and further includes the step of obtaining information about the domain of a website accessed by a viewer, and if the obtained domain is a specified domain, responding with a paid font to allow the website viewer to view a website using the paid font, while if it is not a specified domain, not allowing the website viewer to view a website using the paid font.

[0268] (Note 4) If the domain acquired in the acquisition step is different from the specified domain, the program described in Appendix 3 will not deliver the paid font to the website visitor's device, thereby preventing the website visitor from viewing the website when the paid font is being used.

[0269] (Note 5) The website allows visitors to view the website through an edge server that temporarily holds the content of the website's web pages and provides the held web page content in response to access from the visitor's terminal, and an origin server that holds information about the content of the website's web pages and provides the content to the edge server in response to a request from the edge server, the edge server determines whether the domain information of the website accessed by the visitor, which includes unique embedding information, is a domain specified by the subscriber, and the program causes one or more computer processors to perform the steps of receiving the result of the determination at the edge server from the edge server, and determining whether to respond with a paid font according to the result of the determination received, and if a paid font is to be responded with as a result of the determination step, the program causes the paid font to be provided to the visitor's terminal via the edge server, and if a paid font is not to be responded with, the program does not cause the paid font to be provided to the visitor's terminal, as described in Appendix 3.

[0270] (Note 6) The program described in Appendix 2 is configured to store information about paid fonts in its memory unit, associating information about pricing plans that determine the usage fees for paid fonts based on the extent to which websites using those fonts have been viewed, with information about the subscriber.

[0271] (Note 7) The memory unit is configured to store information about paid fonts, including the upper limit on the amount of time that websites using paid fonts are viewed, and the usage fee, as pricing plan information. The website allows viewers to view the website through an edge server that temporarily holds the content of the website's web pages and provides the held web page content in response to access from the viewer's terminal, and an origin server that holds information about the content of the website's web pages and provides the content to the edge server in response to a request from the edge server. The program described in Appendix 5 determines whether the amount of access to the website by viewers is in line with the upper limit set out in the pricing plan.

[0272] (Note 8) The memory unit is configured to store information about paid fonts, including the upper limit on the amount of website access that uses the paid fonts and the usage fee, as part of the pricing plan information. If the amount of access by visitors to a website using the paid fonts exceeds the upper limit, the paid fonts will not be provided to the visitor's device. As the amount of visitor access approaches the upper limit, the program, as described in Appendix 6, will notify the subscriber of the pricing plan to change their pricing plan.

[0273] (Note 9) The program, as described in Appendix 1, is configured on one or more computer processors to accept a contract from a subscriber for the temporary use of paid fonts, premised on a change of subscriber, store the subscriber's information and unique embedding information in a memory unit, and, before the change of subscriber, provides the paid fonts to website visitors under certain restrictions in accordance with the temporary contract, regarding visitors' viewing of websites using paid fonts.

[0274] (Note 10) A method for operating a computer having one or more computer processors, wherein the memory is configured to store information about paid fonts for which usage fees are required and information about subscribers who use the paid fonts, and the program comprises the steps of: generating unique embedding information for each contract, which is embedded in the source code of a website to display the paid font on the website, for contracts in which one or more computer processors pay usage fees for the use of the paid fonts; storing the generated unique embedding information in the memory in association with the contract information; and a viewer accessing a website using a browser, the A method comprising the steps of: identifying paid fonts used on a website based on information for embedding the website; allowing website visitors to view the website with the identified paid fonts in use by responding with the identified paid fonts; receiving an operation from a user to change the subscriber information related to a contract for using paid fonts on a website without requiring any changes to the embedding information generated for the website; and updating the subscriber information for using paid fonts on a website and storing it in a memory unit in response to the operation to change the subscriber information related to the contract, without requiring any changes to the unique embedding information generated before the change.

[0275] (Note 11) An information processing device is configured in its storage unit to store information about paid fonts for which payment of usage fees is required depending on usage, and information about subscribers who use the paid fonts. The control unit of the information processing device performs the following steps: generating unique embedding information for each contract, which is embedded in the source code of a website to display the paid font on the website, for contracts for which a usage fee is paid depending on the use of the paid font; associating the generated unique embedding information with the contract information and storing it in the storage unit; and when a viewer accesses a website using a browser, the website uses the embedded information and the system processes the website An information processing device that performs the steps of: identifying paid fonts to be used on a website; responding with the identified paid fonts so that website visitors can view the website with the identified paid fonts in use; receiving an operation from a user to change the subscriber information related to the contract for using paid fonts on the website without requiring any changes to the embedded information generated for the website; and updating the subscriber information for using paid fonts on the website and storing it in a memory unit in response to the operation to change the subscriber information related to the contract, without requiring any changes to the unique embedded information generated before the change.

[0276] (Note 12) The system consists of a font distribution server, a user's terminal, an edge server, and an origin server. The font distribution server manages information on fonts available based on a contract for using the fonts and distributes font information based on the contract for using the fonts it manages. The origin server holds information on the content of the website's web pages and responds to requests from the edge servers with the content. The edge servers retrieve and store content information from the origin server and provide the stored content information to the user's terminal in response to access from the user's terminal browsing the website. The font distribution server is configured to store information on paid fonts that require payment of usage fees and information on subscribers who use the paid fonts in its storage unit. The control unit of the font distribution server embeds the paid fonts into the source code of the website in order to display the paid fonts on the website, in accordance with the contract for payment of usage fees for the paid fonts. A system that performs the following steps: generating embedding information so that it is unique for each contract; storing the generated unique embedding information in a memory unit in association with the contract information; when a viewer accesses a website using a paid font via a browser, the system identifies the paid font used on the website based on the embedding information of the website; responds with the identified paid font so that the website viewer can view the website with the identified paid font in use; accepts an operation from the user to change the contractor information for a contract that uses a paid font on a website without requiring any changes to the embedded information generated for the website; and in response to the operation to change the contractor information for a contract, updates the contractor information that uses a paid font on the website and stores it in a memory unit without requiring any changes to the unique embedding information generated before the change.

[0277] (Appendix of the Second Embodiment)

[0278] (Appendix 1) A system comprising a font distribution server, a user's terminal, an edge server, and an origin server. The font distribution server manages information on fonts available based on a contract for using the fonts, and distributes the font information based on the contract for using the fonts to be managed. The origin server holds information on the content of the web page of the website and responds to requests from the edge server by sending the content to the edge server. The edge server acquires and holds the content information from the origin server, and in response to access from the user's terminal browsing the website, provides the held content information to the user's terminal. When the processor of the edge server receives access from the user's terminal to a web page that uses a specific font managed by the font distribution server and the edge server does not hold the specific font used on the web page, the processor requests the font distribution server for the specific font, receives and holds the specific font from the font distribution server, and when the edge server holds the information on the specific font in response to access from the user's terminal to a web page that uses a specific font managed by the font distribution server, the processor causes the user's terminal to browse a web page that uses the specific font on the user's terminal browser by sending the specific font to the user's terminal without requesting the font distribution server for the specific font.

[0279] (Appendix 2) The program according to Appendix 1, wherein the processor of the edge server further executes a step of aggregating the number of times a web page using a specific font is browsed on the user's terminal browser.

[0280] (Appendix 3) The system described in Appendix 2, wherein the edge server's processor further performs a step of sending the aggregated results from the aggregation step to the font distribution server, and the font distribution server stores the aggregated information in association with the contract and, based on the aggregated results of the number of times a particular font has been viewed, charges the contractor a fee for using the font in the contract.

[0281] (Note 4) The font distribution server manages information regarding the maximum number of times a specific font can be viewed in the contracted pricing plan, and the edge server processor further determines whether the aggregated results obtained in the aggregation step have reached the maximum number of times a specific font can be viewed in the contracted pricing plan, and if it determines that the maximum number of views has been reached, it allows the user's terminal to view the web page without providing the specific font, as described in Appendix 3.

[0282] (Note 5) The system as described in Appendix 4, wherein the edge server processor further performs a step of notifying the contracting party when the aggregated results are approaching the maximum number of times they can be viewed under the pricing plan.

[0283] (Note 6) A font distribution server is a system described in any of the appendices 3 to 5, which rewards the font creator who produced the font based on the number of times the font it manages has been viewed.

[0284] (Note 7) The system described in any of the appendices 1 to 6, wherein the memory of the edge server pre-stores font files of fonts managed by the font distribution server as multiple blocks, and in the step of allowing viewing, a specific font is distributed to the user's terminal, and the system sends the font file block corresponding to the font displayed in the browser of the user's terminal without requesting a specific font from the font distribution server.

[0285] (Note 8) The system described in Appendix 7, wherein the memory of the edge server pre-stores blocks of divided font files for each font distributed by the font distribution server, grouping together character types that are relatively frequently displayed on the website.

[0286] (Note 9) The system described in any of Appendix 2 to 8, wherein in the aggregation step, the edge server aggregates the number of times a web page using a specific font was viewed in a user's terminal browser for each web page domain, the edge server's processor then executes a step to send the aggregated results for each domain aggregated in the aggregation step to the font distribution server, and the font distribution server, in association with the contract, stores the information of the aggregated results for each domain, and refers to the information of the aggregated results to show the usage status of fonts managed by the font distribution server in each domain.

[0287] (Note 10) The font distribution server is a system described in Appendix 9 that presents the usage status of fonts in each domain, displaying the amount of font usage in each domain in a comparable manner across domains, and displaying a breakdown of the types of fonts used in each domain.

[0288] (Note 11) The font distribution server is a system described in any of the appendices 9 to 10, which presents the usage status of fonts in each domain by displaying the amount of font usage in each domain in a comparable manner on a font-by-font basis, and by displaying a breakdown of the domains in which each font is used, for each type of font.

[0289] (Note 12) A font distribution server is a system described in any of the appendices 9 to 11 that displays the usage status of fonts in each domain, provided that the user is either a font creator who produces fonts managed by the font distribution server, or a subscriber who uses fonts managed by the font distribution server under contract.

[0290] (Note 13) A method executed by a system consisting of a font distribution server, a user's terminal, an edge server, and an origin server, wherein the font distribution server manages information on fonts available based on a contract for the use of the fonts it manages and distributes font information based on the contract for the use of the fonts it manages, the origin server holds information on the content of web pages of a website and responds to requests from the edge server with content, the edge server retrieves and holds content information from the origin server and provides the content information it holds to the user's terminal in response to access from the user's terminal browsing the website, and the method is executed by the processor of the edge server, A method for accessing a webpage that uses a specific font managed by a font distribution server, which involves the following steps: requesting the font distribution server if the edge server does not have information on the specific font used on the webpage; receiving and storing the specific font from the font distribution server; and, in response to the user's device accessing a webpage that uses a specific font managed by a font distribution server, sending the specific font to the user's device without requesting the font from the font distribution server, if the edge server has information on the specific font, thereby allowing the user's device to view the webpage using the specific font in its browser.

[0291] (Note 14) The edge server in a system comprising a font distribution server, a user's terminal, an edge server, and an origin server, wherein the font distribution server manages information on fonts available based on a contract for the use of the fonts it manages and distributes font information based on the contract for the use of the fonts it manages, the origin server holds information on the content of a website's web pages and responds to requests from the edge server with the content, the edge server retrieves and holds content information from the origin server and provides the content information it holds to the user's terminal in response to access from a user's terminal browsing the website, the control unit of the edge server performs the following steps in response to access from a user's terminal to a web page using a specific font managed by the font distribution server: requesting the font used on the web page from the font distribution server if the edge server does not hold the specific font used on the web page; receiving and holding the specific font from the font distribution server; and, in response to access from a user's terminal to a web page using a specific font managed by the font distribution server, if the edge server holds information on the specific font, sending the specific font to the user's terminal without requesting the specific font from the font distribution server, thereby allowing the user's terminal browser to view the web page using the specific font. An edge server that executes this.

[0292] (Note 15) This program operates the edge server of a system consisting of a font distribution server, a user's terminal, an edge server, and an origin server. The font distribution server manages information on fonts available based on a contract for using the fonts it manages and distributes font information based on the contract for using the fonts it manages. The origin server holds information on the content of web pages of a website and responds to requests from the edge server with the content. The edge server retrieves and holds content information from the origin server and provides the content information it holds to the user's terminal in response to access from the user's terminal browsing the website. The program operates the edge server's processing... A program that, in response to a user's terminal access to a web page that uses a specific font managed by a font distribution server, performs the following steps: requesting the font distribution server if the edge server does not have information on the specific font used on the web page; receiving and storing the specific font from the font distribution server; and, in response to a user's terminal access to a web page that uses a specific font managed by a font distribution server, sending the specific font to the user's terminal without requesting the font from the font distribution server if the edge server has information on the specific font, thereby allowing the user's terminal browser to view the web page that uses the specific font.

Claims

1. A system consisting of a font distribution server, a user's terminal, an edge server, and an origin server, The aforementioned font distribution server manages information on fonts available based on the contract for the use of the fonts, and distributes the information on the fonts it manages based on the contract for the use of the fonts. The origin server holds information about the content of the website's web pages and responds to the edge server with the content in response to a request from the edge server. The edge server retrieves and stores the content information from the origin server, and in response to access from the user's terminal that is browsing the website, it provides the stored content information to the user's terminal. The processor of the aforementioned edge server In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, the edge server requests the font distribution server if it does not have the specific font used on the webpage. The steps include receiving and storing the aforementioned specific font from the font distribution server, In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, if the edge server holds information about the specific font, the process includes sending the specific font to the user's terminal without requesting the font from the font distribution server, thereby allowing the user's terminal to view the webpage using the specific font in its browser. A system that executes this.

2. The program according to claim 1, wherein the processor of the edge server further performs the step of counting the number of times the web page using the specific font has been viewed in the browser of the user's terminal.

3. The processor of the aforementioned edge server further, The step of sending the aggregated results obtained in the aforementioned aggregation step to the font distribution server is performed. The aforementioned font distribution server is In connection with the aforementioned contract, the information of the aggregated results is retained, The system according to claim 2, wherein, based on the aggregated results of the number of times the aforementioned specific font has been viewed, a fee is imposed on the contractor in the contract for the use of the aforementioned font.

4. The font distribution server manages information regarding the maximum number of times a specific font can be viewed in the pricing plan related to the contract, The processor of the aforementioned edge server further, The aggregation step described above determines whether the aggregated results have reached the upper limit on the number of times the specific font can be viewed under the fee plan related to the contract, The system according to claim 3, wherein, if it is determined that the aggregated results have reached the upper limit of the number of times, the system allows the user's terminal to view the web page without providing the specific font.

5. The processor of the aforementioned edge server further, The system according to claim 4, further comprising the step of notifying the parties to the contract if the aggregated results are approaching the maximum number of times they can be viewed under the pricing plan.

6. The system according to claim 3, wherein the font distribution server provides compensation to the font creator who produced the font in accordance with the number of times the font under its management has been viewed.

7. In the memory unit of the edge server, the font files of the fonts managed by the font distribution server are divided and stored in advance as multiple blocks. The system according to claim 1, wherein, in the step of allowing viewing, the system delivers the specific font to the user's terminal involved in the access, and transmits the font file of the block corresponding to the font displayed in the browser of the user's terminal without requesting the specific font from the font distribution server.

8. The system according to claim 7, wherein the memory unit of the edge server pre-stores blocks of the divided font files for each font distributed by the font distribution server, where blocks are formed by grouping together character types that are displayed relatively frequently on a website.

9. In the aforementioned aggregation step, the edge server aggregates the number of times the web page using the specific font was viewed in the browser of the user's terminal, for each domain of the web page. The processor of the aforementioned edge server further, The process involves executing the step of sending the aggregated results for each domain, which were aggregated in the aforementioned aggregation step, to the font distribution server. The aforementioned font distribution server is In connection with the aforementioned contract, the information of the aggregated results for each domain is maintained, The system according to claim 2, wherein the system refers to the aggregated information and presents the usage status of fonts managed by the font distribution server in each domain.

10. The aforementioned font distribution server will display the usage status of the font in each domain, To display the font usage in each domain in a way that allows for comparison between domains, and The system according to claim 9, which displays a breakdown of the types of fonts used in each domain.

11. The aforementioned font distribution server will display the usage status of the font in each domain, To display the font usage in each domain, comparing fonts on a per-font basis, and The system according to claim 9, which displays a breakdown of the domains in which the font is used for each type of font.

12. The aforementioned font distribution server is The system according to claim 9, which presents the usage status of the font in each domain, provided that the user is either a font creator who produces fonts managed by the font distribution server, or a subscriber who uses fonts managed by the font distribution server under the contract.

13. A method executed by a system comprising a font distribution server, a user's terminal, an edge server, and an origin server, The aforementioned font distribution server manages information on fonts available based on the contract for the use of the fonts, and distributes the information on the fonts it manages based on the contract for the use of the fonts. The origin server holds information about the content of the website's web pages and responds to the edge server with the content in response to a request from the edge server. The edge server retrieves and stores the content information from the origin server, and in response to access from the user's terminal that is browsing the website, it provides the stored content information to the user's terminal. The above method involves the processor of the edge server, In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, the edge server requests the font distribution server if it does not have the specific font used on the webpage. The steps include receiving and storing the aforementioned specific font from the font distribution server, In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, if the edge server holds information about the specific font, the process includes sending the specific font to the user's terminal without requesting the font from the font distribution server, thereby allowing the user's terminal to view the webpage using the specific font in its browser. How to do it.

14. An edge server in a system consisting of a font distribution server, a user's terminal, an edge server, and an origin server, The aforementioned font distribution server manages information on fonts available based on the contract for the use of the fonts, and distributes the information on the fonts it manages based on the contract for the use of the fonts. The origin server holds information about the content of the website's web pages and responds to the edge server with the content in response to a request from the edge server. The edge server retrieves and stores the content information from the origin server, and in response to access from the user's terminal that is browsing the website, it provides the stored content information to the user's terminal. The control unit of the edge server, In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, the edge server requests the font distribution server if it does not have the specific font used on the webpage. The steps include receiving and storing the aforementioned specific font from the font distribution server, In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, if the edge server holds information about the specific font, the process includes sending the specific font to the user's terminal without requesting the font from the font distribution server, thereby allowing the user's terminal to view the webpage using the specific font in its browser. An edge server that executes this.

15. A program for operating the edge server of a system consisting of a font distribution server, a user's terminal, an edge server, and an origin server, The aforementioned font distribution server manages information on fonts available based on the contract for the use of the fonts, and distributes the information on the fonts it manages based on the contract for the use of the fonts. The origin server holds information about the content of the website's web pages and responds to the edge server with the content in response to a request from the edge server. The edge server retrieves and stores the content information from the origin server, and in response to access from the user's terminal that is browsing the website, it provides the stored content information to the user's terminal. The program is configured on the processor of the edge server. In response to the user's terminal accessing a webpage that uses a specific font managed by the font distribution server, the edge server requests the font distribution server if it does not have the specific font used on the webpage. The steps include receiving and storing the aforementioned specific font from the font distribution server, A program that, in response to an access by the user's terminal to a webpage that uses a specific font managed by the font distribution server, if the edge server holds information about the specific font, sends the specific font to the user's terminal without requesting the specific font from the font distribution server, thereby causing the user's terminal browser to view the webpage that uses the specific font.

Citation Information

Patent Citations

  • Governor for thermal power turbine

    JP1986058902A