KR960009837B1 - Character output method - Google Patents
Character output method Download PDFInfo
- Publication number
- KR960009837B1 KR960009837B1 KR1019890008426A KR890008426A KR960009837B1 KR 960009837 B1 KR960009837 B1 KR 960009837B1 KR 1019890008426 A KR1019890008426 A KR 1019890008426A KR 890008426 A KR890008426 A KR 890008426A KR 960009837 B1 KR960009837 B1 KR 960009837B1
- Authority
- KR
- South Korea
- Prior art keywords
- character
- output
- pattern
- character pattern
- frame
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/153—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using cathode-ray tubes
Abstract
요약없음No summary
Description
제1도는 본 발명의 1실시예인 문자출력 프로그램의 동작을 도시한 흐름도.1 is a flowchart showing the operation of a character output program which is one embodiment of the present invention.
제2도는 제1도의 문자출력 프로그램을 실행하는 출력장치의 구성도.2 is a configuration diagram of an output device for executing the character output program of FIG.
제3도는 문자패턴 변경전의 출력예를 도시한 도면.3 is a diagram showing an example of output before changing a character pattern.
제4도는 제3도의 문자패턴 변경에 의해 개량된 예를 도시한 도면.4 is a view showing an example improved by the character pattern change of FIG.
제5도는 문자패턴의 출력행과 문자틀의 배치관계를 도시한 도면.5 is a diagram showing an arrangement relationship between an output line of a character pattern and a character frame.
제6도는 문자패턴 배치위치를 상세히 설명한 도면.6 is a view for explaining the character pattern arrangement position in detail.
제7도는 골격문자방식의 설명도.7 is an explanatory diagram of a skeleton character method.
제8도∼제14도는 문자패턴 변경의 대체 처리를 도시한 흐름도.8 to 14 are flowcharts showing replacement processing of character pattern change.
제15도는 검은 바탕의 밀도의 비율에서 구한 확대 축소율을 보정하는 처리의 흐름도.15 is a flowchart of a process for correcting an enlargement and reduction ratio obtained from the ratio of the density of a black background.
제16도는 문자폰트사전의 데이타구조를 도시한 도면.FIG. 16 shows a data structure of a text font dictionary. FIG.
제17도는 확대 축소율의 임계값을 사용했을때의 골격점의 변화를 도시한 도면.FIG. 17 is a diagram showing changes in skeletal points when using a threshold of enlargement and reduction ratio. FIG.
본 발명은 문자열 출력법에 관한 것으로, 특히 한자, 가나등의 문자열의 인자 및 표시방법의 개량에 관한 것이다.BACKGROUND OF THE
종래의 인쇄시스템이나 워드프로세서에서의 문자출력법에서는 문자틀에 대한문자패턴의 크기와 위치가 문자마다 결정되어 있다. 이들의 문자틀내에서의 문자패턴부분(이것을 자면이라 부른다)의 크기나 위치는 그 문자패턴을 포함하는 문자세트인 폰트를 디자인할때 결정된다.In the character printing method of the conventional printing system or word processor, the size and position of the character pattern for the character frame are determined for each character. The size or position of the character pattern portion (called a letter) in these character frames is determined when designing the font, which is the character set containing the character pattern.
즉, 각 문자패턴의 성질이나 동일 폰트내의 여러 문자의 밸런스등을 고려해서 정해진 폰트패턴으로서 확정한다.In other words, the font pattern is determined in consideration of the properties of each character pattern, the balance of various characters in the same font, and the like.
상기한 종래 기술에서는 동일 폰트내의 각 문자패턴의 크기나 위치를 해당 폰트의 문자를 나란히 했을때 균형있게 느껴지도록 고려해서 디자인하고 있다. 그러나 어떠한 문자를 인접시킨 경우에도 균형있게 느껴지는 문자패턴을 결정하는 것은 실제로 곤란하다. 즉, 완전히 같은 패턴의 문자가 그것에 인접하는 문자에 의해서 어떤 경우는 적절한 크기로 느껴지고, 다른 경우에는 크게 느껴지며, 또 다른 경우에는 작게 느껴질 수가 있다. 제3도의 (A),(B)에서 田의 문자패턴은 동일하지만 (A)의 문자열에서는 적당한 크기로 느껴지고, (B)의 문자열에서는 작게 느껴진다.In the above-described prior art, the size or position of each character pattern in the same font is designed in such a manner that it is balanced when the characters of the corresponding font are placed side by side. However, it is actually difficult to determine a character pattern that feels balanced even when any character is adjacent. That is, characters of exactly the same pattern may be felt to be appropriately sized in some cases, large in other cases, and small in other cases by characters adjacent thereto. In Fig. 3 (A) and (B), the letter pattern of 田 is the same, but in the character string of (A), it is felt to be of an appropriate size, and it is small in the character string of (B).
이것을 해결하기 위해서 크기가 다른 문자패턴을 혼합해서 사용한다는 방법은 사용할 수 없다. 그것은 크기가 다른 문자에서는 문자틀의 폭이 달라져서 문자열로서의 레이아우트가 손상되기 때문이다. 제5도는 그것을 도시한 예이다. 제5도(A)의 田이라는 문자패턴(501)이 작아 보인다는 문제를 해결하기 위해 보다 큰 크기의 문자패턴을 사용한 예가 제5도(B)이다. 제5도(B)에서의 田의 문자패턴(502)는 그 크기만을 비교하면 다른 문자와 균형은 좋지만 문자틀의 크기가 크게 되어 있으므로 다음의 문자 さ의 배치위치가 오른쪽으로 치우쳐진다. 즉, 상기한 문제를 해결하기 위해 다른 크기의 문자패턴을 그대로 이용한다는 방법은 사용하지 못한다.To solve this problem, you cannot use a mixture of character patterns of different sizes. This is because the width of the character frame is different for different size characters, which damages the layout of the string. 5 is an example showing it. In order to solve the problem that the
본 발명의 목적은 상기 문제를 해결하기 위해 지정크기의 문자틀의 문자패턴열을 출력할때 그 문자틀내에서의 문자패턴의 크기 및 위치의 변경을 가능하게 하여 인접문자등의 조건에 따라서 이 변경을 실시하고, 문자배열등의 조건에 의하지 않고 항상 균형이 좋은 문자패턴출력을 부여할 수 있는 문자출력방식을 제공하는 것이다.An object of the present invention is to change the size and position of the character pattern in the character frame when outputting the character pattern string of the character frame of the specified size to solve the above problem, and this change according to the conditions of adjacent characters, etc. It is to provide a character output method that can always provide a balanced character pattern output irrespective of conditions such as character arrangement.
상기 목적은 다음 수단에 의해 달성된다. 기준문자패턴을 문자폰트사전에 유지하고, 이것을 확대 축소하는 수단을 마련하여 출력해야 할 문자열중의 해당문자가 출력할때에 해당문자의 문자패턴을 문자폰트사전에서 인출한다.This object is achieved by the following means. The reference character pattern is maintained in the character font dictionary, and a means for expanding and reducing the character font is prepared so that the character pattern of the character is extracted from the character font dictionary when the character in the character string to be printed is output.
지정크기의 문자패턴을 얻은 후 또 이것을 확대 축소할 필요가 있는가 없는가를 판정하여 그 필요가 있으면 상기 확대 축소수단에 의해서 확대 또는 축소를 실행한다. 그 패턴에 대한 문자폰트사전중의 배치위치정보를 확대 축소율에 따라 보정하여 출력문자패턴을 표시영역내에 배치한다.After obtaining a character pattern of a specified size, it is determined whether or not it is necessary to enlarge and reduce it, and if necessary, the enlargement or reduction means is executed by the enlargement and reduction means. The arrangement position information in the character font dictionary for the pattern is corrected according to the enlargement and reduction ratio, and the output character pattern is arranged in the display area.
문자폰트사전은 문자마다 문자의 종별을 나타내는 코드, 표시패턴을 나타내는 문자의 스트로크의 골격점 또는 윤곽점의 좌표군 및 문자틀내의 문자패턴의 배치기준점의 위치정보를 기억한다. 문자폰트사전은 이것을 문자크기마다 유지할 수도 있다. 문자패턴을 확대 축소하는 수단은 문자폰트사전에서 리드된 문자패턴을 기본으로 종래 기술의 도형처리에 의해 변형을 실행하는 것이다. 문자의 코드는 문자폰트사전내에 기억된 문자패턴군중에서 처리대상으로 하는 문자패턴을 검색해서 인출하는 것에 사용한다. 한편, 문자크기는 출력 문자틀의 크기를 결정함과 동시에 문자폰트사전 또는 문자 패턴의 선택에 사용한다. 문자폰트사전내의 문자패턴 배치기준점의 위치정보는 지정된 크기의 문자행의 어느위치에 해당문자틀을 위치결정하는가를 정한다. 문자패턴의 배치위치의 보정값을 결정하는 수단은 확대 축소후의 문자패턴을 출력크기의 문자틀내에 균형있게 배치할 수 있도록 문자패턴을 이동할때의 이동량을 결정한다. 문자패턴변경의 조건은 변경의 방법이나 변경의 유무를 결정한다. 이 조건으로서는 인접문자나 출력대상문자의 코드, 문자패턴의 성질 또는 변경대상문자세트등이 있다. 변경조건으로서 사용되는 문자패턴의 성질의 기준값 정보라 함은 이것과 출력대상 문자패턴의 성질을 비교하는 것에 의해서 해당문자의 문자패턴의 변경방법을 결정하는 기준으로 되는 정보이다.The character font dictionary stores a code indicating the type of character for each character, a coordinate group of a skeleton point or contour point of a stroke of a character representing a display pattern, and position information of an arrangement reference point of a character pattern in the character frame. Character font dictionaries may maintain this for each character size. The means for enlarging and reducing the character pattern is to perform the deformation by the figure processing of the prior art based on the character pattern read from the character font dictionary. The character code is used to retrieve and retrieve the character pattern to be processed from the character pattern group stored in the character font dictionary. On the other hand, the character size is used to select the font font dictionary or character pattern while determining the size of the output character frame. The position information of the character pattern placement reference point in the character font dictionary determines at which position of the character line of the specified size the character frame is positioned. The means for determining the correction value of the arrangement position of the character pattern determines the amount of movement when the character pattern is moved so that the character pattern after enlargement and reduction can be balanced in the character frame of the output size. The condition of the character pattern change determines the method of change or the presence or absence of the change. This condition includes the code of the adjacent character, the character to be printed, the nature of the character pattern, or the character set to be changed. The reference value information of the property of the character pattern used as the change condition is information used as a criterion for determining the method of changing the character pattern of the corresponding character by comparing this with the property of the character pattern to be output.
이상 기술한 것에 의해 문자출력시의 변경은 문자틀내의 문자패턴의 변경에만 한정되므로 문자틀 그 자체는 미리 정해진 위치에 배치할 수 있다. 이것에 의해서 문자열로서의 레이아우트를 유지하면서 문자크기의 균형에 우수한 출력결과가 얻어진다.Since the change at the time of character output is limited only to the change of the character pattern in a character frame by the above description, the character frame itself can be arrange | positioned at a predetermined position. As a result, an output result excellent in the balance of the character size is obtained while maintaining the layout of the character string.
이하, 본 발명의 1실시예를 도면에 따라 상세히 설명한다.Hereinafter, one embodiment of the present invention will be described in detail with reference to the drawings.
제2도는 일본어 워드프로세서의 구성도이다. 도면중의 부호(201)은 처리장치, (202)는 키보드, (203)은 디스플레이, (204)는 프린터, (205)는 디스크기억장치, (206)은 메인메모리이다. 디스크기억장치(205)는 문자 출력 프로그램 및 각 문자의 기본 문자패턴을 수용한 문자폰트사전을 저장한다. 문자출력 프로그램은 디스크기억장치(205)에서 메인메모리(206)으로 리드되어 처리장치(201)에서 실행된다. 이 프로그램은 출력의 대상으로 되는 문자열에 관해서 출력문자크기, 문자코드열 및 각종 커맨드를 키보드(202)에서 리드하여 입력된 값을 디스플레이(203)에 표시한다. 이 프로그램은 지정된 문자코드의 문자패턴을 디스크기억장치(205)에서 리드한다. 이때, 폰트사전중에 문자크기마다 문자패턴이 유지되어 있으면 지정된 크기의 문자패턴을 인출한다. 한편, 폰트사전에 기준크기의 문자패턴만 유지되어 있으면 이것에 따라서 지정된 크기의 문자패턴을 작성한다. 이와 같이 해서 지정크기의 문자패턴을 얻은 후 이 프로그램은 변경조건에 따라서 문자틀내의 문자패턴만을 변경해서 변경문자패턴을 생성하여 출력문자패턴열상에 배치하고, 디스플레이(203) 또는 프린터(204)로 출력한다.2 is a block diagram of a Japanese word processor. In the figure,
다음에 이 프로그램의 상세한 동작을 제1도에 따라 설명한다. 제1도는 제2도의 처리장치(201)에서 실행되는 본 발명의 문자출력 프로그램의 동작을 도시한 흐름도이다.Next, the detailed operation of this program will be described with reference to FIG. FIG. 1 is a flowchart showing the operation of the character output program of the present invention executed in the
본 실시예에서의 문자폰트사전의 데이타구조를 제16도에 도시한다. 문자폰트사전(160)에서의 문자패턴 유지형식은 문자의 각 스트로크의 종류(167)과 그 스트로크의 골격점의 좌표(170)과 굵기(168)등의 파라미터라는 3종류의 정보의 조합으로서 문자패턴을 갖는, 소위 골격문자방식으로 한다. 이 방식의 예는 일본국 특허공개공보 소화 60-202476호(특허출원 소화 59-58263호)에 기재되어 있다. 골격문자방식에 대해서 제7도에 따라 설명한다.16 shows a data structure of the character font dictionary in this embodiment. The character pattern holding format in the
골격문자방식에서는 문자패턴을 몇개의 기본패턴의 조합으로 표현하고, 이 기본패턴을 스트로크라 한다. 한자인 경우는 16종류 정도의 스트로크가 있으면 이들의 조합에 의해 모든 문자패턴을 표현할 수 있게 된다. 제7도의 패턴은 한자를 구성하는 스트로크의 하나인 좌측 테일스트로크를 나타낸다. 좌측 테일스트로크는 위에서 왼쪽 아래 방향으로 펜을 움직이는 스트로크로서, 예를 들면 休라는 문자의 사람인변 人의 제 1 획의 부분에 사용된다. 문자폰트사전(160)의 정보로서는 문자를 구성하는 각 스트로크의 종류(167)과 그 스트로크의 골격점의 좌표(170)과 굵기(168)등의 파라미터라는 3종류의 정보를 유지한다. 제7도의 S1, S2 및 S3은 골격점을 나타낸다. 골격점은 문자틀의 왼쪽 아래 모서리를 원점으로 하는 직교좌표(X,Y)로 나타낸다. 이들 각 골격의 위치와 굵기파라미터 W1, W2, W3에서 스트로크 종별로 특유의 윤곽 특징점 P1, P2, P3, P4, P5 및 P6을 발생시킨다. 이들의 윤곽특징점을 스트로크 종별에 따라 직선, 스플라인곡선 및 베제(Bezier)곡선등의 선으로 연결하는 것에 의해 스트로크의 윤곽을 만들고, 내부를 필링하는 것에 의해 윤곽패턴을 생성한다. 이와 같이 생성한 스트로크의 윤곽패턴을 합성해서 1문자의 패턴을 만든다. 골격문자방식에서의 문자패턴의 확대 축소방법으로서는 먼저 골격패턴의 확대 축소를 실행한 후 윤곽패턴을 생성하는 방법이 고려된다. 즉, 각 골격점의 좌표(X,Y)에 대하여 문자패턴의 확대 축소율 n을 곱해서 좌표의 확대 축소를 실행하고, 그 결과(nX,nY)를 골격점 좌표로서 얻어 바라는 크기의 골격패턴 정보를 구하는 방법이다. 또, 굵기파라미터에 대해서도 상기와 마찬가지로 문자패턴의 확대 축소율 n으로 정해지는 정수를 곱하는 것에 의해 바라는 크기의 문자굵기을 구할 수가 있다.In the skeletal character method, a character pattern is expressed by a combination of several basic patterns, and this basic pattern is called a stroke. In the case of Chinese characters, if there are about 16 types of strokes, all character patterns can be expressed by the combination thereof. The pattern of FIG. 7 shows the left tail stroke, which is one of the strokes forming the Chinese character. The left tail stroke is a stroke that moves the pen from the top left to the bottom, and is used, for example, in the portion of the first stroke of the person side of the letter 休. As the information of the
제1도에 있어서, 부호(101)은 출력문자의 코드와 인접문자의 코드 및 출력문자의 문자크기로서 문자틀의 폭 w와 높이 h를 리드하는 처리이다. (102)는 상기 출력문자의 문자크기 및 문자코드를 문자폰트사전 리드처리루틴에 대해서 부여하여 문자패턴의 각 골격점의 좌표 Pi(Xi,Yi)(단 1i골격점의 총수)와 문자배치위치 r을 구하는 처리이다. (103)은 출력문자코드(163)을 키로서 문자폰트사전(160)을 검색하여 출력문자패턴의 검은 바탕의 밀도 B(165)를 리드하는 처리이다. 여기서 문자패턴의 검은 바탕밀도라 함은 기준문자패턴의 문자틀내의 총도트수에 대한 문자의 출력패턴상의 도트수의 비율이다. (104)는 출력문자의 코드가 문자패턴 변경테이블에 포함되는가 아닌가를 판정하고, 그 결과에 따라 분기하는 처리이다. (105)는 처리(104)의 판정결과가 Yes인 경우에 인접문자코드를 키로서 문자폰트사전을 검색하여 인접문자패턴의 검은 바탕밀도 C를 리드하는 처리이다. (106)은 출력문자의 문자패턴 검은 바탕밀도 B와 인접문자의 문자패턴 검은 바탕밀도 C의 비율 m을 구하는 처리이다.In Fig. 1, reference numeral 101 denotes a process of reading the width w and the height h of the character frame as the code of the output character, the code of the adjacent character, and the character size of the output character.
(107)은 문자패턴 확대 축소조건의 최소값 K를 리드하는 처리이다. (108)은 출력문자패턴을 확대 축소할 필요가 있는가 없는가를 처리(106) 및 (107)에서 구한 m, K에 따라서 판정하는 처리이다. (109)는 처리(108)의 판정결과가 Yes인 경우 처리(106)에서 구한 검은 바탕밀도비 m에 따라 출력문자의 문자패턴 확대 축소율 n을 결정하는 처리이다. (110)은 문자패턴의 골격점좌표를 일시적으로 세이브하는 처리, (111)은 문자패턴 골격점의 좌표를 처리(109)에서 결정한 배율 x으로 확대 축소하는 처리이다. (112)는 문자패턴 확대 축소에 따른 문자패턴 이동에 필요한 x축 방향의 배치위치 보정값 dx를 문자크기인 문자틀의 폭 w와 처리(109)에서 결정한 문자패턴 확대 축소율 n에 따라서 결정하는 처리이다. (113)은 처리(112)와 마찬가지로 Y축 방향의 배치위치 보정값 dy를 문자배치위치 r과 문자패턴 확대 축소율 n에 따라서 결정하는 처리이다. (114)는 처리(112)와 처리(113)에서 결정한 보정값 dx 및 dy 만큼 문자패턴의 골격점좌표를 이동하는 처리이다. (115)는 처리(114)의 이동에 의해 출력문자틀에서 튀어나온 골격점이 1개라도 있는가 없는가를 판정하는 처리이다. (116)은 처리(115)의 판정결과가 Yes인 경우에 문자패턴의 골격점좌표를 처리(110)에서 세이브해 두었던 변경전의 값으로 회복하는 처리이다.
(117)은 처리(104)의 판정결과가 No인 경우, 처리(108)의 판정결과가 No인 경우, 처리(115)의 판정결과가 No인 경우 및 처리(116)후에 실행되고, 각각에 정해진 골격점의 좌표 Pi(Xi,Yi)에 따라 윤곽을 발생시켜 문자패턴을 생성하고, 출력문자틀내에 배치하는 처리이다.117 is executed when the determination result of the processing 104 is No, when the determination result of the processing 108 is No, when the determination result of the processing 115 is No and after the processing 116, respectively. A process of generating a character pattern by generating an outline according to the coordinates Pi (Xi, Yi) of a predetermined skeleton point and placing it in the output character frame.
처리(101)에서 리드하는 문자크기는 출력문자를 크기, 즉 폭 w 및 높이 h를 부여한다. 처리(102)는 이 문자크기와 문자코드를 폰트사전 리드처리루틴에 부여한다.The character size to be read in the process 101 gives the output character a size, i.e., width w and height h. The
폰트사전 리드처리루틴은 폰트사전중에 해당 크기의 문자패턴이 있으면 폰트사전에서 인출하고, 없으면 해당문자크기로 되도록 기준패턴을 확대 축소한다. 여기서 인출한 문자패턴은 문자틀의 왼쪽아래 모서리를 원점으로 하는 직교 좌표로 나타낸 문자 스트로크의 골격점좌표 Pi(Xi,Yi)의 계열이다. 이것에서 스트로크의 윤곽을 생성하여 문자의 출력패턴을 생성하는 것은 일본국 특허출원 소화 59-58263호등의 방법으로 가능하다. 즉, 생성한 윤곽점사 이를 직선 또는 스플라인곡선등으로 연결해진다. 다음에 처리(102)의 문자배치위치 r은 문자틀을 행으로 레이아우트할때에 필요한 배치정보이다. 본 실시예에서는 가로쓰기출력을 전제로서 문자틀상 Y=r의 선을 출력행의 베이스라인상에 배치해야 할 것을 나타낸 것으로 한다.If the font dictionary read processing routine includes a character pattern of the corresponding size in the font dictionary, the font dictionary is drawn out from the font dictionary. The drawn character pattern is a series of skeletal point coordinates Pi (Xi, Yi) of a character stroke represented by rectangular coordinates with the origin as the lower left corner of the character frame. In this way, the outline of the stroke can be generated to generate the output pattern of the character by a method such as Japanese Patent Application No. 59-58263. That is, the generated contour dots are connected by a straight line or a spline curve. Next, the character arranging position r of the
다음의 처리(103)에서의 문자패턴 검은 바탕밀도에 대해서는 다음에 기술한다. 처리(104)에서는 문자패턴 변경테이블을 참조해서 그중에 해당문자코드가 있는 경우에 한해서 해당문자패턴을 확대 축소하는 것을 결정한다. 통상적인 디자인을 거친 문자폰트이면, 본 특허의 목적으로 하고 있는 문자패턴의 변형이 필요하게 되는 문자의 종류는 문자폰트중의 문자의 극히 일부분이다. 변경테이블에는 예를 들면 日, 目, 田등 비교적 문자의 디자인이 단순하므로 인접문자와의 관계를 문자패턴의 크기가 외관상 변하는 문자의 코드군을 갖는 것이 하나의 방법이다. 이 테이블의 내용을 별도로 변경할 수가 있다. 다음의 처리(105)에서 처리(116)까지는 문자패턴 변경처리의 주요부로서, 후에 구체적으로 설명한다. 처리(117)은 종래의 골격방식의 문자패턴 생성기술을 사용해서 문자패턴을 생성하여 출력행으로 배치한다.The text background black density in the following
여기서 제4도를 참조해서 문자패턴의 변경방법의 구체적인 예를 설명한다. 이 변경의 필요성에 대해서는 제3도에 의해 이미 설명하였다. 제3도(A),(B) 각각에 나타나는 田이라는 문자패턴을 완전히 동일한 문자패턴이지만 인접문자가 다른것에 의해서 제3도(A)에서는 적절한 크기로, 제3도(B)에서는 작다고 느껴진다. 그래서 제3도(B)에서의 田의 문자패턴(301)을 문자틀의 크기를 보존하면서 확대한 것이 제4도(B)의 田의 문자패턴(401)이다. 제4도에서의 다른 3개의 문자패턴(301),(302) 및 (303)은 제3도의 대응문자패턴과 동일하다. 여기서 상기 제4도(B)의 田의 문자패턴(401)의 확대율은 제3도(B)의 武의 문자패턴(303)과 田의 문자패턴(301)의 검은 바탕밀도의 값의 비율에서 구한 것이다. 그런데 문자패턴을 확대 축소하면 출력행상의 베이스라인에 맞추어서 배치해야할 위치인 문자배치위치도 그것에 따라서 확대 축소하는 것이 보통이다.Here, with reference to FIG. 4, the specific example of the method of changing a character pattern is demonstrated. The need for this change has already been explained by FIG. The letter pattern "da" shown in each of Figs. 3A and 3B is exactly the same letter pattern, but due to the difference in adjacent characters, it is considered to be a suitable size in Fig. 3A and small in Fig. 3B. Accordingly, the
그러나 여기서는 문자틀크기를 그래로 해서 그중 문자패턴만을 확대 축소하고자 하므로 확대 축소후의 문자배치위치의 조정이 필요하다. 이 조정량이 배치위치 보정값이다. 이 값의 결정방법에 대해서는 다음에 기술한다.However, in this case, since the character frame size is to be enlarged and reduced only, the character arrangement position after expansion and reduction is necessary. This adjustment amount is a batch position correction value. How to determine this value is described next.
제1도의 처리(105)에서 처리(116)에 이르는 문자패턴 변경처리를 제16도에 따라 구체적으로 설명한다.Character pattern changing processing from the
제16도에서는 문자패턴의 성질을 나타내는 정보의 하나인 검은 바탕밀도(165)에 따라 문자패턴을 변경한다. 문자패턴의 검은 바탕밀도(165)는 기준문자패턴의 문자틀내의 총도트수에 대한 문자의 출력패턴상의 도트수의 비율로 나타낸다. 이 검은 바탕밀도(165)는 이것을 미리 문자폰트사전(160)에 기억해두는 것에 의해 상술한 처리(102)와 같이 문자코드(163)으로 검색이 가능하다. 지금 처리(102)에서 구한 결과로서 문자패턴 田의 검은 바탕밀도 B는 31%라고 한다. 이미 출력이 완료한 인접문자인 武(303)의 검은 바탕 밀도 C는 처리(305)에서 32.8%로서 구해지는 것으로 한다. 이 결과 인접문자와 해당문자의 검은 바탕밀도의 비 m은 32.8/31에 의해 m≒1.058로 구해진다. 본 실시예에서는 m-1의 절대값, 즉 |m-1|이 어떤 범위를 넘을때에만 문자패턴의 확대 축소처리를 행하는 것으로 한다. 그 임계값 K를 문자패턴 변경조건의 기준값(162)로서 폰트사전에 유지하는 것으로 하여 처리(107)에서 이것을 리드한다. 처리(108)은 |(검은 바탕 밀도비-1|>K의 판정을 실행한다. 예를 들면, K=0.04인 것으로 한다. 그러면In FIG. 16, the character pattern is changed according to the
|m-1|≒|1.058-1|=0.058>0.04M-1 | ≒ | 1.058-1 | = 0.058 > 0.04
이므로 처리(108)의 판정은 성립되기 때문에 해당문자패턴의 확대 축소처리를 실행할 필요가 있어 처리(109)로 진행한다. 처리(109)에서는 문자패턴의 확대 축소율 m을 구한다. 본 실시예는 이것을 검은 바탕밀도비의 제곱근으로서 구한다. 즉 n=m1/2로 한다. 이것에 의해 검은 바탕밀도비가 클때에는 문자패턴은 축소되고, 검은 바탕비가 작을때에는 문자패턴은 확대된다. 다음의 처리(110)에서는 변경전의 문자패턴의 골격점 좌표 Pi(Xi,Yi)를 모든 골격점에 대해서 세이브한 후의 처리(116)에 대비한다. 그런데 처리(111)에서는 각각의 골격점좌표로 Pi(Xi,Yi)를 n배로 한다. 다음의 처리(112)와 처리(113)에서는 각각 X축 방향 및 Y축 방향의 배치위치 보정값을 결정한다.Therefore, since the determination of the processing 108 is made, it is necessary to execute the enlargement and reduction processing of the character pattern, and the flow proceeds to the
여기서 배치위치 보정의 필요성을 구체적으로 설명한다. 제6도는 문자폰트사전에 유지되는 문제패턴과 배치위치 정보의 관계를 설명한 것이다. 제6도(A)는 이 배치위치 r이 문자열의 표시영역중을 통하는 베이스라인의 위치를 도시한 것을 나타낸다. 베이스라인은 문자열의 정렬을 통일하기 위한 기준선이다. 제6도(B)는 田이라는 문자의 문자틀과 변경전의 문자패턴과 배치위치 r의 관계를 도시한다. 문자틀의 크기는 폭이 w, 높이를 h로 한다. 제6도(B)에서는 田의 문자패턴중의 골격점의 대표로서 1점 Pi(Xi,Yi)를 표시하고 있다. 이것은 골격점 Pi의 좌표가 (Xi,Yi)인 것을 나타낸다. 좌표는 문자틀의 왼쪽 아래 모서리 Q를 원점으로 하는 직교 좌표계로 나타내고, 오른쪽 방향을 X축의 정 방향, 위 방향을 Y축의 정 방향으로 한다. Pi는 문자의 제i번째의 골격점을 나타내는 것으로 한다. 그런데 문자패턴을 출력할때에는 출력행 영역상에 베이스라인을 설정하고, 그위에 해당문자의 문자틀의 Y=r(r은 배치위치의 값으로 한다)의 선을 맞추어서 배치한다. 각 문자패턴은 이것을 전체로 문자틀내에 디자인되어 있다. 문자패턴(601)은 출력행에 배치한 예를 제6도(E)에 도시한다.Here, the necessity of the arrangement position correction will be described in detail. 6 illustrates the relationship between the problem pattern maintained in the text font dictionary and the placement position information. 6A shows that this arrangement position r shows the position of the baseline through the display area of the character string. Baseline is the baseline for unifying the alignment of strings. 6B shows the relationship between the letter frame of the letter 田, the letter pattern before the change, and the arrangement position r. The size of the character frame is w and width h. In FIG. 6 (B), one point Pi (Xi, Yi) is displayed as a representative of the skeleton point in the letter pattern. This indicates that the coordinate of the skeleton point Pi is (Xi, Yi). Coordinates are represented by a rectangular coordinate system with the lower left corner Q of the character frame as the origin, with the right direction being the positive direction of the X axis and the up direction being the positive direction of the Y axis. Pi shall suppose the i-th skeleton point of a character. When outputting a character pattern, however, a baseline is set on the output line area, and the lines are aligned with the line of Y = r (r is the position of the placement position) of the character frame. Each character pattern is designed in the character frame as a whole. The
다음에 제6도에 의해서 문자패턴의 확대 축소와 배치위치의 변화의 관계를 설명한다. 제6도(B)에 도시한 문자패턴(601)을 확대 축소율 n으로 확대하면 해당문자의 임의의 골격점 Pi(Xi,Yi)는 제1도의 처리(111)에 의해 Pi(nXi,nYi)로 이동한다. 그 결과 문자패턴은 제6도(C)와 같이 된다. 제6도(C)의 실선으로 표시한 바와 같이 문자틀 크기도 n배로 되고, 배치위치 r도 n배로 되어 있다. 출력문자열로서는 문자틀 크기를 n배한 것을 배치하면 불합리한 것은 앞서 기술한 바와 같다. 그래서 이 문자틀중에서 해당문자틀로서 문자틀의 왼쪽 아래의 원점 Q를 공유하는 변형전의 문자틀을 나타낸 것이 제6도(C)의 점선부분이다. 이 문자틀 크기는 출력의 목적에 맞는 것으로서, 제5도(B)에 도시한 바와 같은 문자의 배치위치의 어긋남이 발생하지 않는다.Next, Fig. 6 explains the relationship between the enlargement and reduction of the character pattern and the change in the arrangement position. When the
이 문자틀중의 문자패턴의 크기는 적절하지만 문자틀내에 점하는 문자패턴의 위치가 적당하지 않다. 그래서 이 문자틀내에서 문자패턴의 위치를 보정하는 것이 배치위치 보정으로서, X축 방향 및 Y축 방향으로의 보정의 크기를 나타내는 값이 배치위치 보정값이다. 이 배치위치 보정값에 따라 문자패턴, 즉 각각의 골격점을 X축 방향으로 dx, Y축 방향으로 dy 만큼 평행이동시킨 점 P i(nXi-dx,nYi-dy)로 이동하는 것에 의해 해당 크기의 문자틀상의 적절한 위치에 문자패턴이 수용되어 제6도(D)의 패턴이 얻어진다. 이때 베이스라인의 배치위치 nr은 원래의 r로 되돌린다. 출력행상에 배치한 문자열 제6도(E)에 상기의 보정을 실행한 결과가 제6도(F)에 도시된다.The size of the character pattern in the character frame is appropriate, but the position of the character pattern in the character frame is not appropriate. Thus, correcting the position of the character pattern in this character frame is the arrangement position correction, and a value indicating the magnitude of the correction in the X-axis direction and the Y-axis direction is the arrangement position correction value. According to this arrangement position correction value, the size is moved by moving the character pattern, i.e., the point P i (nXi-dx, nYi-dy), in which each skeletal point is moved by dx in the X-axis direction and dy in the Y-axis direction. The letter pattern is received at an appropriate position on the letter frame of to obtain the pattern of FIG. 6 (D). At this time, the arrangement position nr of the baseline is returned to the original r. The result of performing the above correction on the character string FIG. 6E arranged on the output line is shown in FIG. 6F.
여기서 처리(112),(113) 및 (114)에서의 배치위치의 보정값의 결정방법과 그것에 의한 배치위치의 보정에 대해서 설명한다. 처리(112)에서는 문자크기를 나타내는 문자틀의 폭을 w로 했을때 Y축 방향의 배치위치 보정값 dx를Here, the method of determining the correction value of the arrangement position in the
dx=w(n-1)/2 ……………………………………………………………… (1)dx = w (n−1) / 2... … … … … … … … … … … … … … … … … … … … … … … … (One)
에서 구한다. 여기서 n은 처리(109)에서 구한 확대 축소율이다. 또, 처리(113)에서 Y축 방향의 보정값 dy는Obtain from Where n is the enlargement and reduction rate obtained in the
dy=r(n-1)…………………………………………………………………… (2)dy = r (n−1)... … … … … … … … … … … … … … … … … … … … … … … … … … (2)
로서 구한다. 식(2)를 사용하면 문자패턴을 변경해도 베이스라인의 위치를 나타내는 배치위치 r은 변하지 않는다. 상기 보정값 dx, dy를 사용하여 처리(114)에서 실제로 문자패턴의 평행이동을 실행한다. 상기 보정값의 결정방법에서 X축 방향은 문자크기인 문자틀의 폭 W에서 구하고, Y축 방향은 문자배치위치 r에서 구하고 있지만 Y축 방향의 보정값을 X축 방향과 마찬가지로 문자크기를 나타내는 문자틀의 높이 h에서 구하는 방법도 있다.Obtain as. If equation (2) is used, the arrangement position r indicating the position of the baseline does not change even if the character pattern is changed. Using the correction values dx, dy, the
이 경우 처리(113)에서의 Y축 방향의 보정값은In this case, the correction value in the Y-axis direction in the processing 113 is
dy=h(n-1)/2 ……………………………………………………………… (3)dy = h (n−1) / 2... … … … … … … … … … … … … … … … … … … … … … … … (3)
에서 구한다. 식(1) 및 (3)을 사용한 방법에 의하면 확대 축소문자패턴은 배치위치 보정후 출력문자틀내의 X축 및 Y축 방향 모두 중앙에 배치된다. 식(3)은 식(2)에서 r로서 특별한 값 r=h/2를 사용한 식이다. 출력문자틀내의 중앙에 위치된 문자패턴의 열을 출력할때에 출력문자틀의 세로(세로쓰기의 경우등) 또는 가로방향의 2등분선을 출력행영역상의 베이스라인에 겹쳐서 배치하는 방법이 있다.Obtain from According to the method using Equations (1) and (3), the enlarged axis lowercase pattern is disposed at the center of both the X-axis and Y-axis directions in the output character frame after the arrangement position correction. Equation (3) is a formula using a special value r = h / 2 as r in equation (2). When outputting a string of text patterns located in the center of the output text frame, there is a method of arranging the vertical (horizontal writing, etc.) or horizontal bisectors of the output text frame on the base line on the output line area. .
이것은 상기 식(1) 및 (3)을 사용해서 실현할 수 있다.This can be realized using the above formulas (1) and (3).
제6도(G) 및 (H)는 출력문자틀의 가로 방향 및 세로 방향의 2등분선을 출력행의 베이스라인에 겹쳐서 배치한 결과를 나타낸다. 상기 보정값 dx, dy를 사용해서 처리(114)에서 확대 축소후의 골격점의 좌표값을 보정한다.6 (G) and (H) show the result of arranging the bilateral dividing lines in the horizontal and vertical directions of the output character frame superimposed on the base lines of the output lines. Using the correction values dx and dy, the coordinates of the skeletal point after the enlargement and reduction in the
이상 기술한 제1도의 처리(114)까지의 처리에 의해 문자패턴의 변경후의 데이타가 생성된다.The processing up to the
다음에 상기 확대 축소처리(확대인 경우)에 의해서 문자패턴이 해당문자틀크기를 넘은 경우에 대해서 본 실시예에서 취급하는 것에 대하여 기술한다. 이와 같은 경우 확대 축소전의 문자패턴을 그대로 사용한다. 이 문자틀에서 튀어나오는 판정을 하는 것이 처리(115)이다. 튀어나온다고 판정되면 처리(116)으로 진행하여 처리(110)에서 세이브해 있던 문자패턴을 회복해서 출력문자패턴으로서 처리(117)로 진행한다. 한편, 튀어나옴의 판정에서 No로 판정되면 처리(114)의 결과의 문자패턴을 출력문자패턴으로서 처리(117)로 진행한다.Next, the case where the character pattern exceeds the corresponding character frame size by the enlargement / reduction process (in case of enlargement) will be described in the present embodiment. In this case, the character pattern before expansion and contraction is used as it is. It is process 115 to make the judgment which pops out from this character frame. If it is determined to pop out, processing proceeds to processing 116 where the character pattern saved in
상기한 바와 같이 문자패턴이 행당문자틀크기를 초월하는 경우 문자패턴의 확대 축소를 실행하기전에 문자틀에서 튀어나오는 것을 검출하여 확대 축소율 n을 보정하는 방법에 대해서 설명한다. 즉, 처리(112),(113)에서 실행하는 배치위치의 보정을 고려해서 처리(109)에서 구한 문자패턴의 확대 축소율 n이 다음의 식에서 정의되는 임계값 np보다 큰 경우 n을 np로 대체한다. (1),(3)식을 사용해서 배치위치를 보정하는 경우As described above, when the character pattern exceeds the size of the character frame per line, a method of correcting the enlargement reduction ratio n by detecting that the character pattern pops out of the character frame before performing the expansion and reduction of the character pattern will be described. That is, in consideration of the correction of the arrangement position performed in the processing 112 and 113, if the enlargement and reduction ratio n of the character pattern obtained in the
(1),(2)식을 사용하는 경우When using formulas (1) and (2)
이다. 여기서 x, X, y, Y는 각각 골격점좌표 Pi(Xi,Yi)의 하한값, 상한값으로서 다음의 식으로 나타낸다.to be. Here, x, X, y, and Y are represented by the following formulas as lower and upper limits of the skeleton point coordinates Pi (Xi, Yi), respectively.
x=min(Xi), X=max(Xi)…………………………………………………… (6)x = min (Xi), X = max (Xi)... … … … … … … … … … … … … … … … … … … … (6)
y=min(Yi), Y=max(Yi)…………………………………………………… (7)y = min (Yi), Y = max (Yi)... … … … … … … … … … … … … … … … … … … … (7)
여기서, 예를들면 x=min(Xi)는 x좌표의 값 Xi중의 최소값을 x로 대입하는 것을 나타낸다. 단, 골격점 좌표 Pi(Xi,Yi)의 하한, 상한값은 다음의 (8),(9) 범위에 존재한다고 가정한다.Here, for example, x = min (Xi) indicates substituting the minimum value in the value Xi of the x coordinate into x. However, it is assumed that the lower limit and the upper limit of the skeleton point coordinates Pi (Xi, Yi) exist in the following ranges (8) and (9).
상기 처리순서를 제15도에 도시한다. 처리(1501)은 상기 식(4) 또는 (5)를 사용해서 확대 축소율의 임계값 np를 구한다. 처리(1502)는 검은 바탕 밀도의 비율에서 구한 확대 축소율 n과 임계값 np를 비교하여 n이 np보다 크면 처리(1503)에서 확대 축소율 n을 임계값 np로 대체한다. 제15도에 도시한 처리를 추가하는 것에 의해 문자패턴의 확대 축소 및 배치위치의 보정에 의해서 문자틀에서 튀어나온 것이 없는 것을 보증하므로 제1도에 도시한 처리(110),(115) 및 (116)이 필요없게 된다. 제15도에 도시한 바와 같이 확대 축소율 n을 임계값 np로 대체했을때의 골격점의 변화를 제17도에 도시한다. △표(171c),(173c),(172c) 및 (174c)로 표시한 각 점은 문자패턴중에서 각각 x좌표값이 최대, 최소, y좌표값이 최대, 최소로 되는 골격점을 나타낸다. 모든 점의 문자틀(170)내에 포함되어 있지만 문자패턴이 작으므로 본 발명의 실시예에서 기술한 확대 축소율 n(>1) 및 배치위치의 보정을 실행해서 문자패턴을 크게 한 것이 ○표로 표시한 (171a),(173a),(172a) 및 (174a)의 각 점이다. 확대 축소율 n이 지나치게 크므로(171a)의 점이 문자틀에서 튀어나와 있다. 상기 n대신에 식(4) 또는 (5)에 나타낸 임계값 np(1<np<n)을 사용하면(171a)의 점은 문자틀(170)의 경계선상의 위치(171b)로 이동한다. 그 결과 다른 3점(172b),(173b) 및 (174b)도 포함하는 모든 골격점이 문자틀 내에 포함되고, 또한 △표로 표시한 당초의 문자패턴보다 큰 것이 얻어진다.The processing procedure is shown in FIG. The
처리(117)은 이상으로 얻은 출력문자패턴을 근본으로 해서 상술한 일본국 특허출원 소화 59-58263호등의 방법에 의해 골격점을 실제의 출력패턴으로 변환하여 배치위치를 출력문자패턴 영역내의 베이스라인에 겹쳐서 출력한다.The
다음에는 제1도에서 예시한 방법의 대체방법에 대해서 간단히 기술한다.Next, an alternative method of the method illustrated in FIG. 1 will be briefly described.
제1도에서는 문자패턴 변경의 조건으로서 문자패턴의 검은 바탕 밀도비를 사용하는 예를 나타냈다. 이 변경조건의 기준으로서는 그외에 다음에 기술하는 여러가지 경우를 생각할 수 있다.1 shows an example of using the black background density ratio of the character pattern as a condition of the character pattern change. As a basis of this change condition, various cases described below can be considered.
(1) 인접한 문자의 종류에 따라 해당문자의 문자패턴 변경을 실행하는가 아닌가를 결정한다. 문자패턴 변경의 대상으로 되는 문자코드의 조합을 설정해두고, 이것을 참조하는 것에 의해 문자패턴 변경의 판정을 실행한다.(1) It decides whether to change the character pattern of the character according to the type of the adjacent character. The character pattern change is determined by setting a combination of the character codes to be the character pattern change targets and referring to the character codes.
(2) 인접하는 문자패턴의 성질에 의해서 결정한다. 성질로서는 기준문자패턴의 문자패턴을 둘러싸는 최소의 불록다각형의 크기를 사용한다. 인접문자의 최소 볼록다각형의 크기로서, 예를 들면 다각형의 면적을 산출하여 해당문자의 값과 비교하는 것에 의해 문자패턴 변경의 유무를 결정한다.(2) Determined by the property of adjacent character patterns. As the property, the size of the smallest block polygon surrounding the character pattern of the reference character pattern is used. As the size of the minimum convex polygon of the adjacent character, for example, the area of the polygon is calculated and compared with the value of the corresponding character to determine whether or not the character pattern is changed.
(3) 인접문자에 대해서 (2)항과 마찬가지의 성질을 사용하지만 출력시에 산출해서 구하는 것이 아니고 미리 기억해둔 값을 사용하는 방법이 있다.(3) The same properties as in (2) are used for adjacent characters, but there is a way to use the values stored in advance rather than calculating them at the time of output.
(4) 해당문자에 대해서 미리 폰트사전내에 문자패턴 변경의 가부를 나타내는 플래그를 설정해 놓고, 그것에 따라서 문자패턴 변경의 유무를 결정한다.(4) A flag indicating whether or not to change the character pattern is set in advance in the font dictionary for the character, and the presence or absence of the character pattern change is determined accordingly.
(5) 문자패턴을 변경해야 할 문자코드군을 미리 일괄해서 기억해 두고, 해당문자의 코드가 그중에 포함되었으면 문자패턴을 변경한다. 역으로 변경이 허용되지 않는 문자코드군을 기억해두는 방법도 가능하다. 또한, 전자의 변경해야 할 문자코드군을 미리 일괄해서 기억하는 방법은 제1도의 처리(104)와 같다.(5) The character code group for which the character pattern should be changed is stored in advance, and if the code of the character is included in it, the character pattern is changed. Conversely, it is possible to remember a group of character codes that cannot be changed. In addition, the method of previously storing the former character code group to be changed collectively is the same as the process 104 of FIG.
(6) 미리 설정된 정보(예를 들면, 검은 바탕 밀도의 값)을 하나의 기준값으로 하고, 이것과 해당문자의 해당하는 성질의 값을 비교하여 그 대소관계에 따라 문자패턴 변경의 가부를 결정한다.(6) Using the preset information (for example, the value of black background density) as one reference value, compare this with the value of the corresponding property of the corresponding character, and decide whether or not to change the character pattern according to the magnitude case. .
(7) 해당문자패턴의 출력이전에 설정된 각종 표시모드(가로 또는 세로쓰기모드, 문자간격을 나타내는 가변문자피치의 모드등)의 값에 따라서 문자패턴 변경을 결정한다.(7) The character pattern change is decided according to the values of various display modes (horizontal or vertical writing mode, variable character pitch mode indicating character spacing, etc.) set before output of the character pattern.
상기 (1)에서 (7)의 대체방법에 대해서 각각 제8도에서 제14도에 따라 설명한다. 단, 대체방법과 제1도의 처리에서는 공통하는 부분이 많으므로 다음의 설명에서는 대체방법에 특유한 처리를 중심으로 도시하고, 또 그 전후처리로서 대응하는 제1도의 처리를 부가한 것으로 하였다.Alternative methods of (1) to (7) will be described with reference to FIGS. 8 to 14, respectively. However, since the alternative method and the process of FIG. 1 have many parts in common, in the following description, the process specific to the alternative method is shown mainly, and the process of FIG. 1 corresponding to the post-process is added.
다음 설명에서 각 도면에 도시한 제1도와 같은 참조번호의 처리는 제1도와 같은 것을 의미한다.In the following description, the processing of the same reference numerals as those in FIG. 1 shown in each drawing means the same as in FIG.
대체방법(1)의 예를 제8도에 도시한다. 본 처리는 제1도의 처리(103)에서 처리(109)까지를 대체한 것이다.An example of the alternative method (1) is shown in FIG. This process replaces the
부호(801)은 해당 출력문자의 코드와 그전에 인접하고 있는 문자의 코드의 조합이 문자패턴 변경테이블에 포함되는가 아닌가를 판정하여 그 결과에 따라 분기하는 처리이다.A code 801 is a process for judging whether or not a combination of a code of a corresponding output character and a code of a character adjacent to it is included in the character pattern change table, and branching according to the result.
(802)는 처리(801)의 판정결과가 Yes인 경우에 변경테이블에서 출력문자의 문자패턴 확대 축소율 n을 리드하는 처리이다. 처리(801)에서는 문자패턴 변경의 대상으로 되는 문자코드의 조합과 그것에 관한 문자패턴 확대 축소율을 수용한 변경테이블을 참조한다. 변경테이블중에 해당문자와 인접원자와의 코드의 조합이 있는 경우에 한해서 해당문자패턴을 확대 축소하는 것을 결정한다.802 is a process of reading the character pattern enlargement reduction ratio n of the output characters in the change table when the determination result of the processing 801 is Yes. In the process 801, a change table that accommodates the combination of the character codes to be subjected to the character pattern change and the character pattern enlargement and reduction ratio therefor is referred to. It is decided to enlarge or reduce the character pattern only when there is a combination of the character and the code of adjacent atoms in the change table.
대체방법(2)의 예를 제9도에 도시한다. 본 처리는 제1도의 처리(103)에서 처리(108)까지를 대체한 것이다.An example of the alternative method (2) is shown in FIG. This process is an alternative to the process 108 in the
부호(901)은 출력문자의 문자패턴을 둘러싸는 최소 볼록다각형의 크기 B를 산출하는 처리, (902)는 인접문자의 문자패턴을 둘러싸는 최소 볼록다각형의 크기 C를 산출하는 처리이다. (903)은 출력문자와 인접문자의 문자패턴 최소 볼록다각형의 비율 m을 구하는 처리이다. 처리(901)에서는 처리(902)에서 리드한 출력문자의 각 골격점좌표에서 출력문자패턴을 둘러싸는 최소 볼록다각형을 구하여 그 크기 B를 산출한다. 여기서 말하는 크기라 함은 볼록다각형의 면적을 말한다. 처리(902)에서는 인접문자의 골격점좌표에서 인접문자패턴을 둘러싸는 최소 볼록다각형의 크기 C를 산출한다. 이경우 인접문자의 골격점좌표는 미리 인접문자의 출력시에 기억해둔 정보에서 얻을 수가 있다.
대체방법(3)의 예를 제10도에 도시한다. 본 처리는 제1도의 처리(103)에서 처리(106)까지를 대체한 것이다.An example of the alternative method (3) is shown in FIG. This process replaces the process 106 to the process 106 of FIG.
부호(1001)은 출력문자의 코드를 키로서 문자폰트사전을 검색하여 출력문자패턴의 최소 볼록다각형의 크기 B를 리드하는 처리, (1002)는 인접문자의 코드를 키로서 문자폰트사전을 검색하여 인접문자패턴의 최소볼록다각형의 크기 C를 리드하는 처리이다. (1003)은 출력문자와 인접문자의 문자패턴 최소 볼록다각형의 비율 m을 구하는 처리이다.The code 1001 retrieves the character font dictionary using the code of the output character as a key and leads to the size B of the minimum convex polygon of the output character pattern, and 1002 retrieves the character font dictionary using the code of the adjacent character as the key. This process reads the size C of the smallest convex polygon of the adjacent character pattern. 1003 is a process for obtaining the ratio m of the character pattern minimum convex polygon of the output character and the adjacent character.
대체방법(4)의 예를 제11도에 도시한다. 본 처리는 제1도의 처리(104)를 대체한 것이다. 부호(1101)은 출력문자의 코드를 키로서 문자폰트사전을 검색하여 출력문자의 문자패턴 변경의 가부를 결정하는 플래그 F를 리드하는 처리, (1102)는 처리(1101)에서 리드한 변경의 가부를 결정하는 플래그 F에 의해 출력문자패턴을 변경할 필요성이 있는가 없는가를 판정하여, F=1이면 변경이 필요하다고 판정해서 Yes로 분기하고, F≠1이면 변경이 필요치 않다고 판정해서 No로 분기하는 처리이다.An example of the alternative method 4 is shown in FIG. This process replaces the process 104 of FIG. Reference numeral 1101 denotes a flag F for retrieving the character font dictionary of the output character by using the code of the output character as a key and determining whether to change the character pattern of the output character; A process for determining whether there is a need to change the output character pattern by the flag F that determines whether a change is necessary, and if F = 1, determines that a change is necessary and branches to Yes, and if F ≠ 1, changes to No and determines that no change is necessary. to be.
대체방법(5)중 변경을 허용하지 않는 문자코드군을 기억하는 예를 제12도에 도시한다. 본 처리는 제1도의 처리(104)를 대체한 것이다. 부호(1201)은 출력문자의 코드가 문자패턴 변경금지테이블에 포함되어 있는가 아닌가를 판정하여 그 결과에 따라 분기하는 처리이다. 처리(1201)에서는 출력문자코드가 변경금지테이블에 포함되어 있지 않으면 문자패턴 변경을 실행하는 것으로 판정해서 Yes로 분기하고, 역으로 변경금지테이블에 포함되어 있으면 문자패턴 변경을 실행하지 않는 것으로 판정해서 No로 분기한다.An example of storing the character code group in which the change is not allowed in the alternative method (5) is shown in FIG. This process replaces the process 104 of FIG.
대체방법(6)의 예를 13도에 도시한다. 본 처리는 제1도의 처리(104)에서 처리(106)까지를 대체한 것이다.An example of the alternative method 6 is shown in FIG. 13. This process replaces the process 104 to the process 106 of FIG.
부호(1301)은 검은 바탕 밀도의 하나의 기준값 D를 리드하는 처리, (1302)는 출력문자의 문자패턴 검은 바탕 밀도 B와 검은 바탕 밀도의 기준값 D의 비율 m을 구하는 처리이다.
처리(1301)에서 참조하는 검은 바탕 밀도의 기준값은 문자세트내에 포함되는 문자전체의 평균값을 사용하거나, 또는 해당 출력문자의 처리이전에 출력이 완료된 문자군에서 얻은 평균값을 사용하거나 하는 방법이 있다.The reference value of the black background density referred to in the
대체방법(7)의 예를 제14도에 도시한다. 본 처리는 제1도의 처리(104)를 대체한 것이다. 부호(1401)은 문자피치모드 E를 리드하는 처리, (1402)는 처리(1401)에서 리드한 문자피치모드 E가 가변피치모드인가 아닌가를 판정하여 그 결과에 따라 분기하는 처리이다. 처리(1402)에서는 문자피치모드 E가 가변피치모드이면 문자패턴 변경을 실행하는 것으로 판정해서 Yes로 분기하고, 역으로 문자피치모드 E가 고정피치모드이면 문자패턴 변경을 실행하지 않는 것으로 판정해서 No로 분기한다.An example of the alternative method 7 is shown in FIG. This process replaces the process 104 of FIG.
제1도에 기술한 예에서는 기준크기 또는 각종 크기의 문자패턴이 문자폰트사전에 유지되어 있는 것으로 가정하고, 동일 문자틀의 크기에 대해서 동일문자코드의 자면의 크기가 다른 문자패턴을 여러개 유지하는 것이 아니라고 가정하고 있다.In the example described in FIG. 1, it is assumed that a character pattern having a reference size or various sizes is held in the font font dictionary, and a plurality of character patterns having different sizes of the magnetic surface of the same character code are maintained for the same character frame size. I assume not.
그러나 이점에 대해서는 다른 실시예가 고려된다. 즉, 문자폰트사전내에 미리 동일한 문자틀크기로서, 또한 자면의 크기가 다른 패턴을 여러개 유지한다. 문자패턴의 변경조건에 의해서 이들 패턴중의 하나를 선택하는 수단을 갖는다. 이경우에는 제1도의 문자패턴의 확대 축소처리를 실행하지 않고도 바라는 문자패턴을 문자폰트사전에서 리드하여 사용하는 것에 의해 본 발명의 목적을 달성할 수 있다.However, other embodiments are contemplated for this. In other words, a plurality of patterns having the same character frame size and different size of the magnetic surface in the character font dictionary are held in advance. It has a means for selecting one of these patterns by the condition for changing the character pattern. In this case, it is possible to achieve the object of the present invention by using the desired character pattern by reading the character font dictionary without executing the enlargement and reduction process of the character pattern of FIG.
이 방법으로 도트문자에 의한 문자패턴 유지방식을 사용한 문자 출력장치등에 의해 가능하다.In this way, a character output device using a character pattern holding method by dot characters is possible.
본 실시예에 의하면 출력대상 문자패턴과 인접문자패턴의 검은 바탕 밀도등의 성질에 따라서 출력대상 문자패턴의 자면 크기를 변경하고, 또한 출력행중에 적절히 배치할 수가 있다.According to the present embodiment, the size of the writing surface of the character string to be output can be changed in accordance with the properties such as the black background density of the character string to be output and the adjacent character pattern, and can be appropriately arranged in the output line.
본 발명에 의하면 문자패턴의 변경조건에 따라 문자틀의 범위내에서 문자패턴의 크기와 그것에 따른 위치를 조정할 수 있으므로 종래 기술에 의하는 것보다 균형이 좋은 문자열의 정렬이 얻어진다는 효과가 있다. 이때 문자틀의 배치 방법에는 영향을 주지 않으므로 기존의 배치 프로그램, 출력장치의 기능을 이용할 수 있다.According to the present invention, it is possible to adjust the size and position of the character pattern within the range of the character frame according to the changing condition of the character pattern, so that the alignment of the character string with a better balance is obtained than in the prior art. At this time, since the layout method of the character frame is not affected, the functions of the existing layout program and output device can be used.
Claims (21)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63154694A JP2669539B2 (en) | 1988-06-24 | 1988-06-24 | Character output method and character output device |
JP63-154694 | 1988-06-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR900000791A KR900000791A (en) | 1990-01-31 |
KR960009837B1 true KR960009837B1 (en) | 1996-07-24 |
Family
ID=15589901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019890008426A KR960009837B1 (en) | 1988-06-24 | 1989-06-19 | Character output method |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP2669539B2 (en) |
KR (1) | KR960009837B1 (en) |
CN (1) | CN1014836B (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09156158A (en) * | 1995-12-06 | 1997-06-17 | Nec Corp | Printer |
US5909519A (en) * | 1996-05-21 | 1999-06-01 | Hewlett-Packard Company | Method for printing pseudo-bold characters at arbitrary orientations, scaling, and resolutions |
KR20030042618A (en) * | 2001-11-23 | 2003-06-02 | 이경희 | Character and graphic image editing method of cutting plotter with computer |
CN110077138B (en) * | 2019-04-24 | 2021-02-05 | 厦门联泰标识信息科技有限公司 | Multi-state jet printing method for high-resolution ink jet printer |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62103693A (en) * | 1985-10-31 | 1987-05-14 | キヤノン株式会社 | Script display system |
-
1988
- 1988-06-24 JP JP63154694A patent/JP2669539B2/en not_active Expired - Fee Related
-
1989
- 1989-06-19 KR KR1019890008426A patent/KR960009837B1/en not_active IP Right Cessation
- 1989-06-23 CN CN89104257A patent/CN1014836B/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
CN1039134A (en) | 1990-01-24 |
CN1014836B (en) | 1991-11-20 |
JPH025095A (en) | 1990-01-09 |
JP2669539B2 (en) | 1997-10-29 |
KR900000791A (en) | 1990-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4755955A (en) | Document creating apparatus | |
KR950011807B1 (en) | Character processing method and apparatus | |
KR0124961B1 (en) | Method and apparatus for generating character patterns expressed by coordinates of a coordinate system | |
US7492366B2 (en) | Method and system of character placement in opentype fonts | |
US20080030502A1 (en) | Diacritics positioning system for digital typography | |
US5959635A (en) | Character pattern generator | |
JPS62123573A (en) | Computer graphic apparatus and operation thereof | |
US20020070938A1 (en) | Method and apparatus for character font generation within limitation of character output media and computer readable storage medium storing character font generation progaram | |
KR960016739B1 (en) | Method of correctly aligning the line width of outline font | |
KR960009837B1 (en) | Character output method | |
US5754164A (en) | Outline font expanding method and outline font expanding device | |
US5883637A (en) | Kerning method and a typographic apparatus utilizing same | |
EP0409450B1 (en) | Character generator | |
KR100227178B1 (en) | Character generation device | |
US7071941B2 (en) | Method for calculating CJK emboxes in fonts | |
US7821515B2 (en) | Method for automatic font character height restriction | |
JP3082228B2 (en) | Data converter | |
JPH0736433A (en) | Character data base preparing device | |
JPH05341763A (en) | Device for generating character | |
JPH08184952A (en) | Plate composing processor | |
JP3092172B2 (en) | Data converter | |
KR100273334B1 (en) | Method of vector font realization in cad system | |
JP3038840B2 (en) | Data converter | |
Haralambous et al. | Methods for processing languages with Ω | |
JP3057978B2 (en) | Character generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20050715 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |