KR900004892B1 - Dot inter polation system - Google Patents

Dot inter polation system Download PDF

Info

Publication number
KR900004892B1
KR900004892B1 KR1019850000080A KR850000080A KR900004892B1 KR 900004892 B1 KR900004892 B1 KR 900004892B1 KR 1019850000080 A KR1019850000080 A KR 1019850000080A KR 850000080 A KR850000080 A KR 850000080A KR 900004892 B1 KR900004892 B1 KR 900004892B1
Authority
KR
South Korea
Prior art keywords
dot
register
scanning direction
interpolation
character
Prior art date
Application number
KR1019850000080A
Other languages
Korean (ko)
Other versions
KR850007708A (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 가부시기가이샤 도시바
Publication of KR850007708A publication Critical patent/KR850007708A/en
Application granted granted Critical
Publication of KR900004892B1 publication Critical patent/KR900004892B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/10Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers by matrix printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • G06T3/4007Interpolation-based scaling, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/32Normalisation of the pattern dimensions

Abstract

The dot interpolation control system includes a pair of registers for designating initial addresses of interpolated dots along the main scanning direction. Another pair of registers designates a dot pitch along the main scanning direction, and still another pair of registers designates a dot pitch along the subscanning direction. Data pairs of x and y components, which selectively include trigonometric function data representing a designated rotation or inclination angle, are set in the corresponding registers. Dot interpolation of a character pattern is performed by main scanning and subscanning in accordance with the contents of the respective registers.

Description

도트 보간장치Dot interpolator

제1a도 내지 (c)도는 각각 종래의 도트 보간처리수단을 설명하기 위한 도면.1A to 1C are diagrams for explaining conventional dot interpolation processing means, respectively.

제2도는 본 발명의 한 실시예의 요부의 구성을 보인 블록도.2 is a block diagram showing the configuration of main parts of an embodiment of the present invention.

제3도 내시 제11도는 각각 상기 실시예의 동작을 설명하기 위한 것으로, 제3a도 내지 (f)도는 각각 도트보간처리에 의하여 생성되는 새로운 도트를 둘러싸는 1격자 4점의 도트정보(도트패턴)와 보간테이블 ROM에 설정된 보간처리 레벨구분과 테이블 타이프와의 관계를 보인 도면.FIG. 3 is a diagram for explaining the operation of the above embodiment, and FIGS. 3A to 3 (f) show dot information (dot pattern) of one grid and four points each surrounding a new dot generated by dot interpolation processing. Showing the relationship between the interpolation level set in the interpolation table ROM and the table type.

제4도는 테이블 타이프의 선택절환동작을 설명하기 위한 도면.4 is a diagram for explaining the selection switching operation of the table type.

제5a도 내지 (d)도는 각각 패턴변환예를 보인 도면.5A to 5D show examples of pattern conversion, respectively.

제6a도와 (b)도는 CRT를 표시할 때의 주·부주사방향과 프린트 아우트시의 주·부주사방향을 대비하여 보인 도면.6a and (b) show the main and sub-scanning directions when displaying the CRT and the main and sub-scanning directions when printing out.

제7도는 각종 설정데이터의 관계를 보인 도면.7 is a diagram showing a relationship between various setting data.

제8도는 도트보간처리에 의하여 패턴 변환된 문자와 그 문자에 외접하는 직사각형과의 관계를 보인 도면.8 is a view showing a relationship between a character pattern-converted by dot interpolation processing and a rectangle circumscribed to the character.

제9도는 각종 변형문자에 대한 피치 및 행(行)피치의 설정예를 보인 도면.9 is a diagram showing an example of setting pitches and row pitches for various modified characters.

제10도는 각종 변형문자에 대한 하선의 전개예를 보인 도면.FIG. 10 is a view showing an example of development of an underline for various modified characters. FIG.

제11도는 구역의 구분 수단을 설명하기 위한 도면.11 is a view for explaining the means for distinguishing a zone.

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

10 : CUP 11 : 메인메모리(MM)10: CUP 11: Main memory (MM)

12 : CP'U 버스 13 : 표시제어회로(CRT-C)12 CP'U bus 13 Display control circuit (CRT-C)

14 : 프레임 메모리(FM) 15 : 병렬·직렬 변환회로(P-S)14 Frame memory (FM) 15 Parallel-to-serial conversion circuit (P-S)

16 : CRT 표시부 17 : 인자제어부16: CRT display unit 17: print control unit

18 : 라인 버퍼 19 : 직렬 도트프린터18: line buffer 19: serial dot printer

21,22,25,26,27,28,31,32,33,34,35,36,42,44,46,48,50,54,56 : 레지스터21,22,25,26,27,28,31,32,33,34,35,36,42,44,46,48,50,54,56: register

23 : 하선/방선제어부 24 : 3각 함수 테이블23: underline / radiation control unit 24: triangular function table

29 : 오프셋 데이터 생성부29: offset data generation unit

37,38,39,40 : 가산회로(ADD-A,ADD-B,ADD-C,ADD-D)37,38,39,40: Addition circuit (ADD-A, ADD-B, ADD-C, ADD-D)

41,43,45,47 : 데이터 셀렉터 49 : 선택제어회로(SC)41, 43, 45, 47: data selector 49: selection control circuit (SC)

51 : 한자패턴 메모리(KPM) 52 : 1문자버퍼51: Kanji pattern memory (KPM) 52: 1 character buffer

53 : 비트선택회로 55 : 판별제어회로53: bit select circuit 55: discrimination control circuit

57 : 도트판별회로 58 : 보간테이블 ROM57: dot discrimination circuit 58: interpolation table ROM

59 : 비교기 60 : 시프트레지스터59: comparator 60: shift register

본 발명은 도트매트릭스 구조의 문자폰트 정보를 취급하는 문서작성장치, 문자출력장치 등에 사용되는 도트보간장치에 관한 것이다.The present invention relates to a dot interpolation apparatus used for a document creation apparatus, a character output apparatus, and the like, which handle character font information of a dot matrix structure.

문서작성장치 등 규정된 도트매트릭스 구성의 문자폰트를 취급하는 장치에 있어서 규정된 도트매트릭스구성의 문자폰트를 어떤 배율로 확대·축소할 수 있는 기능을 갖게 할 경우, 종래에는 제1a도 내지 (b)도의 도시와 같이 원문자패턴 도트 SD‥‥에서 단순히 도트를 증가, 또는 삭제하는 이른바 단순확대 축소방식을 채용하고 있었다.In a device that handles a character font having a prescribed dot matrix structure, such as a document creating device, when the character font having a prescribed dot matrix structure is provided to be enlarged and reduced at a certain magnification, it is conventionally described with reference to FIGS. As shown in the figure, the so-called simple enlargement and reduction method of simply increasing or deleting dots in the original pattern pattern SD ... is employed.

이와 같은 종래의 확대·축소수단은 비교적 간단하고 값싸게 실현할 수 있으나, 예를 들면 사선부분에서의 계단 상의 형성부의 연결부가 눈에 띄는 등, 출력되는 패턴형상이 본래의 표현하고자 하는 문자형태로부터 변형되어 인식하기 어려운 부자연스러운 문자표현이 되고 마는 결점이 있었다.Such conventional enlargement / reduction means can be realized relatively simply and inexpensively. For example, the pattern of the output pattern is deformed from the original character to be expressed, for example, the connecting portion of the formation on the stairs in the diagonal line is prominent. There was a flaw in the unnatural character expression that was difficult to recognize.

또, 상기와 같은 종래의 도트보간수단에 있어서는 원문자패턴, 또는 임의의 확대·축소배율을 가진 문자패턴을 임의의 각도로써 경사화 또는 회전시킨 변형문자체를 얻고자할 때 이것을 쉽게 얻을 수가 없고, 또 그 변형 범위를 대폭적으로 제약해도 변환된 문자패턴에 변형이 생기고 변환의 정밀도가 대폭적으로 저하되어 충실성이 높은 패턴변환을 할 수 없는 결함이 있었다.In addition, in the conventional dot interpolation means as described above, it is not easy to obtain the original character pattern or the deformed character in which the character pattern having an arbitrary magnification and magnification is inclined or rotated at an arbitrary angle, In addition, even if the deformation range is largely restricted, deformation occurs in the converted character pattern, and the accuracy of the conversion is greatly reduced, resulting in a defect in which pattern conversion with high fidelity cannot be performed.

본 발명은 상기한 실정을 고려하여 연구된 것으로 비교적 간단한 구성으로 임의의 문자를 임의의 배율로 높은 문자품질을 유지하면서 확대·축소할 수 있는 동시에 임의의 문자를 임의의 경사를 가지고 일그러짐 없이 충실하게 회전, 경사화 할 수 있고, 문자의 확대·축소, 회전, 경사화 등 각 종류의 패턴변환을 고정밀도의 도트보간처리에 의하여 고속으로 이루어지게 할 수 있는 도트보간장치를 제공하는 것을 목적으로 한다.The present invention has been studied in consideration of the above-described situation and can be enlarged and reduced while maintaining a high character quality at any magnification with a relatively simple configuration, and at the same time faithfully without any distortion with any inclination. It is an object of the present invention to provide a dot interpolation device that can rotate and incline, and that each type of pattern conversion such as enlargement / reduction, rotation, and inclination of characters can be made at high speed by a high-precision dot interpolation process. .

본 발명은 소정의 도트매트릭스구성의 문자패턴을 적어도 주주사방향 또는 부주사방향으로 도트보간하는 도트보간장치에 있어서, 보간도트의 초기 어드레스를 지정하는 한 쌍의 레지스터 주주사방향의 도트새김폭을 지정하는 한 쌍의 레지스터, 부주사방향의 도트새김폭을 지정하는 한 쌍의 레지스터를 구비하고, 이들 각 레지스터에 지정된 회전각 또는 경사각에 따르는 특정한 3각 함수 데이터를 선택적으로 포함한 x성분, y성분의 각 데이터를 쌍으로 세트하여 이들 각 레지스터의 내용에 따르는 주주사, 부주사에 의하여 지정각도에 따르는 회전문자, 경사화문자 등의 도트보간을 실행하는 구정으로 한 것으로 이에 의하여 비교적 간단한 구성으로 임의의 문자를 임의의 확대·축소배율을 가지고 높은 문자품질의 손상 없이 확대·축소를 할 수 있는 동시에 임의의 문자를 임의의 경사를 가지고 일그러짐 없이 충실하게 회전, 경사화 할 수 있고, 문자의 확대, 축소, 회전, 경사화 등 각 종류의 패턴변환을 높은 정밀도의 도트보간에 의하여 고속으로 실행할 수 있다.The present invention provides a dot interpolation apparatus for dot interpolating a character pattern having a predetermined dot matrix configuration in at least the main scanning direction or the sub scanning direction, wherein the dot indentation width of a pair of register main scanning directions for specifying the initial address of the interpolation dot is specified. A pair of registers, a pair of registers for specifying dot engraving widths in the sub-scanning direction, each of the x and y components each of which selectively contains specific trigonometric function data according to the rotation angle or tilt angle specified in each register The data is set in pairs and dot interpolation such as rotation character, oblique character, etc. according to the designated angle is performed by the main and sub-scans according to the contents of each register. With arbitrary magnification and scaling factor, you can zoom in and out without compromising high character quality. At the same time, any character can be rotated and inclined faithfully without any distortion with any inclination, and each type of pattern conversion, such as enlargement, reduction, rotation, and inclination, can be executed at high speed by high-precision dot interpolation. have.

이하 도면을 참조하여 본 발명의 일 실시예를 설명한다.Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

제2도는 본 발명의 일 실시예를 도시한 회로 블록도이다. 도면중, 참조번호(10)는 시스템 전체의 제어를 관장하는 CPU, 참조번호(11)는 메인메모리(MM), 참조번호(12)는 CPU 버스이다. 참조번호(13)는 표시제어회로(CRT-C), 참조번호(14)는 프레임메모리(FM), 탐조번호(15)는 직·병렬변환회로, 참조번호(16)는 CRT 표시부, 참조번호(17)는 인자제어부, 참조번호(18)는 라인버퍼, 참조번호(19)는 직렬도트프린터이다. 참조번호(21)는 패턴변환시에 있어서의 변환후의 부·주사방향의 폭(주·주사의 간격x회수)에 상당하는 크기(V size)를 표시하는 레지스터, 참조번호(22)는 동일 주·주사방향의 폭에 상당하는 크기(H size)를 표시하는 레지스터이다. 참조번호(23)는 상기 레지스터(21)의 내용에 따르는 길이를 가지고 하선, 방선의 도트패턴을 발생하여 라인버퍼(18)에 기입하는 하선/방선 제어부이다. 참조번호(24)는 문자의 경사형 회전시 등에 있어서의 지정각도에 따른 각도정보(3각 함수데이터)를 저장하는 3각 함수테이블이다 참조번호(25)는 패턴변환시에 있어서 기준문자높이를 초과한 변환처리후의 문자패턴을 상기 기준문자높이를 단위로 구역을 구분하기 위한 구역지정용 레지스터이다. 참조번호(26) 및 (27)는 문자의 확대 · 축소배율에 따르는 도트새김폭(dx,dy)을 저장하는 레지스터, 참조번호(28)는 패턴 변환된 문자에 대해 0 내지 7도트 범위에서 선택적으로 오프셋(offset)을 주기 위한 오프셋 레지스터, 참조번호(29)는 오프셋 레지스터(28)의 오프셋치에 따르는 도트수를 가지고 오프셋 데이터(비표시를 나타내는 "0")를 생성하는 오프셋 데이터 생성부이다.2 is a circuit block diagram showing an embodiment of the present invention. In the figure, reference numeral 10 denotes a CPU which controls the entire system, reference numeral 11 denotes a main memory MM, and reference numeral 12 denotes a CPU bus. Reference numeral 13 denotes a display control circuit (CRT-C), reference numeral 14 denotes a frame memory (FM), search number 15 denotes a serial / parallel conversion circuit, reference numeral 16 denotes a CRT display, and reference numerals. Reference numeral 17 denotes a printing control unit, reference numeral 18 denotes a line buffer, and reference numeral 19 denotes a serial dot printer. Reference numeral 21 denotes a register indicating a size (V size) corresponding to the width in the sub-scan direction (interval and scan interval x number of times) after conversion during pattern conversion, and reference numeral 22 denotes the same note. This register indicates the size (H size) corresponding to the width of the scanning direction. Reference numeral 23 is an underline / radiation control unit which has a length in accordance with the contents of the register 21 and generates an underline and a ray dot pattern and writes it to the line buffer 18. Reference numeral 24 is a trigonometric function table for storing angular information (triangle function data) according to a specified angle in the case of oblique rotation of characters, etc. Reference numeral 25 exceeds the reference character height in pattern conversion. A character pattern after one conversion process is an area designation register for classifying areas by the reference character height. Reference numerals 26 and 27 are registers for storing dot notation widths (dx, dy) according to the enlargement and reduction ratio of characters, and reference numeral 28 is optional in the range of 0 to 7 dots for pattern converted characters. Offset register for giving an offset, reference numeral 29 is an offset data generator for generating offset data ("0" representing non-display) with the number of dots in accordance with the offset value of the offset register 28. .

참조번호(31) 내지(49)는 각각 도트보간어드레스를 생성하기 위한 구성요소를 이루는 것으로, 참조번호(31)는 x성분을 포함하는 부·주사방향의 도트새김폭(DX1)을 저장하는 레지스터, 참조번호(32)는 x성분을 포함하는 주·주사방향의 도트새김폭(DX2)을 저장하는 레지스터, 참조번호(33)는 x성분을 포함하는 주·주사방향의 초기치(초기어드레스:X1 init)를 저장하는 레지스터. 참조번호(34)는 y성분을 포함하는 부·주사방향의 도트새김폭(DY1)을 저장하는 레지스터, 참조번호(35)는 y성분을 포함하는 부·주사방향의 도트새김폭(DY2)을 저장하는 레지스터, 참조번호(36)는 y성분을 포함하는 부·주사방향의 초기치(초기 어드레스:Y1 init)를 저장하는 레지스터이다. 상기의 각 레지스터(31) -(36)에 저장되는 도트보간어드레스는 각각 정수부의 데이터와 소수부의 데이터로 구성된다.Reference numerals 31 to 49 constitute components for generating dot interpolation addresses, respectively, and reference numeral 31 denotes a register for storing dot writing width DX1 in the sub-scanning direction including x components. And reference numeral 32 denotes a register for storing dot indentation width DX2 in the scanning and scanning direction including the x component, and reference numeral 33 denotes the initial value of the scanning and scanning direction incorporating the x component (initial address: X1). init). Reference numeral 34 denotes a register for storing dot-indentation width DY1 in the sub-scanning direction containing the y component, and reference numeral 35 denotes a dot-indentation width DY2 in the sub-scanning direction including the y component. The register to be stored and reference numeral 36 are registers for storing the initial value (initial address: Y1 init) in the sub-scanning direction including the y component. The dot interpolation addresses stored in the above registers 31 to 36 are each composed of data of the integer part and data of the fractional part.

참조번호(37)는 상기의 레지스터(31)의 내용과 x성분을 포함하는 부·주사방향의 도트위치를 표시하는 레지스터(42)의 내용을 가산하는 가산회로(ADD-A), 참조번호(38)는 상기 레지스터(32)의 내용과 x성분을 포함하는 주·주사방향의 도트위치를 표시하는 레지스터(44)의 내용을 가산하는 가산회로(ADD-B), 참조번호(39)는 상기 레지스터(34)의 내용과 y성분을 포함하는 부·주사방향의 도트위치를 표시하는 레지스터(46)의 내용을 가산하는 가산회로(ADD-C), 참조번호(40)는 상기 레지스터(35)의 내용과 y성분을 포함하는 주·주사방향의 도트위치를 표시하는 레지스터(48)의 내용을 가산하는 가산회로(ADD-D)이다.Reference numeral 37 is an addition circuit ADD-A for adding the contents of the register 31 and the contents of the register 42 indicating the dot positions in the sub-scanning direction including the x component, and the reference number ( 38 is an addition circuit ADD-B for adding the contents of the register 32 and the contents of the register 44 indicating the dot positions in the main and scanning directions including the x component, and reference numeral 39 denotes the above. An addition circuit (ADD-C) for adding the contents of the register 34 and the contents of the register 46 indicating the dot positions in the sub-scanning direction including the y component, and reference numeral 40 denotes the register 35. An addition circuit (ADD-D) that adds the contents of the register 48 that indicates the dot position in the main / scanning direction including the contents of y and the y component.

참조번호(41)는 1문자분의 도트보간처리를 개시할 때에 상기 레지스터(33)의 내용을 선택하고, 이후 1회의 주·주사가 실행될 때마다 가산회로(37)의 출력을 선택하는 데이터 셀렉터, 참조번호(42)는 데이터 셀렉터(41)에서 선택된 x성분을 포함하는 정수부와 소수부로 표시되는 도트보간시의 새로운 도트어드레스를 저장하는 레지스터, 참조번호(43)는 주·주사를 개시할 때에 상기 레지스터(42)의 내용을 선택하고, 이후 1도트분의 보간처리마다 가산회로(38)의 출력을 선택하는 데이터 셀렉터, 창조번호(44)는 데이터 셀렉터(43)에서 선택된 x성분을 포함하는 도트보간시의 새로운 도트어드레스를 저장하는 레지스터이다. 참조번호(45)는 1문자분의 도트보간처리를 개시할 때에 상기 레지스터(36)의 내용을 선택하고, 이후 1회의 주·주사가 실행될 때마다 가산회로(39)의 출력을 선택하는 데이터 셀렉터, 참조번호(46)는 데이터 셀렉터(45)에서 선택된 y성분을 포함하는 정수부와 소수부로 표시되는 도트보간시의 새로운 도트어드레스를 저장하는 레지스터, 참조번호(47)는 주·주사를 개시할 때에 상기 레지스터(46)의 내용을 선택하고, 이후 1도트분의 보간처리를 할 때마다 가산회로(40)의 출력을 선택하는 데이터 셀렉터, 참조번호(48)는 데이터 셀렉터(47)에서 선택된 y성분을 포함하는 도트보간시의 새로운 도트어드레스를 저장하는 레지스터이다. 참조번호(49)는 상기 각 데이터 셀렉터(41),(43),(45),(47)를 제어하는 선택제어회로(SC)이다.Reference numeral 41 selects the contents of the register 33 at the start of the dot interpolation process for one character, and then selects the output of the addition circuit 37 each time one main scan / scanning is executed. Is a register for storing the new dot address at the time of dot interpolation represented by the integer part and the fractional part including the x component selected by the data selector 41, and the reference number 43 is the start of the scanning and scanning. A data selector which selects the contents of the register 42, and then selects the output of the addition circuit 38 for every one-dot interpolation process; the creation number 44 includes the x component selected by the data selector 43; This register stores the new dot address for dot interpolation. Reference numeral 45 selects the contents of the register 36 at the start of the dot interpolation process for one character, and then selects the output of the addition circuit 39 each time a subsequent scan / scan is performed. And reference numeral 46 denotes a register for storing a new dot address at the time of dot interpolation represented by an integer part and a decimal part including the y component selected by the data selector 45, and reference numeral 47 denotes when starting and scanning. A data selector which selects the contents of the register 46 and selects the output of the addition circuit 40 each time the interpolation process is performed for one dot thereafter, and the reference numeral 48 denotes the y component selected by the data selector 47. Is a register that stores a new dot address during dot interpolation. Reference numeral 49 denotes a selection control circuit SC for controlling the respective data selectors 41, 43, 45, 47.

참조번호(50)는 후술하는 보간치와의 비교를 실행하기 위한 비교치, 즉 임계치(th)를 저장하는 레지스터이다.Reference numeral 50 is a register for storing a comparison value for performing comparison with an interpolation value described later, that is, a threshold value th.

참조번호(51)는 한자를 포함하는 소정의 도트매트릭스단위(16×16도트)의 문자패턴데이터가 격납된 한자패턴메모리(KPM)이다. 참조번호(52)는 한자패턴메모리(51)에서 판독된 1문자분의 도트패턴을 저장하는 고속 RAM에 의하여 구성된 1문자 버퍼이다. 여기에서는 1문자분의 도트패턴을 그 주위를 오프도트 "0"의 비트패턴으로 채운 상태로 기억한다. 참조번호(53)는 1문자버퍼(52)에 저장된 문자패턴데이터 중 레지스터(44),(48)의 각 정수부의 치에 따라 새로운 도트를 둘러싸는 1격자 4점의 도트정보를 선택적으로 출력하는 비트선택회로이다.Reference numeral 51 denotes a Chinese character pattern memory KPM in which character pattern data of a predetermined dot matrix unit (16 x 16 dots) containing Chinese characters is stored. Reference numeral 52 is a one-character buffer constructed by a high speed RAM that stores a dot pattern for one character read from the Chinese character pattern memory 51. Here, the dot pattern for one character is stored in the state filled with the bit pattern of the dot " 0 ". Reference numeral 53 selectively outputs dot information of four grids of one grid that surrounds a new dot according to the values of the respective integer portions of the registers 44 and 48 of the character pattern data stored in the one-character buffer 52. Bit selection circuit.

참조번호(54)는 비트선택회로(53)에서 출력되는 4비트의 정보를 저장하는 레지스터이다.Reference numeral 54 is a register that stores four bits of information output from the bit select circuit 53.

참조번호(55) 내지(57)는 비트선택회로(53)에서 출력되는 도트정보의 패턴을 인식하고, 4점의 도트로 둘러싸이는 새 도트의 보간치를 선택적으로 절환 제어하는 도트패턴인식부(DSP)의 구성요소를 이루는 것으로, 참조번호(55)는 레지스터(54)의 비트 내용에서 4점의 도트패턴상태를 인식하고, 후술하는 특정의 도트패턴상태시에 다시 그 주위의 특정한 2격자분의 도트정보를 차례로 선택하기 위하여 비트선택회로(53)를 제어하는 판별제어회로이다. 참조번호(56)는 이 판별제어회로(55)의 제어로 판독된 4비트의 정보를 저장하는 레지스터이다. 참조번호(57)는 판별제어회로(55)의 제어로 판독된 2격자분의 도트정보와 레지스터(54)의 도트정보와의 도트패턴 상태에 따른 1비트의 보간치 절환 선택신호를 출력하는 도트판별회로이다.Reference numerals 55 to 57 recognize dot patterns output from the bit select circuit 53, and dot pattern recognition units (DSP) for selectively switching and controlling the interpolation values of new dots surrounded by four dots. Reference numeral 55 recognizes a dot pattern state of four points in the bit contents of the register 54, and at a specific dot pattern state described later, It is a discrimination control circuit that controls the bit selection circuit 53 to sequentially select dot information. Reference numeral 56 is a register that stores 4-bit information read by the control of the discrimination control circuit 55. Reference numeral 57 denotes a dot for outputting a 1-bit interpolation value switching selection signal according to the dot pattern state between the two grid dot information read out by the control of the discrimination control circuit 55 and the dot information of the register 54. Discrimination circuit.

참조번호(58)는 레지스터(44)에 저장된 소수부의 치(5비트의 x성분을 포함하는 주·주사방향 오프셋치)와 레지스터(54)에 저장된 4점의 도트정보와 도트판별회로(57)에서 출력되는 1비트의 보간치 절환 선택신호를 입력정보로 하여 상기 4점의 도트정보로 둘러싸인 영역 내에 있어서의 새로운 도트의 보간치(Qxy)를 출력하는 보간테이블 ROM이다. 여기에서는 256K 비트(32Kx8비트)의 마스크 ROM를 사용하여 15비트의 판독어드레스에 따라 8비트(0-255레벨)의 보간치를 출력한다.Reference numeral 58 denotes the value of the fractional part stored in the register 44 (the main / scan direction offset value including the 5-bit x component) and the dot information and the dot discrimination circuit 57 of the four points stored in the register 54. The interpolation table ROM outputs the interpolation value Qxy of a new dot in the area surrounded by the four points of dot information by using the 1-bit interpolation value switching selection signal output from the input information as input information. Here, a mask ROM of 256K bits (32Kx8 bits) is used to output an 8-bit (0-255 level) interpolation value according to a 15-bit read address.

참조번호(59)는 보간테이블 ROM(58)에서 출력되는 보간치와 레지스터(50)에 저장된 임계치와의 비교를 취하는 비교기이고, 보간치가 비교치, 즉 임계치를 초과했을 때에 온 도트(휘점)를 표시하는 "1"레벨의 신호를 출력한다. 참조번호(60)는 비교기(59)에서 출력된 도트정보를 차례로 저장하고, 문자패턴이 전개되는 메모리의 기입비트단위(여기에서는 8비트 단위로 한다)마다 CPU 버스(12)에 출력하는 시프트레지스터이다.Reference numeral 59 denotes a comparator for comparing the interpolation value output from the interpolation table ROM 58 with the threshold value stored in the register 50. When the interpolation value exceeds the comparison value, that is, the threshold value, Outputs a signal of "1" level to be displayed. Reference numeral 60 sequentially stores the dot information output from the comparator 59, and outputs it to the CPU bus 12 for each write bit unit (here, 8 bit units) of the memory in which the character pattern is developed. to be.

제3도 내지 제11도는 각각 상기 일 실시예의 동작을 설명하기 위한 도면이다.3 to 11 are diagrams for explaining the operation of the above embodiment respectively.

제3a도 내지 (f)도는 각각 보간처리에 의하여 생성되는 새로운 도트를 둘러싸는 1격자 4점의 도트정보(도트패턴)와, 보간테이블 ROM(58)에 설정된 보간치의 레벨구분과, 테이블 형태와의 관계를 도시하는 도면이다. 여기에서는 보간치를 0 내지 255계단의 휘도(명암레벨)로 표시하고, 그 구분된 일부의 영역을 등고선으로 나타내고 있다.3A to 3F show the dot information (dot pattern) of one grid and four points surrounding each new dot generated by the interpolation process, the level classification of the interpolation value set in the interpolation table ROM 58, the table form and It is a figure which shows the relationship of. Here, the interpolation value is expressed by the luminance (contrast level) of 0 to 255 steps, and a part of the divided area is shown by the contour line.

제4도는 상기 1격자 4점의 도트패턴 중 1도트만이 온("1") 또는 오프("0")시의 테이블형태의 선택절환예를 설명하기 위한 것으로, 도트패턴인식부(DSP)는 예를 들면 주위 4점의 도트(D0,D1,D2,D3)중 1점만이 오프 즉 "0"(도면에서는 흰동그라미로 표시한 D0)일 때에, 또 그 주의의 격자의 특정도트(Da,Db)의 온·오프상태를 인식하여 Da,Db="1"일 때에 제3d도의 도시와 같은 코오너형태의 테이블(T1)을 선택하고, 또 Da, Db의 적어도 어느 한속이 "0"이면 제3f도의 도시와 같은 경사형태의 테이블(T0)을 선택한다. 이와 같이 4점의 도트영역 내에 위치하는 새로운 도트의 보간치는 그 4점의 도트가 상기한 특정의 패턴을 형성할 때 다시 고 주위의 도트상태에 의하여 정해진다.4 is a view for explaining a table-type selection switching example when only one dot of one dot pattern of four grids is on ("1") or off ("0"). Dot pattern recognition unit (DSP) For example, when only one point of four surrounding dots D0, D1, D2, and D3 is off, that is, "0" (D0 denoted by a white circle in the drawing), a specific dot Da of the lattice of the caution is noted. Recognizes the on / off state of Db) and selects the co-owner type table T1 as shown in FIG. 3d when Da, Db = "1 ", and at least one speed of Da, Db is " 0 " On the rear side, a table T0 having an inclined shape as shown in Fig. 3f is selected. In this way, the interpolation value of a new dot located in the dot region of four points is determined by the dot state around the high point again when the four dots form the above-described specific pattern.

제5a도 내지 제5d도는 각종의 패턴변환예를 도시한 것으로, 도면중 Sm는 주·주사방향, Ss는 부·주사방향을 각각 나타내고, 도면(a)는 정체(正體)(또는 장체, 평체), 도면(b)는 경사체, 도면(c)는 하부정돈형 경사체, 도면(d)는 회전체를 각각 나타낸다.5A to 5D show various pattern conversion examples, in which Sm represents the main and scanning directions, Ss represents the sub and scanning directions, respectively, and (a) shows a stagnation (or a long or flat body). ), (B) shows an inclined body, (c) shows a bottom-order inclined body, and (d) shows a rotating body, respectively.

제6a,b도는 도트보간처리의 출력대상 즉 이미지 출력대상과 그때의 도트보간시에 있어서의 주·주사방향(Sm) 및 부·주사방향(Ss)과의 관계를 설명하는 도면이다. 도면(a)는 CRT 표시시의 도트보간시에 있어서의 주·주사 및 부·주사의 방향을 나타내고, 도면(b)는 프린트 아우트시의 도트보간시에 있어서의 주·주사 및 부·주사의 방향을 각각 나타내고 있다. 이와 같이 CRT 표시출력시의 도트보간처리와 프린트아우트시의 도트보간처리에 있어서는 주·주사방향과 부·주사방향이 서로 뒤바뀐 상태가 된다.6A and 6B are diagrams for explaining the relationship between the output object of the dot interpolation process, that is, the image output object and the main / scanning direction Sm and the sub-scanning direction Ss at the time of dot interpolation. The figure (a) shows the direction of main, scanning and sub scanning at the time of dot interpolation at the time of CRT display, and the figure (b) shows the main, scanning and sub scanning at the time of dot interpolation at the time of printing out. Each direction is shown. Thus, in the dot interpolation process at the time of CRT display output and the dot interpolation process at the time of printout, the main / scan direction and the sub / scan direction are inverted.

제7도는 각종 설정데이터의 대응관계를 도시한 도면이다.7 is a diagram showing a correspondence relationship between various types of setting data.

제8도는 도트보간처리에 의하여 패턴변환된 문자와 그 문자에 외접(外接)하는 직사각형(정사각형을 포함)과의 관계를 도시한 도면이다.FIG. 8 is a diagram showing a relationship between a character pattern-transformed by dot interpolation processing and a rectangle (including a square) circumscribed to the character.

제9도는 각종 변형문자에 대한 문자피치(CP) 및 행피치(LP)의 설정예를 도시한 도면이다.9 is a diagram showing an example of setting of the character pitch CP and the row pitch LP for various modified characters.

제10도는 각 종류의 변형문자에 대한 하선의 전개예를 도시한 도면이다.FIG. 10 is a diagram showing an example of development of underline for each type of deformed character.

제11도는 구역기정동작을 설명하는 도면이다.11 is a view for explaining the zone setting operation.

이제부터 본 발명의 일 실시예의 동작을 설명한다. 도트보간시에 있어서 CPU(10)는 외부로부터 입력된 도트보간지정 정보에 따라 각종 레지스터의 초기설정을 실시한다. 즉, CPU(10)는 보간테이블 ROM(58)에서 생성되는 보간치와의 비교를 하기 위한 비교치, 즉 임계치(th)를 레지스터(50)에 세트한 후 지정된 확대·축소배율에 따라 기준이 되는 도트 새김폭(dx,dy:확대·축소배율의 역수치)을 산출하여 이것을 레지스터(26),(27)에 세트하고, 다시 회전 또는 경사체일 때는 그 지정 각도에 따르는 3각 함수데이터(sin, cos, tan)를 3각 함구테이블(24)에 세트한다.The operation of one embodiment of the present invention will now be described. At the time of dot interpolation, the CPU 10 performs initial setting of various registers in accordance with dot interpolation specification information input from the outside. That is, the CPU 10 sets the comparison value for comparison with the interpolation value generated in the interpolation table ROM 58, that is, the threshold value th in the register 50, and then sets the reference value according to the designated enlargement / reduction ratio. Calculate the dot indentation width (dx, dy: inverse of magnification / reduced magnification) and set it in the registers 26 and 27, and in case of rotation or inclination, the trigonometric function data (sin , cos, tan) are set in the triangular coin table 24.

그후 이들 레지스터(26),(27) 및 3각 함수테이블(24)의 설정데이터(sin, cos, tan)에 따라 도트보간어드레스를 생성하기 위한 초기치(초기치 어드레스:X1 init, Y1 init) 및 도트새김폭(DX1,DY1,DX2,DY2)을 산출하고, 이들의 데이터를 레지스터(31)∼(36)에 세트하는 동시에 확대 회전등의 패턴변환에 의하여 발생하는 문자높이, 문자폭의 변동에 따르는 V크기 및 H크기의 각 데이터를 산출하여 이것을 레지스터(21),(22)에 세트하고, 또 구역구분이 생길 때는 그 구역수를 산출하여 이 데이터를 레지스터(25)에 세트한다. 또, 도트보간된 문자를 그 출력시에 1 내지 7도트 범위 내에서 이동시키는 경우(예를 들면, 도트보간된 루우비문자(작은 활자의 문자) 및 반각문자 등을 프린트 아우트할 때에, 1 내지 7도트의 범위를 가지고 상하 이동시키는 경우 등), 또는 패턴변환된 문자의 주·주사방향 도트수가 고 출력대상이 되는 이미지메모리의 기입폭(8도트)의 배수가 되지 않고 이미지 메모리측의 바이트경계(기입폭)와 맞출 필요가 있을 경우 등에 있어서는 오프셋 레지스터(28)에 1 내지 7도트범위 내에서 오프셋치가 세트된다.Then, the initial values (initial value addresses: X1 init, Y1 init) and dots for generating the dot interpolation address according to the setting data (sin, cos, tan) of these registers 26, 27 and the trigonometric function table 24. Indentation widths DX1, DY1, DX2, and DY2 are calculated, and their data are set in the registers 31 to 36, and at the same time, the character height and character width caused by the pattern conversion such as enlargement rotation and the like are changed. The data of the V size and the H size are calculated and set in the registers 21 and 22, and when the zones are divided, the number of zones is calculated and this data is set in the register 25. Also, when the dot interpolated character is moved within the range of 1 to 7 dots at the time of its output (for example, when printing out the interpolated ruby ruby character (small letter) and half-width character, etc. The number of dots in the main / scanning direction of the pattern-converted character is not a multiple of the write width (8 dots) of the image memory to be output, and the byte boundary on the image memory side is not increased. When it is necessary to match the (write width), the offset value is set in the offset register 28 within the range of 1 to 7 dots.

상기와 같은 각 레지스터의 초기설정을 끝낸 후, CPU(10)는 이하와 같은 도트보간어드레스의 생성처리를 개시한다.After finishing the initial setting of each register as described above, the CPU 10 starts the process of generating the dot interpolation address as follows.

우선, 도트보간이 제5a도의 보시와 같은 정체(또는 장체, 평체)를 출력대상으로 하여 실시되는 경우(예를 들면, 단순한 화대·축소)를 예로 들어 전체의 동작을 설명한다. 이 도트보간시에 있어서는 레지스터(31)에 『0』 레지스터(32)에 도트새김폭 『dx』, 레지스터(33)에 주·주사방향(sm)의 초기치 『sx』, 레지스터(34)에 도트새김폭 『dy』, 레지스터(35)에 『0』, 레지스터(36)에 부·주사방향(Ss)의 초기치 『sy』가 각각 세트된다.First, the whole operation will be described taking as an example the case where dot interpolation is performed with the same identity (or long body, flat body) as shown in FIG. 5A (for example, simple drawing / reduction). In this dot interpolation, the register 31 has a dot writing width "dx" in the register 32, the initial value "sx" in the main and scanning directions sm in the register 33, and a dot in the register 34. FIG. The engraving width "dy", "0" in the register 35, and the initial value "sy" in the sub-scanning direction Ss are set in the register 36, respectively.

여기에서 상기 레지스터(32,34)에 세트되는 도트새김폭(dx,dy)은 확대·축소배율의 역수치로서 주어진다. 또, 레지스터(33)에는 [Ix=(dx-1)/2]로 되는 Ix가 초기치(Sx)로 주어지고, 레지스터(36)에는 [Iy=(dy-1)/2]로 되는 Iy가 초기치(Sy)로 주어진다. 여기서 dx 또는 dy가 『1』 이하일 때(즉, 확대시)는 Ix 또는 Iy가 부(負)가 되어 1문자버퍼(52)의 원문자패턴 격납영역 외의 어드레스를 표시하고, dx 또는 dy가 『1』이상일 때(즉, 축소시)는 Ix 또는 Iy가 정(正)이 되어 1문자버퍼(52)의 원문자패턴 격납영역 내의 어드레스를 표시한다. 또, 레지스터(50)에는 보간테이블 ROM(58)에서 출력되는 보간치와 비교를 하고, 새로운 도트의 어느쪽 레벨이상의 것을 의미있는 도트로 하느냐를 결정하기 위한 임의의 레벨(0-255레벨)의 비교치, 즉 임계치(th)가 세트된다.The dot notation widths dx and dy set in the registers 32 and 34 are given as inverse values of the enlargement / reduction ratio. In the register 33, Ix having [Ix = (dx-1) / 2] is given as an initial value Sx, and the register 36 has Iy having [Iy = (dy-1) / 2]. It is given by the initial value Sy. Here, when dx or dy is equal to or smaller than "1" (that is, when enlarged), Ix or Iy becomes negative to display an address outside the original character pattern storage area of the one-character buffer 52, and dx or dy is " 1 'or more (i.e., at the time of reduction), Ix or Iy is positive to display the address in the original character pattern storage area of the one-character buffer 52. In addition, the register 50 is compared with the interpolation value output from the interpolation table ROM 58, and an arbitrary level (0-255 level) for determining which level or more of the new dot is a meaningful dot. The comparison value, i.e. threshold th, is set.

그리고, CPU(10)는 한자패턴메모리(51)에서 도트보간대상이 되는 1문자분의 도트패턴 데이터를 판독하여, 이 문자패턴데이터를 1문자버퍼(52)에 기입한다. 이때, 1문자버퍼(52)에는 상기와 같이 도트보간대상이 되는 1문자분의 도트패턴데이터가 그 주위를 의미 없는 "0"의 도트로 둘러싸인 상태로 기억된다.Then, the CPU 10 reads the dot pattern data for one character to be interpolated from the Chinese character pattern memory 51 and writes the character pattern data into the one character buffer 52. At this time, the one-character buffer 52 stores the dot pattern data for one character to be interpolated as described above in a state surrounded by meaningless " 0 " dots.

상기 레지느터(31∼36)로의 데이터 및 1문자버퍼(52)로의 보간대상 문자패턴의 취출이 끝난 후, 선택제어회로(49)의 제어 하에 레지스터(33,36)에 저장된 초기어드레스가 되는 데이터(Sx,Sy)가 데이터 셀렉터(41,45)에 의하여 선택되어 각각 대응하는 레지스터(42.46)에 저장된다. 또, 주·주사를 개시할 때에 있어서는 상기 레지스터(42,46)에 저장된 데이터(Sx,Sy)가 데이터 셀렉터(43,47)에 의하여 선택되어 각각 대응하는 레지스터(44,48)에 저장된다.Data to be the initial addresses stored in the registers 33 and 36 under the control of the selection control circuit 49 after the data to the registers 31 to 36 and the interpolation target character pattern to the single character buffer 52 are finished. (Sx, Sy) are selected by the data selectors 41, 45 and stored in the corresponding registers 42.46, respectively. At the start of scanning and scanning, the data Sx and Sy stored in the registers 42 and 46 are selected by the data selectors 43 and 47 and stored in the corresponding registers 44 and 48, respectively.

이 레지스터(44,48)에 저장된 데이터(Sx,Sy)는 그 정수부의 치가 비트선택회로(53)에 주어지고, 소수부의 치가 보간테이블 ROM(58)에 주어진다.The data Sx and Sy stored in these registers 44 and 48 are given the value of the integer part to the bit selection circuit 53, and the value of the fractional part is given to the interpolation table ROM 58.

비트선택회로(53)는 상기 입력된 정수부의 치에 따라 1문자버퍼(52)로부터 1격자 4점의 도트정보를 선택하여 보간테이볼 ROM(58)에 공급한다. 이때, 확대시(dX,dy<1)에 있어서는 비트선택회로(53)에 1문자버퍼(52)의 원문자패턴 격납영역 외의 어드레스를 표시하는 부(負)의 치가 주어지므로 원문자패턴 격납영역 외의 도트를 포함하는 1격자 4점의 도트 정보에서 도트선택을 개시한다. 또 축소기(dx,dy>1)에 있어서는 비트 선택회로(53)에, 1문자 버퍼(52)의 원문자패턴 격납영역 내의 어드레스를 표시하는 정(正)의 치가 주어지므로 원문자패턴 격납영역 내의 1격자 4점의 도트정보에서 도트선택을 개시한다.The bit selection circuit 53 selects dot information of one grid and four points from the one-character buffer 52 according to the input value of the integer part, and supplies it to the interpolation table ROM 58. At this time, in enlargement (dX, dy <1), since the bit selection circuit 53 is given a negative value indicating an address other than the original character pattern storage area of the one-character buffer 52, the original character pattern storage area Dot selection is started from dot information of one grid and four points including other dots. In the reducer (dx, dy> 1), since the bit selection circuit 53 is given a positive value indicating an address in the original character pattern storage area of the one-character buffer 52, the original character pattern storage area Dot selection is started from dot information of four points in one grid.

보간테이블 ROM(58)은 상기 레지스터(44,48)로부터의 각 오프셋(계 10비트)과, 비트선택회로(53)로부터의 주위 4점의 도트정보와, 도트패턴인식부(DSP)로부터의 1비트의 보간치절환선택신호를 입력정보로 하여그 내용에 따르는 8비트의 보간치(Qxy)를 출력한다. 이때, 비트선택회로(53)에서 출력된 1격자 4점의 도트패턴이 도트패턴인식부(DSP)에 의하여 인식되어 제4도의 도시와 같이 특정의 도트패턴일 때는 다시 그 주위의 격자의 특정도트의 온·오프상태를 인식하여, 그 도트 상태에 따른 1비트의 보간치절환 선택신호를 출력한다. 즉. 예를 들면 제4도의 도시와 같이 주위 4점의 도트(D0,D1,D2,D3) 중 1점만이 오프 즉 "0"(도면에서는 흰동그라미로 표시한 D0)일 때는 다시 그 주위의 격자의 특정도트(Da,Db)의 온·오프상태를 인식하고, Da,Db="1"이면 제3d도의 도시와 같은 코오너 형태의 테이블(T1)을 선택하고, 또 Da, Ub의 적어도 어느 한쪽이 "0"이면 제3f도의 도시와 같은 경사형 형태의 테이블(T0)을 선택하도록 보간치절환선택신호를 출력한다. 또, 주위 4점의 도트(D0,D1,D2,D3) 중 1점만이 온 즉 "1"(도면에서 흰동그라미에 사선을 그은 동그라미로 도시한 D0)일 때는 다시 그 주위의 격자의 특정도트(Da,Ub)의 온·오프상태를 인식하고, Da,Ub="0"이면 제3a도의 도시와 같은 코오너 형태의 테이블(T1)을 선택하고, 또 Da, Uh의 적어도 어느 한쪽이 "1"이면 제3e도의 도시와 같은 경사형 형태의 테이블(T0)을 선택하기 위한 보간치절환선택신호를 출력한다. 이와 같이 4점의 도트영역 내에 위치하는 새로운 도트의 보간치는 그 4점의 도트가 상기와 같은 특정의 패턴을 형성할 때 다시 그 주위의 도트상태에 의하여 정해진다. 그리고 상기 보간테이블 ROM(58)에서 출력된 8비트(0-255레벨)의 보간치는 비교기(5B)에 입력되어 레지스터(36)에 저장된 비교치 즉 임계치와 비교되는 보간치가 임계치를 초과하고 있으면 의미있는 도트인 것을 나타내는 "1"레벨의 신호를 출력하고, 또 보간치가 임계치를 초과하고 있지 않으면 의미가 없는 도트인 것을 표시하는 "0"레벨의 신호를 출력한다.The interpolation table ROM 58 stores each offset (10 bits in total) from the registers 44 and 48, dot information of four points of surroundings from the bit selection circuit 53, and the dot pattern recognition unit DSP. The 1-bit interpolation value switching selection signal is used as input information, and an 8-bit interpolation value Qxy corresponding to the content is output. At this time, when the dot pattern of one grid and four points output from the bit select circuit 53 is recognized by the dot pattern recognition unit DSP and is a specific dot pattern as shown in FIG. Recognizes an on / off state and outputs a 1-bit interpolation value switching selection signal corresponding to the dot state. In other words. For example, as shown in FIG. 4, when only one of four surrounding dots D0, D1, D2, and D3 is off, that is, "0" (D0 in the figure), the lattice around the grid Recognizes the on / off state of the specific dots Da and Db, and if Da, Db = " 1 ", selects the co-owner type table T1 as shown in FIG. 3d, and at least one of Da and Ub. If " 0 ", the interpolation switching selection signal is output so as to select the inclined table T0 as shown in Fig. 3f. In addition, when only one point among four surrounding dots D0, D1, D2, and D3 is on, that is, "1" (D0 shown as a circle drawn with a white circle in the drawing), a specific dot of the surrounding grid is again. Recognizing the on / off state of (Da, Ub), and Da, Ub = " 0 " selects the co-owner type table T1 as shown in FIG. 3a, and at least either of Da and Uh is " 1 ", an interpolation value switch selection signal for selecting the inclined table T0 as shown in FIG. 3E is output. In this way, the interpolation value of the new dot located in the dot region of four points is again determined by the dot state around the dots when the four dots form a specific pattern as described above. The interpolation value of 8 bits (0 to 255 level) output from the interpolation table ROM 58 is input to the comparator 5B, which means that the interpolation value compared to the threshold stored in the register 36 exceeds the threshold. A signal of level "1" indicating that the dot is present is output, and a signal of level "0" indicating that the dot is meaningless if the interpolation value does not exceed the threshold.

한편, 보간테이블 ROM(58)에서 1도트의 보간치가 출력된 후에는 레지스터(44)의 내용과 레지스터(32)의 내용이 가산회로(38)에 의하여 가산되는 동시에 레지스터(48)의 내용과 레지스터(35)의 내용이 가산회로(40)에 의하여 가산되고 그 각 가산결과의 데이터가 선택제어회로(49)의 제어 하에 각각 대응되는 데이터 셀렉터(43,47)에 의하여 선택되어서 레지스터(44,48)에 저장된다. 이때, 주 주사방향의 도트새김폭을 도시하는 레지스터(32,35) 중 레지스터(32)에는 지정된 확대, 축소배율에 따르는 도트 새김폭(dx)이 설정되어 있고, 레지스터(35)에는 정체(또는 장체, 평체)의 도트보간이므로 상기와 같이 『0』이 설정됨으로, 레지스터(44)의 내용(도트어드레스)은 1도트의 보간처리마다 지정된 확대, 축소배율에 따르는 도트새김폭(dx)을 가지고 차례로 갱신되나, 레지스터(48)의 내용은 결과적으로 갱신되지 않고 초기설정시의 데이터가 그대로 유지된다. 또, 1회의 주·주사가 끝날 때마다, 레지스터(42)의 내용과 레지스터(31)의 내용이 가산회로(37)에 의하여 가산되는 동시에 레지스터(46)의 내용과 레지스터(34)의 내용이 가산회로(38)에 의하여 가산되고, 그 각 가산결과의 데이터가 선택제어회로(49)의 제어 하에 각각 대응되는 데이터 셀렉터(41,45)에 의하여 선택되어서 레지스터(42,46)에 각각 저장된다. 이때, 부.주사방향의 도트새김폭을 표시하는 레지스터(31,34)중 레지스터(34)에는 지정된 확대.축소배율에 따르는 도트새김폭(dy)이 설정되어 있고, 레지스터(31)에는 정체(또는 장체, 평체)의 도트보간이므로 상기와 같이 『0』이 설정됨으로, 레지스터(46)의 내용(도트어드레스)은 1회의 주.주사가 실행될 때마다 지정된 확대.축소배율에 따르는 도트새김폭(dy)을 가지고 갱신되나, 레지스터(42)의 내용은 결과적으로 갱신되지 않고 초기 설정시의 데이터가 그대로 유지된다.On the other hand, after the interpolation value of one dot is output from the interpolation table ROM 58, the contents of the register 44 and the contents of the register 32 are added by the addition circuit 38, and at the same time, the contents of the register 48 and the register. The content of (35) is added by the addition circuit 40, and the data of each addition result is selected by the corresponding data selectors 43 and 47 under the control of the selection control circuit 49, and the registers 44 and 48 ) At this time, among the registers 32 and 35 showing the dot engraving width in the main scanning direction, the dot writing width dx corresponding to the designated enlargement and reduction ratio is set in the register 32, and the register 35 is stagnant (or Since dot interpolation is set as above, the content (dot address) of the register 44 has a dot indentation width (dx) in accordance with the enlargement and reduction ratio specified for each dot interpolation process. Although updated sequentially, the contents of the register 48 are not updated as a result, and the data at the initial setting is retained. In addition, the contents of the register 42 and the contents of the register 31 are added by the addition circuit 37 at the end of one main scan / injection. The contents of the register 46 and the contents of the register 34 are also added. Is added by the addition circuit 38, and the data of each addition result is selected by the corresponding data selectors 41 and 45 under the control of the selection control circuit 49, and stored in the registers 42 and 46, respectively. . At this time, among the registers 31 and 34 indicating the sub-scan direction in the scanning direction, the dot 34 according to the designated magnification / reduction ratio is set in the register 34, and the register 31 has a stagnation ( Or "0" is set as described above because the dot interpolation of a long body and a flat body, the content (dot address) of the register 46 is the dot indentation width (depending on the magnification / reduction ratio specified each time a main scan or a scan is executed). dy), but the contents of the register 42 are not updated as a result and the data at the initial setting is retained.

이와 같이 하여 차례로 보간테이블 ROM(58)로부터 새로운 도트어드레스에 대한 보간치가 출력되고 이 보간치가 비교기(58)에 의하여 레지스터(50)의 임계치(th)와 비교되어 새로운 도트정보가 생성된다.In this manner, interpolation values for the new dot addresses are sequentially output from the interpolation table ROM 58, and the interpolation values are compared with the threshold value th of the register 50 by the comparator 58 to generate new dot information.

그리고 상기 비교기(59)에서 출력된 보간처리 후의 새로운 도트정보는 차례로 시프트 레지스터(60)에 저장되어 1바이트 단위로 CPU버스(12)에 송출된다.The new dot information after interpolation processing output from the comparator 59 is stored in the shift register 60 in turn and sent to the CPU bus 12 in units of 1 byte.

이때, CPU버스(12)에 송출되는 도트보간처리된 문자패턴 데이터가, 예를 들면 프린트 아우트용으로서의 인자제어부(17)의 라인버퍼(18)에 기입되는 경우, 또 오프셋 레지스터(28)에 1 내지 7도트 범위 내의 오프셋치가 세트되고 있는 경우(예를 들면, 도트보간된 루우비문자를 프린트아우트시에 i(i=1,2‥‥‥7)도트하방으로 이동시키는 경우), 또는, 패턴변환된 문자의 주.주사방향 도트수가 출력대상이 되는 이미지 메모리의 기입폭(8도트)의 배수가 되지 않고 이미지 메모리측의 바이트경계(기입폭)와 합칠 필요가 있어 오프셋레지스터(28)에 그 오프셋치(i)가 설정되어 있는 경우 등에 있어서는, 그 오프셋 레지스터(28)의 오프셋치(i)에 따라 오프셋 데이터 생성부(28)에서 오프셋 데이터(i개의 "0")가 생성되어, 이 데이터가 주.주사의 개시에 앞서서 시프트레지스터(60)에 세트되고, 그 후에 계속해서 도트보간된 데이터 즉, 변환 처리된 문자패턴트가 기입된다.At this time, in the case where the dot interpolated character pattern data sent to the CPU bus 12 is written into the line buffer 18 of the printing control unit 17 for printout, for example, 1 is written to the offset register 28. When an offset value within the range of 7 to 7 dots is set (e.g., when the dot interpolated ruby ruby character is moved below i (i = 1, 2 ... 7) dot at the time of printout), or a pattern The number of dots in the scanned / scanned direction of the converted characters does not need to be a multiple of the write width (8 dots) of the image memory to be output, and must be combined with the byte boundary (write width) on the image memory side. In the case where the offset value i is set or the like, the offset data generation unit 28 generates offset data (i " 0 " s) in accordance with the offset value i of the offset register 28. Note: Shift Regis Prior to Initiation of Injection After the data is set in the data recorder 60, the data interpolated subsequently, that is, the converted character pattern is written.

상기 동작은 정체(또는 장체, 평체)를 출력대상으로 한 경우였으나, 예를 들면 회전체를 출력 대상으로 한 경우의 도트보간 어드레스의 생성처리시에 있어서는 레지스터(31) 내지(36)의 각각에 대하여 지정회전각에 따르는 3각 함수 테이블(24) 내의 소정 3각 함수 데이터가 한 요소로서 포함되는 데이터가 세트된다.The above operation was a case where a stagnant (or long body or a plain) object was used as an output target. For example, when the dot interpolation address is generated when a rotating body is used as an output target, each of the registers 31 to 36 is used. With respect to the predetermined rotation angle, data is set in which predetermined trigonometric function data in the trigonometric function table 24 are included as one element.

즉, 지정된 회전각을 [θ0], 원래폰트(font)의 x방향 도트수를 [a+1], 원래 폰트(font)의 y방향의 도트수를 [b+1]로 하면, 레지스터(31)에는 DX1=-dx.sin θ0 레지스터(32)에는 DX2=dx.cos θ0 레지스터(34)에는 DY1=dy.cos θ0 레지스터(35)에는 DY2=dy.sin θ0이 각각 세트된다.That is, if the designated rotation angle is [θ0], the number of dots in the x direction of the original font is [a + 1] and the number of dots in the y direction of the original font is [b + 1], the register 31 ), DY1 = dy.cos θ0 is set in the register DX1 = -dx.sin θ0 in the register 32, and DY2 = dy.sin θ0 in the register 35 in the DY1 = dy.cos θ0 register.

또, 레지스터(33, X1 init) 및 레지스터(36,Y1 init)에는, (1) 0°≤θ°≤90°일 때 X1 init=1/2 a-1/2(a+1-dx) cos 2θ0 Y1 init=-1/2(1-dy) -1/2(a+1-dx)dy/dx sin 2θ0In the registers 33 and X1 init and 36 and Y1 init, (1) X1 init = 1/2 a-1 / 2 (a + 1-dx) when 0 ° ≤θ ° ≤90 ° cos 2θ0 Y1 init = -1 / 2 (1-dy) -1/2 (a + 1-dx) dy / dx sin 2θ0

(2) 90°≤θ0≤180°일 때 X1 init=a+1/2(1-dx) -1/2(b+1-dy) dx/dy sin 2θ0 Y1 init=1/2b+1/2(h+1-dy)corm 20θ0(2) When 90 ° ≤θ0≤180 ° X1 init = a + 1/2 (1-dx) -1/2 (b + 1-dy) dx / dy sin 2θ0 Y1 init = 1 / 2b + 1 / 2 (h + 1-dy) corm 20θ0

(3) 180°≤θ0≤270°일 때 X1 init=1/2a+1/2(a+1-dx) cos 2θ0 Y1 init=b+1/2(1-dy) +1/2(a+1-dx)dy/dx sin 2θ0(3) When 180 ° ≤θ0≤270 ° X1 init = 1 / 2a + 1/2 (a + 1-dx) cos 2θ0 Y1 init = b + 1/2 (1-dy) +1/2 (a + 1-dx) dy / dx sin 2θ 0

(4) 270°≤θ0≤360°일 때 X1 init=1/2(1-dx) +1/2(b+1-dy) dx/dy sin 2θ0 Y1 init=1/2 b-l/2(b+1dy) cos 2θ0을 각각 세트한다.(4) When 270 ° ≤θ0≤360 ° X1 init = 1/2 (1-dx) +1/2 (b + 1-dy) dx / dy sin 2θ0 Y1 init = 1/2 bl / 2 (b + 1dy) sets cos 2θ0 respectively.

상기와 같이하여 회전각도(θ0)에 아르는 3각 함수 데이터를 포함하는 도트새김폭, 초기어드레스 등의 각 설정치(DX1,DX2,DY1,DY2,X1, init,Y1 init)를 산출하여 각각 대응하는 레지스터(31) 내지(36)에 세트한 후 상기한 바와 같은 주.주사방향 및 부.주사방향에 대한 도트보간 어드레스 생성처리를 차례로 실행함으로써 지정가도(θ0)에 따른 회전문자 패턴도트가 얻어진다.As described above, each set value (DX1, DX2, DY1, DY2, X1, init, Y1 init), such as dot indentation width and initial address, which includes trigonometric function data, is corresponding to the rotation angle θ0. After setting in the registers 31 to 36, a dot interpolation address generation process for the main / scan direction and the sub-scan direction as described above is executed in order to obtain a rotation character pattern dot according to the designated value? Lose.

또, 경사형문자를 출력대상으로 했을 경우의 도트보간 어드레스의 생성처리시에 있어서는 레지스터(31) 내지(36)중의 특정한 레지스터예 지정경사각에 따르는 3각 함수 테이블(24) 내의 소정의 3각 함수데이터를 한 요소로서 포함하는 데이터가 세트된다.In addition, during the generation process of the dot interpolation address when the oblique character is used as the output target, the predetermined trigonometric function in the trigonometric function table 24 corresponding to the specific register example designation inclination angle in the registers 31 to 36 is specified. Data including data as one element is set.

즉, 지정된 경사각을 『θ0』, 원래폰트(font)의 x방향도트수를 [a+1], 원래폰트(font)의 y방향 도트수를 [h+1]로 하면, θ°<θ0<90°의 범위에서, 레지스터(31)에는 DX1=dx. tan θ0 레지스터(32)에는 DX2=dx 레지스터(34)에는 DYI=dy 레지스터(35)에는 DY2=0이 각각 세트되고. 또, 레지스터(33)에는 X1 init1/2(1-dx)-(h+1-dy) dx/dy tan θ0, 레지스터(36)에는 Y1 init=-1/2(1-dy)가 각각 세트된다.That is, if the designated inclination angle is &quot; θ0 &quot;, the number of dots in the x direction of the original font is [a + 1] and the number of dots in the y direction of the original font is [h + 1], θ ° <θ0 < In the range of 90 °, the register 31 has DX1 = dx. In the tan θ0 register 32, DY2 = dx2 is set in the DYI = dy register 35 in the DX2 = dx register 34, respectively. In the register 33, X1 init1 / 2 (1-dx)-(h + 1-dy) dx / dy tan θ0 and Y36 init = -1 / 2 (1-dy) are set in the register 36, respectively. do.

상기와 같이하여 경사각도(θ0)에 따르는 3각 함수 데이터를 포함하는 도트새김폭, 초기어드레스 등의 각 설정치(DX1,DX2,DY1,DY2,X1 init, Y1 init)를 산출하여 각각 대응하는 레지스터(31) 내지(36)에 세트한 후, 상기와 같은 주.주사방향 및 부 주사방향에 대한 도트보간 어드레스 생성처리를 차례로 실행함으로써 지정각도(θ0)에 따라 경사화 된 이탤릭체문자 패턴도트를 얻을 수 있다.As described above, each set value (DX1, DX2, DY1, DY2, X1 init, Y1 init), such as dot indentation width and initial address, including trigonometric function data according to the inclination angle θ0, is calculated, respectively. After setting to (31) to (36), italic-pattern pattern dots inclined according to the designated angle (θ0) are obtained by sequentially performing dot interpolation address generation processing for the main / scanning direction and the sub-scanning direction as described above. Can be.

상기 설명과 같이, 지정각도(θ0)에 따르는 3각 함수 데이터를 포함하는 도트새김폭, 초기어드레스 등의 각 설정치(DX1,DX2,DY1,DY2,X1 init, Y1 init)에 따라 상기와 같은 주.주사방향 및 부.주사방향에 대한 도트보간 어드레스 생성처리를 차례로 실행하여 그 생성된 도트보간 어드레스를 기초로 새로운 도트정보를 얻는다. 이 새로운 도트정보는 상기와 같이 차례로 시프트레지스터(60)에 저장되어 바이트(8비트) 단위로 CPU버스(12)를 경유하여 출력대상이 된다. 예를 들면 인자제어부(17)의 라인 버퍼(18)에 기입된다.As described above, according to the set values (DX1, DX2, DY1, DY2, X1 init, Y1 init) such as dot indentation width and initial address including trigonometric function data according to the designated angle θ0, The dot interpolation address generation processing for the scanning direction and the sub-scanning direction is executed in order to obtain new dot information based on the generated dot interpolation address. This new dot information is sequentially stored in the shift register 60 as described above and becomes an output object via the CPU bus 12 in units of bytes (8 bits). For example, it is written to the line buffer 18 of the print control unit 17.

이때, 라인버퍼(18)는 통상 인자문자높이의 도트구성에 대응하는 비트폭(예를 들면. 세로 8×3=24도트)으로 구성되므로, 상기와 같은 회전체문자, 이탤릭체문자 등의 변형문자에 대해서는 축소패턴의 경우를 제외하고는 24도트의 크기에 수용되지 않는다. 따라서, 이와 같은 경우에는 상기한 레지스터의 초기설정시에 새로이 생성되는 문자 패턴을 촉수의 구역으로 구분하도록 CPU(10)가 지정된 변환문자체 및 그 글자의 각도, 확대, 축소배율 등을 토대로 변환된 문자에 대한 구역수를 산출하여 그 구역수를 표시하는 데이터를 구역지정용 레지스터(25)에 세트하여 구역단위로 패턴을 기입할 때마다 상기한 레지스터(25)의 내용을 감소(-1)하고, 그 내용이 『0』가 될 때까지는 각 구역의 패턴 데이터를 동일문자패턴으로서 취급한다. 즉 구역지정용 레지스터(25)에 의하여 지정된 구역에 대해서는 그 각 패턴간에 공백에리어(area, 행간격)를 끼어 넣지 않고, 연속하는 도트인자지정을 실행한다. 이때의 구역구분의 한 예를 제11도에 도시한다.At this time, since the line buffer 18 is usually composed of a bit width (e.g., vertical 8x3 = 24 dots) corresponding to the dot structure of the printed character height, the modified characters such as the above-mentioned rotational characters and italic characters. Is not accommodated in the size of 24 dots except for the reduction pattern. Therefore, in such a case, the character converted by the CPU 10 to which the newly generated character pattern is divided into tentacle zones at the time of initial setting of the register is designated based on the angle, magnification, reduction factor, etc. of the character. The data of the register 25 is decreased (-1) each time a pattern is written in units of zones by calculating the number of zones for the zone and setting the data indicating the number of zones in the zone designation register 25. Until the contents become "0", the pattern data of each zone is treated as the same character pattern. In other words, for the area designated by the area designation register 25, continuous dot factor designation is executed without interposing an area (line spacing) between the patterns. An example of the zone division at this time is shown in FIG.

상기 구역수의 산출수단은 제7도 및 제8도의 도시와 같이, 지정된 회전각 또/경사각도/확대.축소배율 등에서 변환(변형)된 문자에 대하여 외접하는 x,y방향의 직사각형(정사각형을 포함)의 크기를 구하고 그 사각형이 서로 접하는 2변의 각 도트수(x,y도트수)를 구하여 이것을 상기한 레지스터 초기 설정시에 V size 및 H size의 데이터로서 레지스터(21,22)에 세트해 놓음으로써 쉽게 인식할 수 있다. 즉, 어떤 각도를 가지고 변환된 문자에 대해서는 그 문자의 기입(취급)이 그 문자에 외접하는 수평 수직선상의 직사각형의 에리어(area)를 토대로 하여 실행되는 것으로, 예를 들면 프린트 아우트일 때의 도트보간처리시에 있어서는 레지스터(22)에 저장된 H size의 데이터를 라인버퍼(18)의 비트폭 『24』로 나눗셈함으로써 쉽게 상기 구역수를 구할 수 있고, 또 표시출력일 때의 도트보간처리시에 있어서는 레지스터(21)에 저장된 V size의 데이터를 1표시행의 비트폭 『24』로 나눗셈함으로써, 쉽게 구역수를 구할 수 있다.As shown in Figs. 7 and 8, the means for calculating the number of zones includes a rectangle (square) in the x and y directions that circumscribes the characters converted (deformed) at a designated rotation angle, inclination angle, enlargement, reduction ratio, and the like. The number of dots (x, y dots) of the two sides of the squares in contact with each other, and set them in the registers 21 and 22 as data of V size and H size at the initial setting of the register described above. It can be easily recognized by releasing it. That is, for a character converted at an angle, the writing (handling) of the character is performed based on an area of a rectangle on a horizontal vertical line circumscribed to the character, for example, dot interpolation in the case of a print outer. At the time of processing, the area number can be easily obtained by dividing the H size data stored in the register 22 by the bit width "24" of the line buffer 18, and at the time of dot interpolation processing at display output. By dividing the V size data stored in the register 21 by the bit width "24" of one display line, the number of zones can be easily obtained.

또, 상기 구역지정용 레지스터(25)에 임의의 구역지정 데이터를 고정적으로 부여함으로써 지정된 동일구역의 이미지 데이터를 연속적으로 반복하여 이미지 전개할 수 있다. 이에 의하여 상기 도트보간처리에 의하여 변형된 문자패턴을 다시 그 일부 또는 전부를 용장화(冗長化)된 변형문자 패턴으로서 인자 또는 표시 출력할 수도 있다.Further, by arbitrarily giving arbitrary zoning data to the zoning register 25, image data of the designated same zone can be continuously and repeatedly image developed. As a result, the character pattern deformed by the dot interpolation process can be printed or displayed as a modified character pattern which is partially or entirely redundant.

또. 상기한 V size 및 H size의 데이터는 문자피치를 설정할 때와, 하선/방선을 처리할 때에도 참조된다. 즉, 상기와 같은 주사방향으로 임의의 경사각도를 가지는 도트보간에 의하여 얻어지는 경사, 회전등의 분자는 그 문자 전체의 높이(문자높이) 및 폭(문자폭)이 경사각도, 또는 그것에 더하여 확대.축소배율 등에 따라 여러 가지로 변화된다. 따라서, 상기와 같은 변형문자를 통상의 행, 열방향(x, y 방향)을 가지고 이미지 출력했을 때 문자피치, 또는 하선/방선 등을 기존의 고정적인 파라미터 지정구단으로 정할 수가 없다.In addition. The data of V size and H size described above is also referred to when setting the character pitch and when processing the underline / radiation. That is, the molecules such as tilt and rotation obtained by dot interpolation having an arbitrary tilt angle in the scanning direction as described above have the height (character height) and the width (character width) of the entire character being inclined angle or in addition thereto. It varies depending on the reduction factor. Therefore, when the above-described modified characters are outputted in the normal row and column directions (x and y directions), the character pitch or the underline / radiation cannot be determined as the existing fixed parameter designation section.

그러므로, 문자피치, 하선/방선 등의 처리에 대해서도 상기와 같은 외접하는 직사각형을 문자의 보디페이스(body face)로 하여 취급한다. 이하에 이들의 처리수단을 설명한다.Therefore, the above-mentioned circumscribed rectangles are also treated as the body face of the character in the processing of the character pitch, underline / radiation, and the like. These processing means will be described below.

우선, 문자피치의 처리동작을 설명한다. 상기와 같이 1문자분의 도트보간처리가 실행되어 새로이 생성된 1문자분의 도트이미지가 출력대상이 되는, 예를 들면 인자제어부(17) 내의 라인버퍼(18)에 전개될(기입)때마다 CPU(10)레지스터(21)의 내용(V size)이 갱신되었는지 아닌지를 판단한다. 그리고 상기 레지스터(21)의 내용이 갱신되어 있지 아니하면 레지스터(21)에 저장된 데이터(V size)에 다시 그 1/2의 값을 더한 데이터를 문자피치를 표시하는 제어데이터로서 인자제어부(17)에 공급하고 라인버퍼(18)상에 전개되는 문자의 피치를 제어한다. 또, 상기 레지스터(21)의 내용이 갱신될 때는 그 갱신전의 데이터를 특정 레지스터영역에 보관해 놓고, 그 갱신시에 있어서의 특정 레지스터영역에 보관한 갱신전의 데이터와 갱신된 데이터의 합의 1/4의 값을 다시 상기 레지스터(21)에 저장된 갱신후의 데이터에 더해서 이것을 문자피치를 표시하는 제어데이터로서 인자제어부(17)에 공급하고, 라인버퍼(18)상에 전개되는 문자의 피치를 제어한다.First, the processing operation of the character pitch will be described. When the dot interpolation process for one character is executed as described above and a newly generated one-dot dot image is to be output, for example, each time it is developed (written) in the line buffer 18 in the print control unit 17. It is determined whether or not the contents V size of the CPU 10 register 21 are updated. If the contents of the register 21 are not updated, the print control unit 17 serves as control data for displaying the character pitch of the data (V size) stored in the register 21, plus the value of the value 1/2. The pitch of the characters to be supplied to and expanded on the line buffer 18 is controlled. When the contents of the register 21 are updated, 1/4 of the sum of the data before the update and the updated data is stored in the specific register area at the time of the update and stored in the specific register area at the time of the update. Is added to the updated data stored in the register 21 again and supplied to the print control unit 17 as control data indicating character pitch, and the pitch of the characters developed on the line buffer 18 is controlled.

이와 같이, 어떤 각도를 가지고 변환된 문자에 대해서는 그 문자의 기입(취급)이 그 문자에 외접하는 수평·수직선상의 직사각형의 에리어(area)를 토대로 하여 실행되므로 그 직사각형의 횡폭(프린트아우트의 경우는 V size, 표시출력의 경우는 H size)을 따라 인접하는 문자와의 사이의 피치가 결정된다. 행피치에 대해서도 상기와 같은 피치제어가 실시된다. 이때의 각종 변형문자에 대한 문자피치(CP) 및 행피치(LP)의 설정예를 제9도에 도시한다.Thus, for a character converted at an angle, the writing (handling) of the character is performed based on the horizontal and vertical rectangular area that circumscribes the character, so that the width of the rectangle (in the case of printout) The pitch between adjacent characters is determined along V size and H size for display output. The pitch control as described above is also performed for the row pitch. FIG. 9 shows an example of setting the character pitch CP and the row pitch LP for various modified characters at this time.

또. 상기한 피치제어는 항상 인접하는 문자가 차지하는 에리어(외접하는 직사각형)를 고려하면서 피치를 결정했으나 처리를 간소화하기 위하여 단순히 그때 그때의 레지스터(21)(또는 레지스터(22))치를 토대로 피치를 결정하는 제어수단을 취해도 좋다.In addition. The above pitch control always determines the pitch while considering the area occupied by adjacent characters (circumscribed rectangle), but simply determines the pitch based on the value of the register 21 (or register 22) at that time in order to simplify the processing. You may take control means.

다음에 상기한 외접하는 직사각형을 토대로 하선/방선을 출력할 때의 동작을 설명하다. 이때, 프린트아우트의 경우는 레지스터(21)에 저장된 데이터(V size)가 참조되고, 표시출력의 경우는 레지스터(22)에 저장된 데이터(H size)가 참조된다. 여기에서는 프린트아우트의 경우를 예로 들어 하선/방선의 처리동작을 설명한다. 인자제어부(17)에 설치된 하선/방선제어부(23)는 CPU 버스(12)를 통하여 입력되는 인자제어정보에 포함되는 하선/방선의 지시에 따라 라인버퍼(18)상에 하선 또는 방선의 로트를 전개하나, 상기와 같은 회전, 이탤릭체 등의 변형문자에 대해서는 통상의 문자폭에 의한 라인전개로는 대응을 취할 수 없다. 그러므로, 레지스터(21)의 내용(V size)을 항상 입력하여 하선/방선의 지신가 있으면 그때의 레지스터(21)의 갱신 데이터 내용에 따르는 라인 길이를 가지고 하선/방선의 도트패턴을 생성하고, 라인버퍼(18)상에 그 문자에 대응시켜서 패턴을 전개한다. 이때의 각종 변형문자에 대한 하선의 전개예를 제10도에 도시한다.Next, the operation | movement at the time of outputting underline / radiation based on said circumscribed rectangle is demonstrated. In this case, the data V size stored in the register 21 is referred to in the case of printout, and the data H size stored in the register 22 is referred to in the case of display output. Here, the processing operation of the underline / radiation will be described taking the case of the printout as an example. The disembarkation / radiation control unit 23 installed in the printing control unit 17 draws a lot of discharging or discharging lots on the line buffer 18 according to the instruction of disembarkation / radiation included in the printing control information input through the CPU bus 12. However, it is not possible to respond to the deformed characters such as rotation and italic type as described above with the line expansion by the normal character width. Therefore, if the contents (V size) of the register 21 are always inputted, and there is a notice of underline / radiation, a dot pattern of underline / radiation is generated with the line length corresponding to the contents of the update data of the register 21 at that time, and the line buffer The pattern is developed in correspondence with the character on (18). FIG. 10 shows an example of development of underlines for various modified characters at this time.

이상의 상세한 설명과 같이 본 발명에 의하면 소정의 도트 매트릭스 구성의 문자패턴을 적어도 주, 주사방향 또는 부·주사방향으로 도트보간하는 도트보간 장치에 있어서, 보간도트의 이니셜어드레스를 지정하는 한 쌍의 레지스터, 주·주사방향의 도트 새김폭을 지정하는 한 쌍의 레지스터, 부·주사방향의 도트 새김폭을 지정하는 한 쌍의 레지스터를 가지고, 이들 각 레지스터에 지정된 회전각, 또는 경사각에 따르는 특정의 3각 함수 데이터를 선택적으로 포함하는 x 성분, y성분의 각 데이터를 쌍으로 세트하여 이들 각 레지스터의 내용에 따르는 주·주사, 부·주사에 의하여 지정각도에 따르는 회전문자, 경사화문자 등의 도트보간을 실행하는 구성으로 함으로써 비교적 간단한 구성으로 임의의 문자를 임의의 확대축소배율을 가지고 높은 문자 품질을 손상시키는 일없이 확대·축소할 수 있는 동시에 임의의 문자를 임의의 경사를 가지고 일그러짐 없이 충실하게 회전, 경사형화 할 수 있고 문자의 확대·축소·회전·경사형화 등 각 종류의 패턴변환을 높은 정밀도의 도트보간에 의하여 고속으로 실행할 수 있다.As described above, according to the present invention, in a dot interpolation apparatus for dot interpolating a character pattern having a predetermined dot matrix configuration in at least the main, scanning direction, or sub-scanning direction, a pair of registers specifying initial addresses of the interpolation dots. , A pair of registers specifying the dot-indentation widths in the main and scanning directions, and a pair of registers specifying the dot-indentation widths in the sub-scanning directions, and a specific three according to the rotation angle or tilt angle specified in each of these registers. Set the data of x component and y component which contains each function data selectively in pairs, and the dot, such as rotation, oblique character, etc. By setting the interpolation, a relatively simple configuration makes any character have an arbitrary scaling factor and high character quality. It is possible to zoom in and out without damaging the letter, and to rotate and slant any letter without distortion with any inclination. The dot interpolation can be executed at high speed by precision.

Claims (1)

소정의 도트매트릭스 구성의 문자패턴을 적어도 주·주사방향 또는 부·주사방향으로 도트보간하는 도트보간장치에 있어서, x, y 성분 및 각도성분의 정보를 토대로 주·주사방향의 초기치 및 도트새김폭을 산출하는 제1의 연산수단과, 이 제1의 연산수단에 의하여 산출된 주·주사방향의 초기치를 기억하는 제1의 기억수단(33)과, 상기 제1의 연산수단에 의하여 산출된 주·주사방향의 도트새김폭을 기억하는 제2의 기억수단(32,35)과, 상기 주·주사방향의 도트위치정보를 저장하는 제3의 기억구단(44,48)과, 상기 제1의 기억수단에 저장된 정보를 상기 제3의 기억수단에 초기 설정한 후, 상기 제2, 제3의 기억수단의 내용을 토대로 주·주사방향의 도트위치를 산출하고 상기 제3의 기억 수단에 저장하는 제2의 연산수단(38,40)과, x, y 성분 및 각도성분의 정보를 토대로 부·주사방향의 초기치 및 도트새김폭을 산출하는 제3의 연산수단과, 이 제3의 연산수단에 의하여 산출된 부·주사방향의 초기치를 기억하는 제4의 기억수단(36)과, 상기 제3의 연산수단에 의하여 산출된 부·주사방향의 도트 새김폭을 기억하는 제5의 기억수단(31,34)과, 상기 부·주사방향의 도트위치 정보를 저장하는 제6의 기억수단(42,46)과, 상기 제4의 기억수단에 저장된 정보를 상기 제6의 기억 수단에 초기 설정한 후 상기 제5, 제6의 기억수단의 내용을 토대로 부·주사방향의 도트 위치를 산출하고 상기 제6의 기억수단에 저장하는 제4의 연산수단(37,39)을 구비하고, 상기 제3, 제6의 기억수단에 저장된 각 도트위치 정보에 따라 경사체 문자 또는 회전 문자의 패턴 변환처리를 실행하는 것을 특징으로 하는 도트 보간 장치.In a dot interpolation apparatus for dot interpolating a character pattern having a predetermined dot matrix configuration in at least the main, scanning direction, or sub-scanning direction, the initial value and the dot indentation width in the main / scanning direction based on the information of the x, y component and the angular component. First calculating means for calculating a value, first storage means 33 for storing an initial value of the scanning / scanning direction calculated by the first calculating means, and a note calculated by the first calculating means. Second storage means (32,35) for storing dot engraving widths in the scanning direction, third storage means (44,48) for storing dot position information in the main / scanning direction, and the first After the information stored in the storage means is initially set in the third storage means, the dot positions in the main and scanning directions are calculated and stored in the third storage means based on the contents of the second and third storage means. The second calculation means 38, 40, and the information of the x, y components and the angular components. Third calculating means for calculating the initial value and dot indentation width in the sub-scanning direction, the fourth storage means 36 for storing the initial value in the sub-scanning direction calculated by the third calculating means, Fifth storage means (31,34) for storing dot indentation widths in the sub-scanning direction calculated by the third calculating means, and sixth storage means for storing dot position information in the sub-scanning direction. (42,46) and information stored in the fourth storage means are initially set in the sixth storage means, and then dot positions in the sub-scanning direction are calculated based on the contents of the fifth and sixth storage means. And fourth computing means (37, 39) for storing in the sixth memory means, and converting the pattern of the inclined characters or rotating characters according to the respective dot position information stored in the third and sixth memory means. A dot interpolation apparatus characterized by executing a process.
KR1019850000080A 1984-04-28 1985-01-09 Dot inter polation system KR900004892B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP59086371A JPH0661960B2 (en) 1984-04-28 1984-04-28 Dot interpolation control device
JP59-86371 1984-04-28

Publications (2)

Publication Number Publication Date
KR850007708A KR850007708A (en) 1985-12-07
KR900004892B1 true KR900004892B1 (en) 1990-07-09

Family

ID=13885018

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019850000080A KR900004892B1 (en) 1984-04-28 1985-01-09 Dot inter polation system

Country Status (2)

Country Link
JP (1) JPH0661960B2 (en)
KR (1) KR900004892B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07102716B2 (en) * 1985-11-22 1995-11-08 カシオ計算機株式会社 Text printing control device
JPH0486271A (en) * 1990-07-30 1992-03-18 Toray Ind Inc Pattern printing system
JP6933544B2 (en) * 2017-10-03 2021-09-08 富士通コンポーネント株式会社 Character data processing device and program

Also Published As

Publication number Publication date
JPH0661960B2 (en) 1994-08-17
JPS60229765A (en) 1985-11-15
KR850007708A (en) 1985-12-07

Similar Documents

Publication Publication Date Title
US4331955A (en) Method and apparatus for smoothing outlines
EP0471482B1 (en) Character processing method
US5526476A (en) Method and apparatus for generating character patterns expressed by coordinates of a coordinate system
US4712185A (en) Dot interpolation control system
US4655622A (en) Printer control apparatus
KR970008546B1 (en) Character or graphic processing method
US4511893A (en) Method of storing images in the form of contours and photo-typesetting apparatus thereof
KR100306862B1 (en) Character pattern generator, character generating method, and storage medium therefor
KR960016739B1 (en) Method of correctly aligning the line width of outline font
KR900004892B1 (en) Dot inter polation system
US5526474A (en) Image drawing with improved process for area ratio of pixel
KR900004950B1 (en) Character interpolation control method
US4642622A (en) Video signal generating circuit
KR900004949B1 (en) Output controller of interpolation dot pattern
KR900004948B1 (en) Under/side line pattern generating device
JPH046554B2 (en)
KR900007681B1 (en) Dot interpolation control system
JPH049152B2 (en)
JPH043749B2 (en)
JPH06175638A (en) Method and device for character generation
KR890005004B1 (en) Dot pattern interpolation system
JPH0392897A (en) Pattern generating device
JPH049153B2 (en)
JPH06175639A (en) Method and device for character generation
JP2782752B2 (en) Character pattern output device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 19971226

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee