KR101345726B1 - Method for printing a captured screen of web pages - Google Patents

Method for printing a captured screen of web pages Download PDF

Info

Publication number
KR101345726B1
KR101345726B1 KR1020090035750A KR20090035750A KR101345726B1 KR 101345726 B1 KR101345726 B1 KR 101345726B1 KR 1020090035750 A KR1020090035750 A KR 1020090035750A KR 20090035750 A KR20090035750 A KR 20090035750A KR 101345726 B1 KR101345726 B1 KR 101345726B1
Authority
KR
South Korea
Prior art keywords
web
screen
web page
web browser
capture
Prior art date
Application number
KR1020090035750A
Other languages
Korean (ko)
Other versions
KR20100117156A (en
Inventor
고준용
성낙철
Original Assignee
주식회사 나고소프트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 나고소프트 filed Critical 주식회사 나고소프트
Priority to KR1020090035750A priority Critical patent/KR101345726B1/en
Publication of KR20100117156A publication Critical patent/KR20100117156A/en
Application granted granted Critical
Publication of KR101345726B1 publication Critical patent/KR101345726B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1287Remote printer device, e.g. being remote from client or server via internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Record Information Processing For Printing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 웹페이지 캡쳐 화면 인쇄 방법에 관한 것으로, 웹 브라우저 화면에 표시되는 웹페이지의 전체 크기가 웹 유저의 모니터 해상도 보다 더 큰 경우, 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각으로 캡쳐한 후 캡쳐된 웹페이지 화면 조각들을 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장할 수 있게 한다.The present invention relates to a method for printing a web page capture screen, wherein when the total size of the web page displayed on the web browser screen is larger than the monitor resolution of the web user, the web browser screen is automatically scrolled in the horizontal and vertical directions to display the web page. After capturing the entire area into several pieces, the captured pieces of the webpage screen can be combined and printed or saved as a single webpage screen.

본 발명에 의하면 웹 브라우저 화면에 표시되는 웹페이지를 캡쳐한 화면을 비트맵 형식으로 변환하여 인쇄할 때 인쇄물의 품질이 떨어지는 문제점, 비트맵의 최대 크기가 제한됨에 따라 웹페이지가 길 경우 웹 사용자가 현재 웹 브라우저 화면을 통해 보고 있는 웹 페이지를 동일하게 인쇄하지 못하는 문제점, 인쇄물의 품질을 개선하기 위해 캡쳐한 화면을 EMF(Enhanced Meta File)로 변환하여 인쇄할 때 웹페이지의 전체 크기가 현재 웹 사용자의 모니터 해상도 보다 더 큰 경우 웹 사용자의 모니터 화면을 벗어나는 내용은 인쇄되지 않는 문제점을 모두 해소할 수 있다.According to the present invention, when printing a webpage displayed on a web browser screen by capturing the screen into a bitmap format, the quality of printed material is reduced, and when the webpage is long because the maximum size of the bitmap is limited. The web page you are viewing through the current web browser screen is not the same. The total size of the web page is the current web user when you print the converted screen to EMF (Enhanced Meta File) to print. If it is larger than the monitor resolution of the web user's monitor screen content that can not be printed all can be solved.

웹페이지, 캡쳐 화면, 인쇄 Web page, screenshot, print

Description

웹페이지 캡쳐 화면 인쇄 방법{Method for printing a captured screen of web pages}Method for printing a captured screen of web pages}

본 발명은 웹페이지 인쇄 방법에 관한 것이며, 더욱 상세히는 웹 브라우저 화면을 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각으로 캡쳐한 후 캡쳐된 웹페이지 화면 조각들을 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장할 수 있게 하는 웹페이지 캡쳐 화면 인쇄 방법에 관한 것이다.The present invention relates to a method for printing a web page, and more particularly, to scroll the web browser screen to capture the entire area of the web page into several pieces, and then to combine the captured web page screen pieces into one web page screen or It relates to a method for printing a web page capture screen that allows to save.

웹 사용자가 웹 브라우저를 이용해서 특정 웹 서버에 접속해서 웹 페이지를 웹 브라우저에 로드했을 때 웹 브라우저는 웹 사용자의 모니터 해상도에 따라 특정 화면 크기로 웹페이지를 표시하며, 통상적으로 웹페이지의 전체 크기 중 일부만을 화면에 표시하고 대신 스크롤바 등의 사용자 인터페이스를 제공해서 사용자가 웹페이지의 다른 부분도 볼 수 있게 한다.When a web user connects to a specific web server using a web browser and loads a web page into the web browser, the web browser displays the web page at a specific screen size according to the web user's monitor resolution. Only some of them are displayed on the screen, but instead provide a user interface, such as a scroll bar, so that users can view other parts of the web page.

예컨대, 웹 사용자의 모니터 해상도가 600×400으로 설정되어 있고, 도 1에 나타낸 바와 같이 전체 크기가 1000×1300인 웹페이지가 웹 브라우저에 로드되면 웹 브라우저는 도 2에서 보이는 것과 같이 웹페이지의 전체 크기 중 일부만을 600×400 크기로 화면에 표시하며, 웹 사용자는 가로 혹은 세로 스크롤바를 활용하여 웹페이지의 전체 크기 중 나머지 다른 부분들을 볼 수 있다.For example, when the monitor resolution of a web user is set to 600 × 400, and a web page having a total size of 1000 × 1300 is loaded into the web browser as shown in Fig. 1, the web browser displays the entire web page as shown in Fig. 2. Only part of the size is displayed on the screen in 600 × 400 size, and web users can use the horizontal or vertical scroll bar to view the rest of the total size of the web page.

이와 같이 웹 브라우저가 웹페이지의 전체 크기 중 일부만을 화면에 표시하는 상태에서, 웹 사용자는 웹 브라우저에서 제공하는 인쇄기능이나 기타 인쇄 프로그램을 통해 현재 웹페이지를 인쇄할 수 있다.As such, while the web browser displays only a part of the entire size of the web page, the web user may print the current web page through a printing function or other printing program provided by the web browser.

그러나, 현재 개발되어 있는 웹 브라우저의 인쇄기능이나 기타 인쇄 프로그램들을 이용해서 웹 브라우저 화면에 표시된 웹페이지를 인쇄하는 경우에는, 화면 캡쳐 기능을 이용해서 캡쳐한 화면을 비트맵 형식으로 변환하여 인쇄하기 때문에 인쇄물의 품질이 떨어진다. 또한, 비트맵을 생성할 수 있는 최대 크기는 웹 사용자 컴퓨터 시스템의 메모리 용량에 따라 제한을 받기 때문에, 웹페이지가 길 경우 정상적으로 인쇄되지 않을 가능성이 크다. 일예로, 웹 브라우저에서 제공되는 인쇄 기능을 사용해서 도 3과 같은 웹 페이지를 인쇄할 경우, 도 4와 같이 웹 사용자가 현재 웹 브라우저 화면을 통해 보고 있는 웹 페이지를 동일하게 인쇄하지 못한다. 도 4를 보면 도 3에서 웹 사용자 실제로 인쇄하고 싶은 내용이 전혀 인쇄되지 않음을 확인할 수 있다.However, when printing the web page displayed on the web browser screen by using the printing function or other printing programs of the developed web browser, the screen capture function is used to convert the captured screen into a bitmap format. Print quality is poor. Also, since the maximum size at which a bitmap can be generated is limited by the memory capacity of the web user computer system, there is a high possibility that the webpage will not be printed normally if it is long. For example, when printing a web page as shown in FIG. 3 using a print function provided by a web browser, as shown in FIG. 4, a web user may not print the same web page currently viewed through a web browser screen. Referring to FIG. 4, it can be seen from FIG. 3 that the user who actually wants to print is not printed at all.

이와 달리, 상기한 웹 브라우저 화면에 표시된 웹페이지 인쇄물의 품질을 개선하기 위한 방안으로 캡쳐한 화면을 EMF(Enhanced Meta File)로 변환하여 인쇄하는 기술이 소개되어 있으나, 이 경우 웹페이지의 전체 크기가 현재 웹 사용자의 모니터 해상도 보다 훨씬 크다면, 도 5에 나타낸 바와 같이, 웹 사용자의 모니터 화면을 벗어나는 내용은 인쇄되지 않는다.In contrast, a technique of converting a captured screen into an Enhanced Meta File (EMF) and printing the document is introduced as a way to improve the quality of the printed web page displayed on the web browser screen. If it is much larger than the current web user's monitor resolution, the content outside the web user's monitor screen is not printed, as shown in FIG.

참고로, 상기 EMF와 같은 메타 파일은 레스터 형태의 그래픽 요소(비트맵 등)와 벡터 형태의 그래픽 요소(선, 도형, 글자 등)를 함께 저장하는 포맷으로, 웹 브라우저에서 제공하는 웹 화면 랜더링 인터페이스를 이용하면 웹 페이지에 포함된 HTML 요소들을 벡터 형태의 그래픽 요소와 레스터 형태의 그래픽 요소로 각각 분리해서 추출이 가능하다. 즉, 웹 페이지에 포함된 비트맵은 레스터 형태로 저장되고 웹 페이지에 포함된 글자, 선, 도형 등은 각각 벡터 형태로 각각 저장된다.For reference, the meta file such as EMF is a format that stores graphic elements (bitmap, etc.) and vector graphic elements (lines, shapes, characters, etc.) in the form of a raster, and is a web screen rendering interface provided by a web browser. By using, HTML elements included in web pages can be separated into graphic elements in vector form and graphic elements in raster form. That is, the bitmap included in the web page is stored in the form of a raster, and the letters, lines, and shapes included in the web page are stored in the form of vectors, respectively.

본 발명은 상기한 바와 같은 종래의 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 웹 브라우저 화면에 표시되는 웹페이지의 전체 크기가 웹 유저의 모니터 해상도 보다 더 큰 경우, 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각으로 캡쳐한 후 캡쳐된 웹페이지 화면 조각들을 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장할 수 있게 하는 웹페이지 캡쳐 화면 인쇄 방법에 관한 것이다.SUMMARY OF THE INVENTION The present invention has been made to solve the conventional problems as described above, and an object of the present invention is to make the web browser screen horizontal and vertical when the total size of the web page displayed on the web browser screen is larger than the monitor resolution of the web user. The present invention relates to a method for printing a web page capture screen that automatically scrolls in the direction to capture the entire area of a web page into several pieces, and then combines the captured web page screen pieces to print or save them as a single web page screen.

상기한 바와 같은 본 발명의 목적을 달성하기 위하여, 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 방법은, 웹 개발자 혹은 웹 사용자가 웹페이지 캡쳐 화면 인쇄 서비스용 에이전트(이하, 캡쳐 인쇄 에이전트라 약칭함)에 포함된 웹 브라우저 탑재 모듈을 통해 상기 캡쳐 인쇄 에이전트를 웹 브라우저에 탑재시키는 제1과정과; 상기 캡쳐 인쇄 에이전트가 웹 브라우저에 탑재된 상태에서 웹 사용자의 인쇄 요청이 있으면, 상기 캡쳐 인쇄 에이전트에 포함된 웹 브라우저 제어 모듈이 웹 페이지의 전체 크기와 현재 웹 브라우저 화면에 표시된 영역의 웹 페이지의 크기를 구해 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤할 횟수를 계산하는 제2과정; 상기 제2과정에 이어서, 상기 캡쳐 인쇄 에이전트에 포함된 스크롤 캡쳐 모듈이 상기 웹 브라우저 제어 모듈에 의해 계산된 스크롤 횟수에 따라 웹 브라우 저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각, 즉 다수의 메타 파일 조각으로 캡쳐하는 제3과정; 상기 제3과정에 이어서, 상기 캡쳐 인쇄 에이전트에 포함된 클리핑 모듈이 캡쳐된 웹페이지 화면 조각들, 즉 다수의 메타 파일 조각들에서 불필요한 그래픽 요소들을 제거하고 순수한 웹 페이지 내용만을 포함하는 2차 메타 파일들을 얻는 제4과정; 및 상기 제4과정에 이어서, 상기 캡쳐 인쇄 에이전트에 포함된 캡쳐 화면 인쇄 모듈이 상기 클리핑 모듈에 의해 얻어진 2차 메타 파일들을 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장하는 제5과정;으로 이루어지는 것을 특징으로 한다.In order to achieve the object of the present invention as described above, the web page capture screen printing method according to the present invention, a web developer or a web user to a web page capture screen printing service agent (hereinafter, abbreviated as a capture print agent) A first step of mounting the capture print agent on a web browser through an included web browser loading module; When the print print agent is mounted in the web browser and a web user prints a request, the web browser control module included in the capture print agent may display the total size of the web page and the size of the web page in the area currently displayed on the web browser screen. Calculating a number of times to automatically scroll the web browser screen horizontally and vertically; Subsequently to the second process, the scroll capture module included in the capture print agent automatically scrolls the web browser screen horizontally and vertically according to the number of scrolls calculated by the web browser control module, thereby covering the entire area of the web page. Capturing a plurality of pieces, that is, a plurality of pieces of meta files; Subsequent to the third process, the clipping module included in the capture print agent removes unnecessary graphic elements from captured web page screen fragments, ie, a plurality of meta file fragments, and includes a secondary web file containing only pure web page contents. 4th process of getting them; And a fifth step of, after the fourth step, a capture screen print module included in the capture print agent to print or store the combined meta files obtained by the clipping module as a single webpage screen. It features.

본 발명자는 웹 사용자가 웹 브라우저를 통해서 보고 있는 웹 페이지를 화면과 동일하게 인쇄하면서 인쇄 품질을 향상시킬 수 있는 기능을 제공하기 위해, 캡쳐된 웹페이지 화면 조각들을 부분적으로 서로 중첩시켜(Layered) 조합함으로써 하나의 웹페이지 화면으로 인쇄 또는 저장하는 LMF(Layered Meta File)라는 기술을 개발하였다.The present inventors have partially combined the captured web page screen pieces with each other to provide a function of improving print quality while printing a web page that a web user views through a web browser in the same manner as the screen. The company developed a technology called Layered Meta File (LMF) that prints or stores a single web page.

본 발명자가 개발한 LMF 기술은 웹 사용자가 웹 브라우저를 통해서 보고 있는 웹 페이지를 비트맵이 아닌 그래픽 명령과 그래픽 데이터를 함께 저장하는 방식으로 웹 페이지를 캡쳐하고 저장 및 인쇄할 수 있는 기술로, 공지의 EMF(Enhanced Meta File) 기술을 응용한 형태로, 웹 페이지를 인쇄시 인쇄 품질을 저하하지 않으면서 웹 페이지의 그래픽 데이터들을 저장하기 위해서 사용하였다.The LMF technology developed by the present inventors is a technology that allows a web user to capture, save, and print a web page by storing graphic commands and graphic data, not bitmaps, on a web page viewed through a web browser. EMF (Enhanced Meta File) technology is applied to store web page graphic data without degrading print quality.

윈도우 운영체제에서는 GDI(Graphic Device Interface)라는 서브시스템을 통해 그래픽 작업을 처리하는데, 이 GDI에서는 DC(Device Context)라는 데이터 구조 체로 폰트, 색상, 굵기, 무늬, 출력 방법 등 출력에 관한 모든 정보를 관리한다. DC에는 화면에 출력을 위한 디스플레이 DC, 인쇄를 위한 프린터 DC, 비트맵 출력에 사용되는 메모리 DC, 그래픽 정보 취득을 위한 메타 파일 DC 등이 있다. 이들 중에서 메타 파일 DC를 사용할 경우 애플리케이션(application)에서 출력을 위해서 GDI로 수행하는 그래픽 명령에 대한 정보를 취득할 수 있는데, 본 발명에서는 이 메타 파일 DC와 웹 브라우저에서 제공하는 웹 브라우저 화면 랜더링 인터페이스를 함께 사용해서 웹 브라우저가 화면에 출력하고 있는 웹 페이지의 내용을 캡쳐한다. 이 기술을 사용하면 비트맵을 사용하는 방식과는 다르게 훨씬 적은 메모리를 사용해서 더 많은 그래픽 정보를 저장할 수 있다.The Windows operating system handles graphics tasks through a subsystem called the Graphic Device Interface (GDI), which manages all information about the output such as font, color, thickness, pattern, and output method using a data structure called DC (Device Context). do. The DC includes a display DC for output to the screen, a printer DC for printing, a memory DC for bitmap output, and a metafile DC for acquiring graphic information. Among them, when using metafile DC, information about a graphic command performed by GDI for output from an application can be obtained. In the present invention, the web browser screen rendering interface provided by the metafile DC and a web browser can be obtained. Used together, the web browser captures the content of the web page that is being displayed on the screen. This technique allows you to store more graphical information using much less memory than using bitmaps.

메타 파일에는 애플리케이션에서 수행한 그래픽 명령을 식별할 수 있는 유일한 아이디 값으로 나타내고, 해당 그래픽 명령을 수행하는데 필요한 파라미터들과 관련된 데이터를 데이터 구조체 형식으로 저장한다. 예를 들어서 애플리케이션에서 선을 그리는 작업을 메타 파일로 저장한다면 메타 파일에는 "EMR_LINETO" 라는 상수 값으로 애플리케이션이 수행한 그래픽 명령이 선 그리기임을 나타내고, 선을 그리는 위치 값(가로, 세로)을 파라미터로 저장한다.The meta file represents a unique ID value that identifies the graphic command executed by the application, and stores data related to the parameters required to execute the graphic command in the form of a data structure. For example, if you save a line drawing in an application as a meta file, the meta file contains a constant value of "EMR_LINETO" to indicate that the graphic command performed by the application is a line drawing, and the position value (horizontal and vertical) for drawing the line as a parameter. Save it.

본 발명에서는 이러한 LMF 기술로 웹 브라우저가 화면에 표시하고 있는 웹 페이지의 내용을 캡쳐하기 위해서 자체 개발한 에이전트 형식의 모듈을 웹 브라우저에 탑재시킨다. 앞에서 설명한 바와 같이 EMF 기술과 웹 브라우저가 제공하는 웹 화면 랜더링 인터페이스를 이용해서 웹 브라우저가 표시하고 있는 웹 화면을 캡쳐하는데, 웹 화면 랜더링 인터페이스는 현재 웹 브라우저의 화면을 입력된 DC에 그 리는 기능을 제공한다. 이때, 본 발명에서는 윈도우 운영체제에서 제공하는 여러 가지 DC들 중에서 메타 파일 DC를 입력으로 주어서 웹 브라우저의 현재 화면을 그대로 캡쳐한다. 그런데, 윈도우 운영체제의 특성상 실행중인 각 프로세스는 별도의 독립된 주소 영역에서 동작하기 때문에 본 발명에서는 ActiveX, BHO(Browser Helper Object), 툴바, 툴바 버튼, 후킹(Hooking) 모듈 등과 같은 웹 브라우저 확장 모듈을 사용하여 자체 개발한 에이전트 모듈을 웹 브라우저와 같은 주소 공간에 탑재시킨다. 이렇게 에이전트 모듈을 웹 브라우저에 탑재하지 않고는 앞에서 설명한 바와 같이 윈도우 운영체제 특성상 웹 브라우저가 제공하는 웹 화면 랜더링 인터페이스 및 메타 파일 기술을 이용할 수 없기 때문에 웹 화면을 올바르게 캡쳐할 수가 없다. In the present invention, in order to capture the contents of the web page displayed on the screen by the LMF technology, the self-developed agent type module is mounted in the web browser. As described above, the web screen displayed by the web browser is captured by using the web screen rendering interface provided by the EMF technology and the web browser. The web screen rendering interface draws the current web browser's screen on the input DC. To provide. In this case, the present invention captures the current screen of the web browser by giving a meta file DC as an input among various DCs provided by the Windows operating system. However, due to the nature of the Windows operating system, since each running process operates in a separate and independent address area, the present invention uses a web browser extension module such as an ActiveX, browser helper object (BHO), toolbar, toolbar button, and hooking module. In-house developed agent module is installed in the same address space as web browser. As described above, it is impossible to capture the web screen correctly because the web screen rendering interface and meta file technology provided by the web browser cannot be used without the agent module installed in the web browser.

이렇게 에이전트 모듈이 웹 브라우저에 탑재되면 에이전트 모듈은 웹 브라우저가 제공하는 웹 화면 랜더링 인터페이스와 웹 페이지에 대한 DOM(Document Object Model) 트리 구조에 대한 정보를 획득한다. DOM 트리 구조는 웹 브라우저가 웹 서버에 접속해서 HTML 파일 형태로 된 웹 페이지를 다운로드 받아서 화면에 표시하기 위해서 HTML 파일을 해석하는데, 이때 HTML 파일의 각 태그를 각각 객체 형태 만든 자료 구조이다.When the agent module is loaded in the web browser, the agent module acquires information about the web screen rendering interface provided by the web browser and the DOM (Document Object Model) tree structure for the web page. The DOM tree structure is a web browser that connects to a web server, downloads a web page in the form of an HTML file, and interprets the HTML file to display it. This is a data structure in which each tag of the HTML file is an object.

도 2에 나타낸 바와 같이, 웹 브라우저는 실제 웹 페이지 중에서 일부만을 웹 브라우저 화면에 표시하는데, 웹 사용자가 원하는 것은 웹 페이지의 전체 내용을 인쇄하는 것이기 때문에, 현재 웹 브라우저 화면만을 인쇄하는 것은 의미가 없다. 또한, 웹 브라우저에서 제공하는 웹 화면 랜더링 인터페이스는 웹 페이지 전체 를 DC에 출력해주는 것이 아니라 현재 웹 브라우저에 표시된 웹 화면만을 DC에 그려주기 때문에 단순히 웹 브라우저가 제공하는 웹 화면 랜더링 인터페이스만을 이용해서는 웹 사용자가 원하는 전체 웹 페이지를 인쇄할 수 없다.As shown in Fig. 2, the web browser displays only a part of the actual web pages on the web browser screen, but since the web user wants to print the entire contents of the web page, it is not meaningful to print only the current web browser screen. . Also, since the web screen rendering interface provided by the web browser does not output the entire web page to the DC, only the web screen displayed on the current web browser is drawn on the DC, so the web user simply uses the web screen rendering interface provided by the web browser. Cannot print the entire web page you want.

따라서, 본 발명에서는 전체 웹 페이지에 대한 화면을 캡쳐하기 위해서 웹 브라우저의 기능을 이용해 강제적으로 웹 화면을 특정 위치로 계속 스크롤시키면서 웹 화면의 조각들을 취득한 후 이 화면 조각들을 다시 조합해서 전체 웹 페이지를 얻는 방식을 사용한다. 그리고 이렇게 전체 웹 페이지의 화면 조각을 얻기 위해서 웹 브라우저 화면을 몇 회 스크롤 시켜야하는지를 알아내기 위해서, 앞에서 취득한 DOM 정보를 이용해 웹 브라우저가 로드하고 있는 웹 페이지의 실제 크기를 픽셀 단위로 얻는다. 그리고 현재 웹 브라우저의 화면 크기를 얻어서 이 두 값으로 전체 웹 페이지를 웹 브라우저 화면에 표시하기 위해서 가로 및 세로 방향으로 몇 회 스크롤 해야 하는지를 계산한다. Therefore, in the present invention, in order to capture the screen of the entire web page, by using the function of the web browser forcibly scrolling the web screen to a specific position while acquiring the pieces of the web screen, the screen pieces are combined again to combine the entire web page. Use the way you get. And in order to figure out how many times the web browser screen has to be scrolled to get the screen fragment of the entire web page, the actual size of the web page loaded by the web browser is obtained in pixels using the DOM information obtained earlier. We then take the screen size of the current web browser and use these two values to calculate how many times we have to scroll horizontally and vertically to display the entire web page on the web browser screen.

그런 후, 클리핑 모듈을 사용해서 1차로 생성된 메타 파일에서 웹 페이지와 관련 없는 그래픽 요소들(웹 브라우저의 화면 일부)을 제거해서 2차 메타 파일을 생성한다. 이런 일련의 과정을 모두 마치면 웹 페이지가 여러 개의 조각으로 캡쳐된다. 이들 조각들은 DOM 트리 구조를 통해서 구한 실제 웹 페이지 상에서의 좌표와 함께 자료 구조 형태로 저장되며, 이는 LMF 모듈에서 위치 정보와 캡쳐된 웹 페이지 화면 조각들을 조합해서 하나의 웹 페이지처럼 저장 및 인쇄 가능하도록 관리되며, 이렇게 캡쳐된 웹 페이지 화면은 파일로 저장해서 차후에 사용할 수도 있다.Then, the clipping module is used to create a secondary metafile by removing graphic elements (part of the screen of the web browser) that are not related to the web page from the primary generated metafile. After completing this series of steps, the web page is captured in pieces. These fragments are stored in the form of a data structure with coordinates on the actual web page obtained through the DOM tree structure, which allows the LMF module to combine location information and captured web page screen fragments for storage and printing as a single web page. The captured web page screen can be saved as a file for later use.

본 발명에 의하면 웹 브라우저 화면에 표시되는 웹페이지를 캡쳐한 화면을 비트맵 형식으로 변환하여 인쇄할 때 인쇄물의 품질이 떨어지는 문제점, 비트맵의 최대 크기가 제한됨에 따라 웹페이지가 길 경우 웹 사용자가 현재 웹 브라우저 화면을 통해 보고 있는 웹 페이지를 동일하게 인쇄하지 못하는 문제점, 인쇄물의 품질을 개선하기 위해 캡쳐한 화면을 EMF(Enhanced Meta File)로 변환하여 인쇄할 때 웹페이지의 전체 크기가 현재 웹 사용자의 모니터 해상도 보다 더 큰 경우 웹 사용자의 모니터 화면을 벗어나는 내용은 인쇄되지 않는 문제점을 모두 해소할 수 있다.According to the present invention, when printing a webpage displayed on a web browser screen by capturing the screen into a bitmap format, the quality of printed material is reduced, and when the webpage is long because the maximum size of the bitmap is limited. The web page you are viewing through the current web browser screen is not the same. The total size of the web page is the current web user when you print the converted screen to EMF (Enhanced Meta File) to print. If it is larger than the monitor resolution of the web user's monitor screen content that can not be printed all can be solved.

이하, 본 발명의 실시예를 첨부된 도면을 참조하여 더욱 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 6은 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 서비스용 에이전트(이하, 캡쳐 인쇄 에이전트라 약칭함)(10)이며, 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 방법은 웹 개발자 혹은 웹 사용자에 의해 웹브라우저에 탑재되는 상기 캡쳐 인쇄 에이전트(10)가 구동함에 따라 수행된다.6 is an agent for a web page capture screen print service according to the present invention (hereinafter, abbreviated as a capture print agent) 10. The method for printing a web page capture screen according to the present invention is performed by a web developer or a web user. It is performed as the capture print agent 10 mounted in the drive.

상기 캡쳐 인쇄 에이전트(10)는 웹 브라우저 탑재 모듈(11), 웹 브라우저 제어 모듈(12), 스크롤 캡쳐 모듈(13), 클리핑(Clipping) 모듈(14), 캡쳐 화면 인쇄 모듈(15)을 포함하여 구성된다.The capture print agent 10 includes a web browser loading module 11, a web browser control module 12, a scroll capture module 13, a clipping module 14, and a capture screen printing module 15. It is composed.

상기 웹 브라우저 탑재 모듈(11)은 상기 캡쳐 인쇄 에이전트(10)를 웹 브라우저에 탑재시키는 역할을 하며, 통상의 웹 브라우저에서 제공하는 ActiveX, BHO(Browser Helper Object), 툴바, 툴바 버튼, 후킹(Hooking) 모듈 등과 같은 웹 브라우저 확장 모듈을 사용하여 만들 수 있다.The web browser loading module 11 mounts the capture print agent 10 in a web browser, and provides an ActiveX, browser helper object (BHO), toolbar, toolbar button, and hooking provided by a general web browser. Module can be created using a web browser extension module.

예컨대, ActiveX 기술을 사용하여 웹 개발자가 웹 브라우저 HTML에 상기 캡쳐 인쇄 에이전트(10)를 탑재시킬 수 있고, 웹 브라우저의 BHO, 툴바, 툴바 버튼들 중에 어느 하나의 기술을 사용하여 웹 사용자가 설치 프로그램으로 상기 캡쳐 인쇄 에이전트(10)를 웹 브라우저에 탑재시킬 수 있다.For example, using ActiveX technology, a web developer can mount the capture print agent 10 in a web browser HTML, and a web user can install the program using any one of the BHO, toolbar, and toolbar buttons of the web browser. The capture print agent 10 can be mounted in a web browser.

상기 웹 브라우저 제어 모듈(12)은 상기 캡쳐 인쇄 에이전트(10)가 웹 브라우저에 탑재된 상태에서 웹 사용자의 인쇄 요청이 있으면, 웹 페이지의 전체 크기와 현재 웹 브라우저 화면에 표시된 영역의 웹 페이지의 크기를 구해 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤할 횟수를 계산한다.The web browser control module 12, when the capture print agent 10 is mounted in a web browser, requests a print request from a web user. The web browser control module 12 displays the total size of the web page and the size of the web page in the area currently displayed on the web browser screen. To calculate the number of times the web browser screen automatically scrolls horizontally and vertically.

상기 스크롤 캡쳐 모듈(13)은 상기 웹 브라우저 제어 모듈(12)에 의해 계산된 스크롤 횟수에 따라 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각, 즉 다수의 메타 파일 조각으로 캡쳐한다.The scroll capturing module 13 automatically scrolls the web browser screen horizontally and vertically according to the number of scrolls calculated by the web browser control module 12 so that the entire area of the web page is divided into pieces, that is, a plurality of meta. Capture to file fragments.

상기 클리핑 모듈(14)은 캡쳐된 웹페이지 화면 조각들, 즉 다수의 메타 파일 조각들에서 불필요한 그래픽 요소들을 제거하고 순수한 웹 페이지 내용만을 포함하는 2차 메타 파일들을 얻는다.The clipping module 14 removes unnecessary graphical elements from the captured webpage screen fragments, ie, multiple metafile fragments, and obtains secondary metafiles containing only pure web page content.

상기 캡쳐 화면 인쇄 모듈(15)은 상기 클리핑 모듈(14)에 의해 얻어진 2차 메타 파일들을 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장한다.The capture screen printing module 15 combines the secondary meta-files obtained by the clipping module 14 to print or store them as one web page screen.

상기 2차 메타 파일과 같은 메타 파일은 상기한 바와 같이 웹 페이지에 포함된 선, 도형, 글자 등의 그래픽 요소를 벡터 형태로 저장하는 특성이 있으므로, 상 기 2차 메타 파일을 단순히 붙여서 출력하면 인쇄 또는 저장 시 각 2차 메타 파일 조각 간에 이격이 발생하는데, 이를 보정하기 위해 상기 캡쳐 화면 인쇄 모듈(15)은 각 2차 메타 파일 조각들을 부분적으로, 예컨대 1∼3 픽셀 정도 서로 중첩시켜(Layered) 조합하는 역할도 수행한다.Since the meta file such as the secondary meta file has a characteristic of storing graphic elements such as lines, figures, and characters included in a web page in a vector form as described above, the secondary meta file is simply pasted and printed. Alternatively, when storing, a gap occurs between each secondary metafile fragment. To correct this, the capture screen printing module 15 partially overlaps each secondary metafile fragment by, for example, 1 to 3 pixels. It also plays a role in combining.

상기와 같이 상기 캡쳐 화면 인쇄 모듈(15)은 불필요한 그래픽 요소가 제거되고 순수한 웹 페이지 내용만 포함하는 캡쳐된 웹페이지 화면 조각들, 즉 상기 2차 메타 파일 조작들을 부분적으로 서로 중첩시켜(Layered) 조합함으로써 하나의 웹페이지 화면으로 인쇄 또는 저장하므로, 본 발명자는 상기 캡쳐 화면 인쇄 모듈(15)을 LMF(Layered Meta File) 모듈이라고 명명한다.As described above, the capture screen printing module 15 combines the captured webpage screen fragments, ie, the secondary metafile manipulations, partially overlapped with each other to remove unnecessary graphic elements and contain only pure webpage content. By printing or storing as one web page screen, the present inventor calls the capture screen print module 15 an LMF (Layered Meta File) module.

상기와 같이 구성되는 본 발명에 따른 캡쳐 인쇄 에이전트(10)를 구동시킴에 따라 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 방법이 수행되는 과정을 구체적으로 설명하면 다음과 같다.When the capture print agent 10 according to the present invention configured as described above is driven, the process of printing the web page capture screen according to the present invention will be described in detail.

웹 사용자가 웹 브라우저를 이용해서 특정 웹 서버에 접속해서 웹 페이지를 웹 브라우저에 로드할 때, 상기 캡쳐 인쇄 에이전트(10)의 웹 브라우저 탑재 모듈(11)이 상기 캡쳐 인쇄 에이전트(10)를 웹 브라우저에 탑재시킨다(S10).When a web user accesses a specific web server using a web browser and loads a web page into the web browser, the web browser loading module 11 of the capture print agent 10 causes the capture print agent 10 to be loaded into the web browser. It is mounted on (S10).

이때, ActiveX 기술을 사용하면 웹 사용자가 상기 웹 페이지에 접속할 때 웹 브라우저 HTML에 상기 캡쳐 인쇄 에이전트(10)가 탑재되게 할 수 있고, 이와 달리 웹 브라우저의 BHO, 툴바, 툴바 버튼들 중에 어느 하나의 기술을 사용하여 웹 사용자가 설치 프로그램으로 상기 캡쳐 인쇄 에이전트(10)를 웹 브라우저에 탑재시킬 수 있다.In this case, when the web user accesses the web page using the ActiveX technology, the capture print agent 10 may be mounted in the web browser HTML. Alternatively, any one of the BHO, toolbar and toolbar buttons of the web browser may be mounted. The technique allows a web user to mount the capture print agent 10 in a web browser with an installation program.

상기와 같이 상기 캡쳐 인쇄 에이전트(10)가 웹 브라우저에 탑재된 상태에서 웹 사용자의 인쇄 요청이 있으면, 상기 웹 브라우저 제어 모듈(12)은 웹 페이지의 전체 크기와 현재 웹 브라우저 화면에 표시된 영역의 웹 페이지의 크기를 구해 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤할 횟수를 계산한다(S12).When the capture print agent 10 is mounted on the web browser as described above, when a web user prints a request, the web browser control module 12 may display the web of the entire size of the web page and the area displayed on the current web browser screen. Obtaining the size of the page to calculate the number of times to automatically scroll in the horizontal and vertical direction of the web browser screen (S12).

상기 웹 브라우저 제어 모듈(12)에 의해 스크롤 횟수가 계산되는 과정(S12)을 구체적으로 설명하면 다음과 같다.The process of calculating the number of scrolls by the web browser control module 12 (S12) will now be described in detail.

웹 브라우저는 웹 서버에 접속해서 HTML 파일 형태로 된 웹 페이지를 다운로드 받아서 화면에 표시하기 위해서 HTML 파일을 해석하는데, 이때 HTML 파일에 정의된 태그를 내부적으로 하나의 객체(Object) 형태로 관리한다. 또한, 이들 객체들은 부모와 자식의 관계가 있어서 웹 브라우저 내부적으로 이들 객체를 트리 형태로 관리하는데 이것을 DOM(Document Object Model) 트리라고 한다. 그리고 DOM 트리에서 각 객체는 HTML 파일에서 하나의 태그에 대응되며 DOM 노드라고 부른다. 이 DOM 노드는 HTML 파일에 CSS(cascading style sheets) 파일 형태로 설정한 태그의 스타일 정보와 이 노드가 현재 웹 브라우저상에서 표시되어 있는 픽셀 단위의 위치 값, 이 노드가 대응되는 태그명 및 HTML 소스 정보 등의 다양한 정보를 제공한다. 참고로, 도 8은 웹 브라우저가 HTML 파일 형태로 된 웹 페이지를 해석하여 DOM 트리를 생성하고, 이 DOM 트리를 웹 사용자가 볼 수 있는 그래픽 형태로 화면에 표시하는 과정을 나타내고 있다.The web browser connects to the web server and downloads a web page in the form of an HTML file and interprets the HTML file to display on the screen. At this time, the tags defined in the HTML file are managed internally as an object. In addition, these objects have a parent-child relationship, and they manage these objects in a tree form inside a web browser. This is called a DOM (Document Object Model) tree. Each object in the DOM tree corresponds to a tag in the HTML file and is called a DOM node. This DOM node contains the style information of the tag set in the form of a cascading style sheets (CSS) file in the HTML file, the position value in pixels that the node is currently displayed in the web browser, the tag name to which the node corresponds, and the HTML source information. Provide a variety of information, such as. For reference, FIG. 8 illustrates a process of generating a DOM tree by interpreting a web page in the form of an HTML file and displaying the DOM tree on a screen in a graphic form that can be viewed by a web user.

상기 웹 브라우저 제어 모듈(12)은 이러한 웹 브라우저로부터 DOM 트리를 얻 고 이 DOM 트리의 노드들 중에서 웹 페이지를 나타내는 DOM 노드(HTML 상의 BODY 또는 HTML 태그에 해당)를 구해서 이 노드의 전체 크기와 현재 웹 브라우저 화면상에 표시되는 영역의 크기를 픽셀 단위로 얻는다.The web browser control module 12 obtains a DOM tree from such a web browser, obtains a DOM node (corresponding to a BODY or HTML tag in HTML) representing a web page among the nodes of the DOM tree, and displays the total size and current value of the node. Gets the size, in pixels, of the area displayed on the web browser screen.

이 노드의 전체 크기를 구하면 웹 페이지의 실제 전체 크기를 픽셀 단위로 구할 수 있으며, 웹 브라우저 화면상에 표시되는 영역의 크기를 구하면 웹 페이지의 내용 중에서 현재 웹 브라우저에 표시되고 있는 영역의 크기를 구할 수 있다.If you get the total size of this node, you can get the actual total size of the web page in pixels. If you get the size of the area displayed on the web browser screen, you can get the size of the area of the web page that is currently displayed in the web browser. Can be.

이때 구해지는 값은 웹 브라우저의 윈도우 크기가 아니라 웹 브라우저의 윈도우 내에서도 웹 페이지가 표시되는 영역만의 크기가 구해진다.The value obtained here is not the window size of the web browser, but the size of only the area where the web page is displayed within the window of the web browser.

예컨대, 도 2에 나타낸 바와 같이, 웹 브라우저가 웹 페이지의 일부 영역을 표시하고 있지만 여기서 구해지는 값은 도 2에서 점선 박스로 표시된 영역의 크기가 구해진다. 도 2는 웹 사용자의 모니터 해상도가 600×400으로 설정되어 있고, 도 1에 나타낸 바와 같이 전체 크기가 1000×1300인 웹페이지가 웹 브라우저에 로드될 때, 상기 웹페이지의 전체 크기 중 일부가 600×400 크기로 화면에 표시되는 상태를 나타낸다.For example, as shown in FIG. 2, although the web browser displays some areas of the web page, the size of the area indicated by the dotted line box in FIG. 2 is obtained. FIG. 2 shows that when a web user's monitor resolution is set to 600 × 400 and a web page with a total size of 1000 × 1300 is loaded into a web browser, as shown in FIG. 1, a part of the total size of the web page is 600 Indicates the state displayed on the screen in size × 400.

도 2에 나타낸 바와 같이, 전체 크기가 1000×1300인 웹페이지 중 일부가 600×400 크기로 웹브라우저에 표시되는 경우, 상기 웹 브라우저 제어 모듈(12)이 DOM 트리에서 웹 페이지 DOM 노드로부터 전체 크기를 구하면 웹 페이지의 크기인 가로 1000 픽셀, 세로 1300 픽셀이라는 값을 얻을 수 있다. 또한, 웹 페이지 DOM 노드에서 현재 웹 페이지에 표시되는 영역의 크기를 구하면 가로 600, 세로 400 픽셀의 값을 얻을 수 있다. As shown in FIG. 2, when a part of web pages having a total size of 1000 × 1300 is displayed in a web browser at 600 × 400 size, the web browser control module 12 may change the full size from a web page DOM node in a DOM tree. If we obtain, we can get the size of 1000 pixels wide and 1300 pixels high. In addition, if the size of the area displayed on the current web page in the web page DOM node is obtained, a value of 600 pixels wide and 400 pixels high can be obtained.

현재 웹 브라우저 화면상에 표시되는 웹 페이지가 가로로 600 픽셀이기 때문에 전체 웹 페이지를 화면에 표시하려면 1000 / 600 = 2회의 가로 방향 스크롤이 필요함을 알 수 있다. 같은 방법으로 전체 웹 페이지의 크기를 현재 웹 브라우저상에 표시되는 영역의 크기로 나누면 총 스크롤 해야 하는 횟수가 나온다.Since the web page currently displayed on the web browser screen is 600 pixels horizontally, it can be seen that 1000/600 = 2 horizontal scrolls are required to display the entire web page. In the same way, dividing the size of the entire web page by the size of the area currently displayed in the web browser yields the total number of scrolls.

즉, 가로 = 1000 / 600으로부터 2회가 필요하고, 세로 = 1300 / 400으로부터 4회가 필요함을 알 수 있다. 따라서, 전체적으로는 도 9에 나타낸 바와 같이, 가로 스크롤 회수 (2회) x 세로 스크롤 회수 (4회) = 총 8회 스크롤 해야 전체 웹 페이지의 내용을 웹 브라우저상에 표시할 수 있음을 알 수 있다.That is, it can be seen that two times are needed from the width = 1000/600, and four times from the length = 1300/400. Therefore, as shown in FIG. 9, it can be seen that the number of horizontal scrolls (2 times) x vertical scrolls (4 times) = 8 scrolls in total to display the contents of the entire web page on the web browser. .

상기와 같이 상기 웹 브라우저 제어 모듈(12)에 의해 웹 브라우저 화면에 대한 가로 및 세로 방향으로의 자동 스크롤 횟수가 계산되고 나면(S12), 다음으로 상기 스크롤 캡쳐 모듈(13)은 계산된 스크롤 횟수에 따라 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각, 즉 다수의 메타 파일 조각으로 캡쳐한다(S14).After the number of automatic scrolls in the horizontal and vertical directions for the web browser screen is calculated by the web browser control module 12 as described above (S12), the scroll capture module 13 then calculates the calculated number of scrolls. Accordingly, the web browser screen is automatically scrolled in the horizontal and vertical directions to capture the entire area of the web page into multiple pieces, that is, multiple meta file pieces (S14).

이때, 도 2에 나타낸 바와 같이, 웹 브라우저가 웹 페이지의 일부 영역을 표시하면, 상기 스크롤 캡쳐 모듈(13)은 상기 웹 브라우저 제어 모듈(12)이 웹 브라우저로부터 구한 DOM 트리와 이 DOM 트리에서 얻은 DOM 노드로부터 구해지는 웹 페이지의 좌표값을 이용하여, 도 10에 나타낸 바와 같이, 현재 웹 브라우저 화면의 초기 스크롤 위치를 웹 페이지의 시작점인 (0,0)의 위치로 이동한 다음, 도 11에 나타낸 바와 같이, 웹 페이지의 시작점에서부터 웹 브라우저 화면을 가로 및 세로 방향으로 ①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧의 순서로 자동 스크롤시켜 웹 페이지의 전체 영역을 도 12 내지 도 19에 나타낸 바와 같은 8개의 조각으로 캡쳐한다.In this case, as shown in FIG. 2, when the web browser displays a part of the web page, the scroll capture module 13 obtains the DOM tree obtained by the web browser control module 12 from the web browser and the DOM tree. Using the coordinate values of the web page obtained from the DOM node, as shown in FIG. 10, the initial scroll position of the current web browser screen is moved to the position of (0,0), which is the starting point of the web page, and then shown in FIG. As shown, the entire area of the web page is automatically scrolled in the order of ①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧ in the horizontal and vertical directions from the start point of the web page. Capture into eight pieces as shown.

또한, 도 20에 나타낸 바와 같이, 매 스크롤 시마다 웹 브라우저에서 제공하는 웹 화면 랜더링 인터페이스를 이용해서 각 스크롤 위치상에서의 웹 브라우저 화면을 상기한 바와 같이 메타 파일 조각으로 만든다. 이러한 메타 파일 조각에는 실제 웹 페이지 내용과는 무관한 그래픽 요소가 포함되어 있다. 일예로, 도 21에 나타낸 바와 같이, 실제 웹 페이지 내용, 즉 순수한 웹 페이지 내용과 무관한 불필요한 스크롤바, 불필요한 외곽선이 포함되어 있다.In addition, as shown in FIG. 20, the web browser screen on each scroll position is made into a meta file fragment as described above by using the web screen rendering interface provided by the web browser at every scroll. These metafile fragments contain graphic elements that are independent of the actual web page content. For example, as illustrated in FIG. 21, unnecessary scroll bars and unnecessary outlines that are not related to actual web page contents, that is, pure web page contents are included.

상기와 같이 상기 스크롤 캡쳐 모듈(13)이 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각, 즉 다수의 메타 파일 조각으로 캡쳐하면(S14), 다음으로 상기 클리핑 모듈(14)이 캡쳐된 웹페이지 화면 조각들, 즉 다수의 메타 파일 조각들에서 불필요한 그래픽 요소들을 제거하고 순수한 웹 페이지 내용만을 포함하는 2차 메타 파일들을 얻는다(S16).As described above, when the scroll capture module 13 automatically scrolls the web browser screen horizontally and vertically to capture the entire area of the web page into multiple pieces, that is, multiple meta file pieces (S14), the clipping is performed next. Module 14 removes unnecessary graphic elements from the captured webpage screen fragments, ie, multiple metafile fragments, and obtains secondary metafiles containing only pure web page content (S16).

도 22는 상기 클리핑 모듈(14)이 도 21에 나타낸 메타 파일로부터 순수한 웹 페이지 내용과 무관한 불필요한 스크롤바, 불필요한 외곽선을 제거하여 2차 메타 파일을 얻는 과정을 나타내고 있으며, 도 23은 이러한 과정을 거쳐 얻은 도 12 내지 도 19의 캡쳐 화면에 대응하는 2차 메타 파일을 나타내고 있다.FIG. 22 illustrates a process in which the clipping module 14 removes unnecessary scroll bars and unnecessary outlines unrelated to pure web page contents from the meta file shown in FIG. 21 to obtain a secondary meta file. The secondary meta file corresponding to the obtained capture screen of FIGS. 12 to 19 is shown.

이들 2차 메타 파일 조각들은 상기 웹 브라우저 제어 모듈(12)이 웹 브라우저로부터 구한 DOM 트리와 이 DOM 트리에서 얻은 DOM 노드로부터 구해지는 실제 웹 페이지 상의 좌표와 함께 자료 구조 형태로 저장되며, 이후 상기 캡쳐 화면 인쇄 모듈(15)에 의해 위치 정보와 캡쳐된 웹 페이지 화면 조각들을 조합해서 하나의 웹 페이지처럼 저장 및 인쇄 가능하도록 관리되고, 파일로 저장해서 차후에 사용할 수도 있다.These secondary metafile fragments are stored in the form of a data structure with the coordinates of the DOM tree obtained by the web browser control module 12 from the web browser and the actual web page derived from the DOM nodes obtained from the DOM tree. The screen printing module 15 manages the combination of the location information and the captured web page screen pieces so that they can be stored and printed as a single web page, and can be saved as a file for later use.

상기와 같이 상기 클리핑 모듈(14)에 의해 2차 메타 파일들이 얻어지고 나면, 다음으로 상기 캡쳐 화면 인쇄 모듈(15)이, 도 24에 나타낸 바와 같이 상기 클리핑 모듈(14)에 의해 얻어진 2차 메타 파일들을 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장한다(S18).After the secondary meta files are obtained by the clipping module 14 as described above, the secondary screen obtained by the clipping module 14 is then captured by the capture screen printing module 15 as shown in FIG. The files are combined and printed or stored as one web page screen (S18).

이때, 상기 2차 메타 파일과 같은 메타 파일은 상기한 바와 같이 웹 페이지에 포함된 선, 도형, 글자 등의 그래픽 요소를 벡터 형태로 저장하는 특성이 있으므로, 상기 2차 메타 파일을 단순히 붙여서 출력하면 인쇄 또는 저장 시 각 2차 메타 파일 조각 간에 이격이 발생하므로, 이를 보정하기 위해 상기 캡쳐 화면 인쇄 모듈(15)은 각 2차 메타 파일 조각들을 부분적으로, 예컨대 1∼3 픽셀 정도 서로 중첩시켜(Layered) 조합한다. 도 24의 경우, ①, ②, ③, ④, ⑤, ⑥, ⑦, ⑧의 메타 파일을 각각 서로 맞닿는 부분에서 1∼3 픽셀 중첩시켜 조합하는 것이 바람직하며, 예컨대 ①번 메타 파일과 ②번 메타 파일이 서로 맞닿는 부분, 즉 ①번 메타 파일의 우측과 ②번 메타 파일의 좌측을 1∼3 픽셀 정도 서로 중첩시켜 조합하고, ①번 메타 파일과 ③번 메타 파일이 서로 맞닿는 부분, 즉 ①번 메타 파일의 하단과 ③번 메타 파일의 상단을 1∼3 픽셀 정도 중첩시켜 조합하며, 나머지 다른 메타 파일들도 이와 같은 방식으로 중첩시켜 조합한다.In this case, since the meta file such as the secondary meta file has a characteristic of storing graphic elements such as lines, figures, and characters included in a web page in a vector form as described above, when the secondary meta file is simply attached and outputted, Since a gap occurs between each secondary metafile fragment when printing or saving, the capture screen printing module 15 partially overlaps each secondary metafile fragment by, for example, 1 to 3 pixels. ) To combine. In the case of Fig. 24, it is preferable to combine the meta files of ①, ②, ③, ④, ⑤, ⑥, ⑦, and ⑧ by overlapping one to three pixels at the portions where they are in contact with each other. The parts where the files are in contact with each other, that is, the right side of the meta file ① and the left of the meta file No. ② overlap each other by about 1 to 3 pixels, and the part where the meta file No. ① and the meta file No. ③ are in contact with each other, that is, the meta line No. ① The lower part of the file and the upper part of the meta file ③ are overlapped by 1 to 3 pixels, and the other meta files are overlapped and combined in the same manner.

이상에서 설명한 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 방법은 상기한 실 시예에 한정되지 않고, 이하의 특허청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양하게 변경하여 실시할 수 있는 범위까지 그 기술적 정신이 있다.The web page capture screen printing method according to the present invention described above is not limited to the above-described embodiments, and has a general knowledge in the field of the present invention without departing from the gist of the present invention as claimed in the following claims. Anyone who grows has the technical spirit to the extent that anyone can make various changes.

도 1은 전체 크기가 1000×1300인 웹페이지를 나타낸 실시예.1 is an embodiment showing a web page having a total size of 1000 × 1300.

도 2는 모니터 해상도가 600×400으로 설정된 경우, 도 1의 웹페이지를 표시한 웹 브라우저 화면.2 is a web browser screen displaying the web page of FIG. 1 when the monitor resolution is set to 600 × 400; FIG.

도 3은 특정 크기의 웹페이지를 표시한 웹 브라우저 화면.3 is a web browser screen displaying a web page of a particular size.

도 4는 도 3에 표시된 웹페이지를 웹 브라우저의 인쇄 기능을 통해 인쇄 미리 보기 한 화면.4 is a screen preview of printing the web page shown in FIG. 3 through a printing function of a web browser.

도 5는 웹페이지의 전체 크기가 모니터 해상도 보다 더 큰 경우, 해당 웹페이지의 인쇄 상태를 나타낸 실시예.5 is an embodiment showing a printing state of a web page when the total size of the web page is larger than the monitor resolution.

도 6은 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 서비스용 에이전트의 실시예.6 is an embodiment of an agent for a web page capture screen print service according to the present invention;

도 7은 본 발명에 따른 웹페이지 캡쳐 화면 인쇄 방법을 나타낸 순서도.7 is a flowchart illustrating a web page capture screen printing method according to the present invention.

도 8은 웹 브라우저가 HTML 파일 형태로 된 웹 페이지를 화면에 표시하는 과정을 나타낸 실시예.8 is a view illustrating a process of a web browser displaying a web page in the form of an HTML file on a screen;

도 9는 웹 브라우저 화면의 가로 및 세로 방향 스크롤 횟수를 나타낸 실시예.9 is a diagram showing the number of horizontal and vertical scrolling times of a web browser screen.

도 10은 현재 웹 브라우저 화면의 초기 스크롤 위치를 웹 페이지의 시작점으로 이동한 상태를 나타낸 실시예.FIG. 10 is a diagram illustrating a state in which an initial scroll position of a current web browser screen is moved to a start point of a web page. FIG.

도 11은 웹 페이지의 시작점에서부터 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각으로 캡쳐하는 과정 을 나타낸 실시예.FIG. 11 is a view illustrating a process of capturing an entire area of a web page into pieces by automatically scrolling the web browser screen horizontally and vertically from a starting point of the web page; FIG.

도 12 내지 도 19는 각각 도 11에 나타낸 웹 페이지 전체 영역의 일부를 스크롤 캡쳐한 웹 브라우저 화면.12 to 19 are scroll views of a part of the entire web page area shown in FIG. 11, respectively.

도 20은 웹 브라우저에서 제공하는 웹 화면 랜더링 인터페이스를 이용해서 각 스크롤 위치상에서의 웹 브라우저 화면을 메타 파일 조각으로 만드는 과정을 나타낸 실시예.20 is a diagram illustrating a process of making a web browser screen into a meta file fragment at each scroll position by using a web screen rendering interface provided by a web browser.

도 21은 도 12의 캡쳐 화면에 대응하는 메타 파일을 나타낸 실시예.FIG. 21 illustrates an embodiment of a meta file corresponding to the capture screen of FIG. 12; FIG.

도 22는 도 21의 메타 파일에서 불필요한 그래픽 요소들을 제거하고 순수한 웹 페이지 내용만을 포함하는 2차 메타 파일을 얻는 과정을 나타낸 실시예.FIG. 22 illustrates a process of removing unnecessary graphic elements from the meta file of FIG. 21 and obtaining a secondary meta file including only pure web page contents. FIG.

도 23은 도 12 내지 도 19의 캡쳐 화면에 대응하는 2차 메타 파일을 나타낸 실시예.FIG. 23 is a diagram illustrating a secondary metafile corresponding to the capture screen of FIGS. 12 to 19.

도 24는 도 23의 여러 개의 2차 메타 파일을 조합해서 하나의 웹페이지 화면을 생성하는 과정을 나타낸 실시예.FIG. 24 is a diagram illustrating a process of generating a web page screen by combining several secondary meta files of FIG. 23; FIG.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

10: 캡쳐 화면 인쇄 서비스용 에이전트 11: 웹 브라우저 탑재 모듈10: Agent for Capture Screen Print Service 11: Module with Web Browser

12: 웹 브라우저 제어 모듈 13: 스크롤 캡쳐 모듈12: Web Browser Control Module 13: Scroll Capture Module

14: 클리핑 모듈 15: 캡쳐 화면 인쇄 모듈14: Clipping Module 15: Capture Screen Print Module

Claims (4)

웹 개발자 혹은 웹 사용자가 웹페이지 캡쳐 화면 인쇄 서비스용 에이전트(이하, 캡쳐 인쇄 에이전트라 약칭함)(10)에 포함된 웹 브라우저 탑재 모듈(11)을 통해 상기 캡쳐 인쇄 에이전트(10)를 웹 브라우저에 탑재시키는 제1과정(S10)과;A web developer or a web user sends the capture print agent 10 to a web browser through a web browser loading module 11 included in an agent for a web page capture screen printing service (hereinafter, abbreviated as a capture print agent) 10. A first process of mounting (S10); 상기 캡쳐 인쇄 에이전트(10)가 웹 브라우저에 탑재된 상태에서 웹 사용자의 인쇄 요청이 있으면, 상기 캡쳐 인쇄 에이전트(10)에 포함된 웹 브라우저 제어 모듈(12)이 상기 웹 브라우저 제어 모듈(12)이 웹 브라우저가 HTML 파일 형태로 된 웹 페이지를 해석하여 생성하는 DOM(Document Object Model) 트리를 얻고 이 DOM 트리의 노드들 중에서 웹 페이지를 나타내는 DOM 노드(HTML 상의 BODY 또는 HTML 태그에 해당)를 구해서 이 노드의 전체 크기와 현재 웹 브라우저 화면상에 표시되는 영역의 크기를 픽셀 단위로 얻어, 웹 페이지의 실제 전체 크기와 웹 페이지의 내용 중에서 현재 웹 브라우저에 표시되고 있는 영역의 크기를 구해 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤할 횟수를 계산하는 제2과정(S12);If a print request from a web user is received while the capture print agent 10 is mounted in a web browser, the web browser control module 12 included in the capture print agent 10 may be configured to execute the web browser control module 12. A web browser obtains a Document Object Model (DOM) tree that parses and generates a web page in the form of an HTML file, and obtains a DOM node (corresponding to a BODY or HTML tag in HTML) representing the web page among the nodes of the DOM tree. Gets the total size of the node and the size of the area displayed on the current web browser screen in pixels, and obtains the actual size of the web page and the size of the area currently displayed in the web browser from the contents of the web page. A second step (S12) of calculating the number of times to automatically scroll in the horizontal and vertical directions; 상기 제2과정(S12)에 이어서, 상기 캡쳐 인쇄 에이전트(10)에 포함된 스크롤 캡쳐 모듈(13)이 상기 웹 브라우저 제어 모듈(12)에 의해 계산된 스크롤 횟수에 따라 웹 브라우저 화면을 가로 및 세로 방향으로 자동 스크롤시켜 웹 페이지의 전체 영역을 여러 개의 조각, 즉 다수의 메타 파일 조각으로 캡쳐하는 제3과정(S14);Following the second process (S12), the scroll capture module 13 included in the capture print agent 10 horizontally and vertically views the web browser screen according to the number of scrolls calculated by the web browser control module 12. A third step (S14) of automatically scrolling in the direction to capture the entire area of the web page into several pieces, that is, a plurality of meta file pieces; 상기 제3과정(S14)에 이어서, 상기 캡쳐 인쇄 에이전트(10)에 포함된 클리핑 모듈(14)이 캡쳐된 웹페이지 화면 조각들, 즉 다수의 메타 파일 조각들에서 불필요한 그래픽 요소들을 제거하고 순수한 웹 페이지 내용만을 포함하는 2차 메타 파일들을 얻는 제4과정(S16); 및Following the third process (S14), the clipping module 14 included in the capture print agent 10 removes unnecessary graphic elements from captured webpage screen fragments, i.e., a plurality of metafile fragments, and generates a pure web. A fourth step S16 of obtaining secondary meta files including only page contents; And 상기 제4과정(S16)에 이어서, 상기 캡쳐 인쇄 에이전트(10)에 포함된 캡쳐 화면 인쇄 모듈(15)이 상기 클리핑 모듈(14)에 의해 얻어진 2차 메타 파일 조각들을 1∼3 픽셀 정도 서로 중첩시켜(Layered) 조합해서 하나의 웹페이지 화면으로 인쇄 또는 저장하는 제5과정(S18);Following the fourth process (S16), the capture screen printing module 15 included in the capture print agent 10 overlaps the secondary metafile pieces obtained by the clipping module 14 by about 1 to 3 pixels. A fifth step (S18) of combining or printing the web page into one web page screen; 으로 이루어지는 것을 특징으로 하는 웹페이지 캡쳐 화면 인쇄 방법.Web page capture screen printing method comprising the. 삭제delete 삭제delete 삭제delete
KR1020090035750A 2009-04-24 2009-04-24 Method for printing a captured screen of web pages KR101345726B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090035750A KR101345726B1 (en) 2009-04-24 2009-04-24 Method for printing a captured screen of web pages

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090035750A KR101345726B1 (en) 2009-04-24 2009-04-24 Method for printing a captured screen of web pages

Publications (2)

Publication Number Publication Date
KR20100117156A KR20100117156A (en) 2010-11-03
KR101345726B1 true KR101345726B1 (en) 2013-12-30

Family

ID=43403814

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090035750A KR101345726B1 (en) 2009-04-24 2009-04-24 Method for printing a captured screen of web pages

Country Status (1)

Country Link
KR (1) KR101345726B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101958577B1 (en) 2017-12-29 2019-03-14 김기수 Method for analyzing web page based on web page capture image and system using the same

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140368869A1 (en) 2013-06-12 2014-12-18 Samsung Electronics Co., Ltd. Method of printing web page by using mobile terminal and mobile terminal for performing the method
KR20210045891A (en) 2019-10-17 2021-04-27 삼성전자주식회사 Electronic device and method for controlling and operating of screen capture
KR20210123009A (en) 2020-04-02 2021-10-13 삼성전자주식회사 Electronic device and method for controlling and operating of screen capture

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100526109B1 (en) * 2005-06-28 2005-11-08 주식회사 디자인메이드 Method for printing web pages
KR20080016004A (en) * 2006-08-17 2008-02-21 주식회사 디자인메이드 Method for printing web pages included advertisement

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100526109B1 (en) * 2005-06-28 2005-11-08 주식회사 디자인메이드 Method for printing web pages
KR20080016004A (en) * 2006-08-17 2008-02-21 주식회사 디자인메이드 Method for printing web pages included advertisement

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101958577B1 (en) 2017-12-29 2019-03-14 김기수 Method for analyzing web page based on web page capture image and system using the same

Also Published As

Publication number Publication date
KR20100117156A (en) 2010-11-03

Similar Documents

Publication Publication Date Title
US20110221766A1 (en) Method for printing a captured screen of web pages
CN106055290B (en) image processing apparatus and image processing method
JP4966533B2 (en) Printing system, printing method, printing program, and recording medium
JP6157210B2 (en) Document conversion apparatus, document conversion method, and program
EP3832459A1 (en) Graphic drawing method and apparatus, device, and storage medium
CN111291533B (en) Sentence segment to be displayed display method and device, computer equipment and storage medium
US20090265626A1 (en) Apparatus and method of controlling display
US9117314B2 (en) Information output apparatus, method, and recording medium for displaying information on a video display
CN111915705B (en) Picture visual editing method, device, equipment and medium
JP6508978B2 (en) INFORMATION PROCESSING SYSTEM, SERVER, CONTROL METHOD, AND COMPUTER PROGRAM
KR101345726B1 (en) Method for printing a captured screen of web pages
CN112528184A (en) Sending method and device of rich text mail, computer equipment and storage medium
JP5455714B2 (en) How to print the web page capture screen
US8751923B2 (en) Image processing apparatus, image processing method, and storage medium
JP4874363B2 (en) Web page display method using browser plug-in
KR20100031784A (en) Method for printing a captured screen of web pages
JP6566850B2 (en) Information processing system, information processing system control method, information processing apparatus, and program
JP2012088788A (en) Information processor, information processing method, and program
RU2573271C2 (en) Information processing device, web browser control method and storage medium storing programme therefor
WO2014174369A2 (en) Mapping of defined regions within a webpage
JP2001043051A (en) Information processor, control method thereof, and storage medium
CN113703699B (en) Real-time output method and device for electronic file
US20140082474A1 (en) Tiled display list
JP2003330658A (en) Printing system
JP2005165452A (en) Information processor, client terminal equipment, information processing method, its program and recording medium

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170105

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180104

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181219

Year of fee payment: 6