KR0167618B1 - 문자 발생 장치 및 방법 - Google Patents

문자 발생 장치 및 방법 Download PDF

Info

Publication number
KR0167618B1
KR0167618B1 KR1019940033442D KR19940033442D KR0167618B1 KR 0167618 B1 KR0167618 B1 KR 0167618B1 KR 1019940033442 D KR1019940033442 D KR 1019940033442D KR 19940033442 D KR19940033442 D KR 19940033442D KR 0167618 B1 KR0167618 B1 KR 0167618B1
Authority
KR
South Korea
Prior art keywords
character
data
font
coordinate
coordinate data
Prior art date
Application number
KR1019940033442D
Other languages
English (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
Priority claimed from JP5309555A external-priority patent/JPH07160241A/ja
Priority claimed from JP5309556A external-priority patent/JPH07160242A/ja
Application filed by 미따라이 하지메, 캐논 가부시끼가이샤 filed Critical 미따라이 하지메
Application granted granted Critical
Publication of KR0167618B1 publication Critical patent/KR0167618B1/ko

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/004Generic data transformation
    • G06K2215/0042Rasterisation
    • G06K2215/0045Converting outline to bitmap
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/004Generic data transformation
    • G06K2215/0054Geometric transformations, e.g. on rasterised data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

본 발명은 문자 발생 장치 및 문자 발생 방법에 관한 것이다. 문자 발생 장치는 좌표 데이타로 구성된 문자 데이타를 저장하기 위한 저장 수단, 이 저장 수단에 저장된 좌표 데이타에 따른 문자 패턴을 발생하기 위한 발생 수단, 문자 패턴을 굵게 또는 가늘게 만들기 위해 파라메터를 결정하기 위한 결정 수단, 및 이 결정 수단에 의해 결정된 파라메터에 따라 좌표 데이타를 변환시키기 위한 변환 수단을 포함하고; 이 변환 수단에 의해 변환된 좌표 데이타에 따라 굵은 또는 가는 문자 패턴을 만드는 발생 수단을 사용한다. 이러한 장치를 사용하는 문자 발생 방법은 여러가지 가중치들로 폰트 스타일들에 대한 문자 데이타를 발생하기 위해서는 단지 적은 메모리 용량만으로도 가능하다.

Description

문자 처리 장치 및 방법
제1도는 본 발명에 따른 문자 처리 장치가 적용가능한 제1 시스템을 도시하는 블럭도.
제2도는 본 발명에 따른 문자 처리 장치가 적용가능한 제2 시스템을 도시하는 블럭도.
제3도는 본 발명에 따른 문자 처리 장치의 문자 발생 방법에 대한 플로우차트를 도시하는 제3a도 및 제3b도로 되어 있는 도면.
제4도는 윤관선 폰트가 본 발명에 따른 문자 처리 장치에 의해 변환되기 이전의 구성을 도시하는 다이어그램.
제5도는 윤곽선 폰트가 본 발명에 따른 문자 처리 장치에 의해 변환된 이후의 구성을 도시하는 다이어그램.
제6도는 본 발명에 따른 문자 처리 장치의 변환된 윤관선 폰트에 대한 좌표 출력 데이타를 도시하는 다이어그램.
제7도는 본 발명에 따른 문자 처리 장치에서 점들로 페인트된 상태(point painted state)를 도시하는 다이어그램.
제8도는 본 발명에 따른 문자 처리 장치에서 윤곽선 또는 점들을 도시하는 다이어그램.
제9도는 본 발명에 따른 문자 처리 장치예로서서 제3 베지에르(Besier) 곡선의 짧은 벡터 어셈블리지로의 변환을 도시하는 다이어그램.
제10도는 본 발명에 따른 문자 처리 장치에서 페인트된 상태를 도시하는 다이어그램.
제11도는 본 발명에 따른 문자 처리 장치에서 비트 맵 폰트 발생 프로세스를 도시하는 다이어그램.
제12도는 본 발명에 따른 문자 처리 장치에 대한 태선화/세선화 과정 예를 도시하는 플로우차트이다.
제13도는 본 발명에 따른 문자 처리 장치에서 외곽선 및 내곽선을 결정하기 위한 사전프로세싱을 도시하는 다이어그램.
제14도는 본 발명에 따른 문자 처리 장치에서 명조체 태선화 프로세스의 결과를 도시하는 다이어그램.
제15도는 본 발명에 따른 문자 처리 장치에서 고딕체 태선화 프로세스의 결과를 도시하는 다이어그램.
제16도는 본 발명에 따른 문자 처리 장치에서 태선화 파라메터를 결정하기 위한 제1표 데이타의 다이어그램.
제17도는 본 발명에 따른 문자 처리 장치에서 외곽선 태선화 프로세스를 도시하는 다이어그램.
제18도는 본 발명에 따른 문자 처리 장치에서 태선화 또는 세선화 프로세스가 수반되는 프레임 크기의 보정을 도시하는 다이어그램.
제19도는 본 발명에 따른 문자 처리 장치에 대한 외곽선/내곽선을 결정하기 위한 과정 예를 도시하는 플로우차트.
제20도는 본 발명에 따른 문자 처리 장치에 대한 내곽선 특성을 결정하기 위한 프로세스를 설명하기 위한 개략도.
제21도는 본 발명에 따른 문자 처리 정체에 대한 외곽선 특성을 결정하기 위한 프로세스를 설명하기 위한 개략도.
제22도는 본 발명에 따른 문자 처리 장치에 대한 태선화 파라메터를 선택하기 위한 과정을 예를 도시하는 플로우 차트.
제23a도 및 제 23b도는 본 발명에 따른 문자 처리 장치에서 태선화 파라메터를 결정하기 위한 제 2표 테이타를 도시하는 다이어그램.
제24도는 본 발명에 따른 문자 처리 장치에 그레이 스케일 폰트를 작성하기 위해 사용된 비트 맵을 설명하기 위한 다이어그램.
제25도 본 발명에 따른 문자 처리 장치의 제2문자 발생 방법을 설명하는 플로우차트를 도시하는 제25a도 및 제25b도로 되어 있는 도면.
제26a도, 제26b도 및 제26c도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 폰트 변환표의 한 예를 각각 도시하는 다이어그램.
제27도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 폰트 변환 프로세스를 도시하는 다이어그램.
제28도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 변환 상태를 도시하는 다이어그램.
제29도는 본 발명에 따른 문자 처리 장치의 제3문자 발생 방법에 대한 플로우차트를 보여주는 제29a도 및 베29b도로 되어 있는 도면.
제30도는 윤곽선 폰트가 본 발명에 따른 문자 처리 장치에 의해 변환되기 전의 구성을 도시하는 다이어그램.
제31도는 윤곽선 폰트가 본 발명에 따른 문자 처리 장치에 의해 변환된 후의 구성을 도시하는 다이어그램.
제32도는 본 발명에 따른 문자 처리 장치의 변환된 윤곽선 폰트에 대한 좌표 출력 데이타를 도시하는 다이어그램.
제33도는 본 발명에 따른 문자 처리 장치에서 좌표 데이타를 사용함으로써 페인팅표를 작성하는 것을 도시하는 다이어그램.
제34도는 본 발명에 따른 문자 처리 장치에 대한 비트 맵 폰트 발생 프로세스를 도시하는 다이어그램.
제35도는 본 발명에 따른 문자 처리 장치에 대한 대선화/세선화 과정 예를 도시하는 플로우차트.
제36도는 본 발명에 따른 문자 처리 장치에 대한 외곽선 또는 내곽선을 결정하기 위한 사전프로세싱을 도시하는 다이어그램.
제37도는 본 발명에 따는 문자 처리 장치의 고딕체 태선화 프로세스에 의해 획득된 결과를 도시하는 다이어그램.
제38도는 본 발명에 따른 문자 처리 장치에 대한 태선화 파라메터를 결정하기 위한 제3표 데이타의 다이어그램.
제39a도는 및 제39b도는 본 발명에 따른 문자 처리 장치에 대한 태선화 파라메터를 결정하기 위한 제4표 테이타의 다이어그램.
제40도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 폰트를 작성 하기 위해 사용되는 비트 맵을 설명하기 위한 다이어그램.
제 41도는 본 발명에 따른 문자 처지 장치의 제2 문자 발생 방법에 대한 플로우차트를 도시하는 제41a도 및 제41b도로 되어 있는 도면.
제 42a도, 제42b도 및 제42c도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 폰트 변환표의 한 예를 각각 도시하는 다이어그램.
제 43도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 폰트 변화 프로세스를 도시하는 다이어그램.
제 44도는 본 발명에 따른 문자 처리 장치에 대한 그레이 스케일 변환 상태를 도시하는 다이어그램.
* 도면의 주요부분에 대한 부호의 설명
1, 21 : CPU 2, 22:ROM
3, 23 : RAM 4 : 키보드 제어부
5 : 키보드 6 : 디스플레이 제어기
7 : 디스플레이 유닛 8 : 디스크 제어기
9 : 저장 디바이스 10 : 프린터 제어기
11 : 프린터
본 발명은 벡터 형태로 코딩되어 있는 문자 등을 도트 형태로 코딩된 문자로 변환시키는 문자 처리 장치 및 문자 처리 방법에 관한 것이다.
벡터 형태로 저장되어 있는 데이타를 비트 맵으로 전개시키고 문자들을 출력하는 종래의 장치에 있어서, ROM에 또는 하드 디스크 상에 저장되어 있는 좌표데이타가 판독되고, 이들 데이타에 확대율 또는 감소율을 곱함으로써 원하는 크기로 변환된다. 변환된 데이타는 그 다음에 도트 형태의 데이타로 변환되어 문자 데이타를 제공한다.
그러나, 이 경우, 동일한 폰트 스타일에 대해 서로 다른 가중치들이 있으면, 각 가중치에 대해 한 세트의 좌표 데이타가 있어야 한다. 일본의 폰트 스타일에 있어서는, 폰트 스타일당 약 8,000개의 문자들이 있고 각 폰트마다 필요한 좌표 테이타에 대한 메모리 용량이 1M 내지 3M 바이트인 경우, 좌표 데이타가 각각의 가중치에 대해 제공되면, 메모리 용량은 매우 크게 된다.
상기 단점을 해결하기 위해서, 본 발명은 목적은 적어도 한 개의 폰트 스타일에 대해 다수의 윤곽선 데이타로 구성되어 있는 문자 데이타로부터 동일한 폰트 스타일에 대해 서로 다른 가중치 데이타를 발생시켜 개별 폰트 스타일에 대한 여러 가중치 문자 데이타가 작은 메모리용량으로 생성될 수 있도록 하는데 있다.
이하, 본 발명의 특징에 대해 설명하고자 한다.
본 발명에 따른 문자 처리 장치는 좌표 데이타로 구성된 문자 데이타를 저장하기 위한 저장 수단, 이 저장 수단에 저장된 좌표 데이타에 따른 문자 패턴을 발생시키기 위한 발생 수단, 문자 패턴을 태선화 또는 세선화하기 위해 파라메터를 결정하기 위한 결정 수단, 및 이 결정 수단에 의해 결정된 파라메터에 따라 좌표 데이타를 변환시키기 위한 변환 수단을 포함하고; 이 변환 수단에 의해 변환된 좌표 데이타에 따라 문자 패턴을 태선화 또는 세선화하는 발생 수단을 사용한다.
본 발명에 따른 문자 처리 장치의 변환 수단은 타겟용 좌표들에 근접해 잇는 2개의 점들의 좌표 데이타를 참조하여 좌표 데이타를 결정한다.
본 발명에 따른 문자 처리 장치에 대한 좌표 데이타는 외곽선 데이타 및 내곽선 데이타로 구성된다.
본 발명에 따른 문자 처리 장치의 결정 수단은 외곽선 데이타 및 내곽선 데이타에 대해서 분리적으로, 큰 문자 가중치 또는 작은 문자 가중치를 나타내는 파라메터를 결정한다.
본 발명에 따른 문자 처리 장치의 결정 수단은 외곽선 데이타 및 내곽선 데이타로부터 분리적으고, x 및 y 방향들로의 큰 문자 가중치 또는 작은 문자 가중치를 결정한다.
본 발명에 따른 문자 처리 장치의 발생 수단은 변환된 윤곽선 데이타에 따라 비트 맵 형태, 윤곽선 좌표 데이타 형태 또는 그레이 스케일 형태를 출력한다.
이하, 첨부된 도면을 참조하여 본 발명의 특징을 상세히 설명한다.
[실시예 1]
이제 본 발명의 제1실시예를 기술한다. 본 발명은 다수의 디바이스를 갖는 시스템 또는 하나의 디바이스로 구성되는 장치에 의해 실시될 수 있다는 것을 유의해야 한다. 본 발명은 또한 이러한 시스템 또는 이러한 장치에 프로그램을 제공함으로써 제공될 수 있다.
제1도는 본 발명을 따르는 문자 처리 장치가 적용될 수 있는 제1 시스템의 제어 구성을 도시하는 블럭도이다. 이 시스템은 일본어 워드 프로세서, 워크 스테이션 또는 컴퓨터 시스템 중의 하나일 수 있다.
제1도에서, CPU(1)은 전체 시스템을 제어하고, 산술 연산 등을 수행하는 중앙 처리 장치이다. ROM(2)는 후술될 플로우차트에 관한 프로그램인 시스템 활성화 프로그램 및 문자 패턴 데이타가 저장되는 판독 전용 메모리이다. 랜덤 억세스 메모리인 RAM(3)은 다양한 프로그램 및 데이타가 각 프로세스 동안에 로드(load)되어 실행되는 사용제한(usage limit)이 없는 데이타 저장 영역이다. KBC(4)는 키보드(5)로부터의 키 입력 데이타를 받아들여서 CPU(1)에 데이타를 전달하는 키보드 제어부이다. 후술되는 바와 같이 제16도,제26도,제38도 및 제 42도에 도시된 것과 같은 데이타는 ROM(2)에 저장된다.
CRTC(6)은 디스플레이 유닛인 CRT(7)로 디스플레이되는 데이타를 보내는 디스플레이 제어기이다. FDD(플로피 디스크 디바이스) 또는 HDD(하드 디스크 디바이스)와 같은 주변 저장 디바이스(9)는 실행 동안 요구된 대로 RAM(3)에 관련되거나 로드되는 프로그램 및 데이타를 저장하기 위해 사용된다. DKC(8)은 데이타 전송을 제어하는 디스크 제어기이다. PRTC(10)은 프린터 제어기이고, PRT(11)은 프린터 디바이스이며, 시스템 버스는 상술된 소자들은 위한 데이타 경로이다.
제2도는 본 발명에 따른 문자 처리 장치가 적용가능한 제2 시스템의 제어 구 성의 블럭도이다. 이 시스템은 레이저 빔 프린터, 버블 젯 프린터 또는 열 전이 유닛(thermal transfer unit)일 수 있다.
제2도에서, CPU(21)은 전체 장치를 제어하고 산술 연산을 수행하는 중앙 처리장치이다. ROM(22)는 시스템 활성화 프로그램, 문자 패턴 테이타 등이 저장되는 판독 전용 메모리이다.
랜덤 억세스 메모리인 RAM(23)은 다양한 프로그램 및 데이타가 각 프로세스마다 로드되어 실행되는 사용 제한이 없는 데이타 저장 영역이다.
PRTC(10)은 데이타를 차례로 프린트하는 프린터인 PRT(11)에 데이타를 전달하는 프린터 제어기이다.
이러한 문자 처리 장치에서, CPU(1)은 결정된 문자 가중치를 나타내는 파라메터에 따라 ROM(2)내에 저장되는 변환 프로그램을 실행하고, 후술될 다른 데이타로 윤곽선 데이타의 좌표값을 변환한다. 그후, CPU(1)은 좌표들이 변환된 윤곽선 데이타에 따라 굵거나 가는 문자 패턴을 발생히고, 굵은(thick) 문자 또는 가는(thin)문자 중의 하나는 소수의 문자 데이타를 사용함으로써 발생되는 상이한 가중치를 갖는다.
더우기 , CPU(1)은 타겟의 좌표에 2개의 근접한 점들의 좌표값을 참조하여 변환된 좌표값을 결정하여, 잘 균형잡힌 굵은 또는 가는 문자 패턴을 발생한다.
또한, CPU(1)은 윤곽선 데이타로부터 외곽선 데이타 및 내곽선 데이타를 추출하고, 보기 좋은 형상을 갖는 굵은 또는 가는 문자 패턴을 발생한다.
무엇보다, CPU(1)은 추출된 외곽선 데이타 및 내곽선 데이타를 사용하여 굵은 문자 가중치 및 가는 문자 가중치를 별도로 결정하고, 보기좋은 형상을 갖는 굵은 또는 가는 문자 패턴을 발생한다.
또한, CPU(1)은 추출된 외곽선 및 내곽선 데이타를 사용하여 x 방향 및 y 방향에 대한 독립적인 문자 가중치를 결정하고, 각 폰트 스타일의 특성을 효과적으로 묘사하는 굵은 또는 가는 문자 패턴을 발생한다.
또한 변환된 윤곽선 데이타에 따라, CPU(1)은 비트 맵 폰트, 윤곽선 좌표 데이타 또는 그레이 스케일 폰트중의 하나를 출력하고, 적절한 데이타 형태로 굵은 또는 가는 문자 데이타를 다양한 출력 수단에 공급한다.
또한, 결정된 문자 가중치를 나타내는 파라메터에 따라, CPU(1)이 변환시키는 문자 데이타는 ROM(2)내에 저장되는 표로부터 결정되고, 결정된 문자 데이타에 대응하는 윤락선 데이타의 좌표값은 변환된다. 좌표가 변형되는 윤곽선 데이타에 따라, 굵은 또는 가는 문자 패턴이 발생되어, 문자 데이타 소스가 대부분의 양호한 굵은 또는 가는 문자 데이타를 발생하기 위해 활용된다.
또한, CPU(1)은 결정된 문자 가중치에 근접한 문자 가중치를 갖는 문자 데이타를 변환함으로써 더 정밀한 굵은 또는 가는 문자 데이타를 발생한다.
본 발명에 제1실시예의 상세한 프로세싱이 제3a도 및 제3b도의 플로우차트를 참조하여 설명될 것이다.
제3a도 및 제3b도의 플로우차트는 본 발명에 따른 문자 처리 장체에 대한 제1문자 발생 방법을 도시한다. 번호 (1) 내지 (17)은 각 과정의 단계를 나타낸다.
시스템 내에 존재하고 특정 가중치를 갖는 하나의 폰트 스타일에 대한 데이타 사용하여 상이한 가중치를 갖는 문자에 대한 데이타를 발생시키는 것에 대해서 설명한다.
입력 파라베터들은 단계(1)에서 받아들여진다.
입력 파라메터들은 예를 들어, 문자 코드, 폰트 스타일, 가중치 데이타 및 출력될 문자 출력 크기 및 형태일 수 있다.
문자 코드는 타겟 시스템이 미리 특정화됨으로써 JIS 코드, 시프트 JIS 코드, EUC 코드, 또는 UNI 코드와 같은 문자 코드 시스템에 의해 결정된다.
폰트 스타일은 시스템이 명조체, 고딕체, 또는 라운드 고딕체와 같이 시스템이 미리 포함하고 있는 데이타나 옵션으로서 첨가되는 데이타로부터 선택된다. 가중치는 폰트 스타일의 라인 두께에 관한 데이타이고, 매우 가늠(very thin), 가늠(thin), 표준(standard), 굵음(thick) 및 매우 굵음(very thick) 데이타가 제공 된다.
출력 크기는 출력되는 폰트 데이타의 실제 크기를 나타내는 데이타이다.
출력 형태는 원하는 폰트의 출력 데이타 형태이고, 윤곽선 좌표 데이타 출력 또는 비트 맵 출력과 같은 출력 요구가 발생된다.
타겟 문자용의 좌표 데이타는 단계(2)에서 판독된다. 데이타는ROM,RAM,하드 디스크, 또는 플로피 디스크에 미리 저장된다. 단계(1)에서 페치된(fetched) 폰트 스타일 데이타 및 문자 코드 데이타가 검사되어, 필요한 양의 좌표 데이타가 판독된다.
판독될 좌표 데이타는 제4도에 도시된 것과 같은 문자의 윤곽선의 특성점(characteristic point)를 추출함으로써 얻어진 데이타이다. 데이타는 각각의 좌표점에 대해 직선 데이타/곡선 결정 플래그 및 윤곽선 시작점/끝점 플래그와 같은 속성 정보(atribute information)를 포함하고 있다. 본 실시예에서 이용된 데이타에 대한 보간 표현은 제2 또는 제3b 스플라인(spline)곡선, 또는 제2 또는 제3 베지에르(Besier)곡선이 될수 있지만, 이용될 보간 표현은 미리 결정된다.
특성 프레임을 나타내는 좌표의 최소값은 0이고, 최대값은 800이다.
단계(3)에서, 태선화(thickening)또는 세선화(narrowing)프로세스가 입력 파라메터내에 포함된 가중치 데이타에 따라서 좌표 데이타에 대해 수행된다.
이 프로세스에 상세한 설명은 제12도의 플로우차트를 참조하여 후술될 것이다. 이 프로세스의 결과로서, 좌표 데이타가 제5도에 도시된 바와 같이 태선화된(thickened)또는 세선화된(narrowed) 윤곽선에 대한 데이타로 변환된다.
태선화 또는 세선화 프로세스가 수행된 후, 좌표점들은 일대일 대응되고, 각 점들에 대한 속성 프래그들은 변하지 않는다.
단계(4)에서, 확대 또는 축소 프로세스가 입력 파라메터로서 포함된 출력크기에 따라 단계(3)에서 얻어진 태선화된 또는 세선화된 좌표 데이타에 대한 수행된다.
요구된 출력 크기가 (Ax,Ay)일 때, 단계(3)에서 얻어진 좌표값은 (x,y)이고, 확대 또는 축소 프로세스가 수행된 이후의 좌표값은 (X,Y)이면, 저장된 문자프레임 크기는 (Mx, My)여서,
(X, Y)=(x×Ax/Mx, y×Ay/My)
이다.
단일 문자로부터의 모든 좌표들은 상기 식을 사용하여 계산된다. 식(3)에서 얻어진 각각의 좌표점들에 대한 속성 플래그들은 변하지 않는다.
비트 맵 출력이 단계(5)에서 요구될 때, 프로그램 제어는 단계(7)로 진행한다.
단계(7) 내지 단계(13)은 좌표 데이타로부터 비트 맵 데이타를 실제로 작성하기 위한 과정들이다. 단계(7)에서, 타겟 좌표 데이타가 직선 테이타이지 곡선 데이타인지를 결정하기 위해 검사가 수행된다. 단계(7)에서, 좌표 데이타가 직선 데이타이면, 좌표점은 직선에 대한 시작점으로서 정의되고, 후행 좌표점은 직선의 끝점으로서 정의된다. 그런후 프로그램 제어는 단계(8)로 이동한다.
단계(7)에서, 타켓 데이타가 곡선 데이타이면, 좌표점과 곡선 종료 플래그가 배치되는 점 사이의 점들에 대한 좌표 데이타는 곡선 데이타로 된다고 가정된다. 프로그램 제어는 단계(9)로 이동한다.
직선을 발생하기 위한 프로세스는 단계(8)에서 수행된다. 이 경우에 DDA 방법이 직선을 발생시키키 위해 사용된다. 점들은 2개의 평면들내에 배치된다. 한 평면은 페인팅용으로 사용되고, 제 7에 도시되는 것과 같이, 라인들이 페인팅을 위해 좌로부터 우로 스캔되고, 기수(odd)로 번호 붙여진 위치에서의 1과 우수로 번호 붙여진 위치에서 l까지의 간격이 l로 페인트되었기 때문에 각각의 점은 하나의 y좌표에 대응하는 하나의 x좌표에 배치된다. 대응하는 y좌표에 대해 하나이상의 x좌표에 점들이 배치된다면, 페인팅은 잘 수행되지 못할 것이다. 다른 평면은 윤관선 OR 평면이다. 제8도에 도시된 바와 같이, 윤곽선 OR평면이 페인팅 평면내에서 스킵되는 비트를 보상하기 위해 사용되므로 이 평면내에서 단일 Y좌표에 대한 모든 X좌표느 l로 설정된다.
단계(9)에서, 곡선 데이타가 짧은 직선(짧은 벡터)의 어셈블리지(assemblage)으로 변환되는 프로세스가 수행된다. 제9도는 제3 베지에르(Besier)곡선의 짧은 벡터들의 어셈블리지로의 변환을 도시한다.
제9도에서, 점 A,B,C 및 D는 좌표 변환 이후 단계(3)에서 얻어진 곡선 데이타(제3 베지에르 곡선점들)이다. 이들 점들은 점 a, b, 및 c를 계산하기 위해 사용된다. 점 a는 점 A와 점B 사이의 중점이고, 점 b는 점 B와 점 C 사이의 중점이며, 점 c는 점 C와 점 D사이의 중점이다.
이후, 점 x, y 및 z가 계산된다. 점 x는 점 a와 점 b 사이의 중점이고, 점 z는 점 b와 점 c사이의 중점이며, 점 y는 점 x와 점 z사이의 중점이다. 따라서 점렬(point row) Aaxy는 세로운 제3 베지에르 곡선점이고, 점렬 yzcD는 다른 제3 베지에르 곡선점이다.
이들 베지에르 곡선 점들은 동일한 방법으로 더욱 세세하게 분할되고, 특정 결정 기준(specifeic determination reference)을 충족할 때 분할 프로세스가 중지된다. 이렇게 얻어진 제3 베지에르 곡선 점렬은 짧은 벡터들의 어셈들리지이다.
단계(10)에서, 점들은 단계(9)에서 얻어진 짧은 벡터 어셈블리지에 따라 2개의 평면내에 배치된다. 2개의 평면에 점들을 배치하는 방법은 단계(8)에서 수행된 방법과 동일하다. 이 프로세스는 모든 짧은 벡터들에 대해 반복적으로 수행된다.
단계(11)에서 하나의 윤곽선의 모든 좌표 데이타에 대한 프로세싱이 완료되었는지를 판단하기 위한 검사가 수행된다. 프로세싱이 완료되었다면, 프로그램은 단계(13)으로 진행한다. 프로세스가 아직 완료되지 않았다면, 프로그램 제어는 단계(12)로 이동한다.
단계(12)에서, 현재 좌표 데이타의 포이터가 다음 데이타를 프로세스하기 위해 갱신된다. 다음 데이타가 직선 데이타라면, 포인터는 다음 좌표 데이타를 지정(point)하기 위해 갱신된다. 다음 데이타가 곡선 데이타라면, 포인터는 곡선 끝 좌표점을 지정하기 위해 갱신된다. 그런후, 프로그램 제어는 데이타가 직선용인지 곡선용이지를 결정하기 위해 검사가 수행되고, 점들이 데이타에 따라 배치되는 단계(7)로 되돌아간다.
단계(13)에서 하나의 문자에 관한 모든 윤곽선 데이타가 프로세스되었는지의 여부를 결정하기 위해 검사가 수행된다. 모든 윤곽선 데이타가 프로세스되었다면, 프로그램 제어는 단계(15)로 진행한다. 프로세싱이 완료되지 않았다면, 프로그램 제어는 단계(14)로 이동한다.
하나의 윤곽선에 대한 데이타가 프로세스되므로, 포인터는 단계(14)에서 다음 윤곽선의 헤드를 지정하도록 시프트되고, 프로그램 제어는 단계(7)로 되돌아간다.
단계(15)에서, 모든 좌표 데이타에 대해 2개의 평면내에 점들을 배치시키는 프로세스가 완료되므로, 페이팅 평면은 제 10도에 도시된 바와 같이, 각각의 스캔된 선을 따라 좌로부터 스캔되고, 기수로 번호붙여진 l내지 우수로 번호붙여진 l까지 사이의 간격을 L로 페인트 된다. 페이팅 프로세스는 모든 스캔된 선에 대해 수행된다. 그런후, 제11도에 도시된 바와 같이 단계(16)에서, 단계(15)에서 얻어진 페인팅 평면용 데이타 및 단계(8) 및 (10)에서 얻어진 윤곽선 OR 평면용 데이타는 OR 연산되고, 하나의 문자에 관해 비트 맵 데이타가 완료된다. 마지막으로, 단계(17)에서, 단계(16)에서 얻어진 한 문자에 관한 데이타는 요구측(request side)에 의해 표시되는 영역으로 되돌아가고, 프로세스가 종료된다.
이제 제 3도의 단계(3)에서 태선화/세선화 프로세스가 제12도의 플로우차트를 참조하여 상세히 설명될 것이다.
제 12도는 본 발명에 따른 문자 처리 장치를 위한 태선화/세선화의 예를 도시 하는 플로우차트이다. 번호 (1) 내지 (12)는 과정의 단계를 나타낸다.
이 실시예의 태선화/세선화 프로세스에서, 태선화/세선화 파라메터는 제4도에 도시된 바와 같이 외곽선 및 내곽선(b 및 c)에 따라 변한다. 윤곽선 좌표점렬들은 외곽선 및 내곽선에 대한 것으로 구별되지 않으며, 좌표 행들은 외곽선 또는 내곽선을 위한 것인지가 검사되어 결정된다. 윤곽선 좌표를 변화시키기 위해, 외곽선 태선화/세선화 파라메터가 외곽선 좌표를 위해 사용되고, 외곽선 태선화/세선화 파라메터가 내곽선 좌표를 위해 사용된다.
윤곽선을 형성하는 외곽선 점렬이 시계반대방향이라면, 내곽선 점렬들은 시계방향으로 배열되고, 외곽선 점렬이 시계방향이라면, 내곽선 점렬은 시계반대방향으로 배열된다.
제12도의 단계 (1) 내지 (3)에서, 단계(4)에서 프로세스되는 타겟 윤곽선이 외곽선인지 또는 내곽선인지를 결정하기 위해 사전프로세싱이 수행된다.
이 프로세싱 동안, 시작점, 및 시작점에 근접한 2개의 점이 추출된다. 시작점이 AS일 때, 시작점에 선행하는 점(윤곽선의 마지막 점)은 A이고, 시작점의 후행점은 B이며;사전 프로세싱을 위한 점이 벡터 AS및 SB에 의해 형성된 각이 분할되는 방향으로 제공된다.
외곽선 점렬이 시계반대방향일 때, 시작점은 특정값만큼 벡터가 움직이는 방향으로 면해있는 오른쪽으로 시프트된다. 외곽선 점렬이 시계방향이면, 시작점은 벡터가 움직이는 방향으로 변해있는 왼쪽으로 특정값만큼 시프트된다.
이어서, 프로그램 제어는 단계(3)에서 얻어진 사전프로세싱용 점을 사용함으로써 타겟 윤곽선이 외곽선인지 또는 내곽선인지를 결정하기 위한 검사가 수행되는 단계(4)로 진행한다. 이 단계에서의 사전프로세싱은 제19도의 플로우차트를 참조하여 상세히 설명될 것이다.
이후 단계(5)에서, 외곽선 및 내곽선의 두께에 대한 파라메터는 가중치에 따라서 결정된다. 윤곽선 두께를 결정하기 위한 파라메터는 외곽선 및 내곽선에 대해 x 방향 및 y 방향으로 독립된 값을 갖고, 수평 라인의 태선화 및 수직 라인의 태선화를 독립적으로 다룬다.
이것은 예를 들어, 제14도에 도시된 것처럼 명조체 문자를 굵게 하기 때문이며, 그 수평 라인은 더 이상 굵어질 필요가 없고 수직 라인이 더 굵어져야 하므로, x방향과 y방향에 대해 상이한 값들이 요구된다.
그러나, 라운드 고딕체 폰트 스타일 문자에 있어서는, 제15도에 도시된 것처럼 수평 방향의 라인은 수직 방향의 라인만큼 굵어진다
그러므로, 개별적인 폰트 스타일에 대한 태선화 값들은 변화되어야 한다. 제16도에도 도시된 바와 같이, 폰트 스타일의 외곽선 및 내곽선으로부터 수평 및 수직 라인의 중심까지의 기준 값들을 나타내고 테이타 및 가중치 값은 [ROM(2 또는 22)로부터 또는 다름 저장 매체로부터 RAM(3 또는 23)까지 데이타를 기입함으로써 작성되는] 표에 미리 등록되어 있다. 표준 폰트 가중치와 원하는 폰트 가중치간의 차이는 x 방향과 y방향으로 외곽선과 내곽선의 두께를 결정하기 위해 사용된다. 명조체 표준 데이타만큼 가늘어지기 위한 좌표 데이타를 사용하는 명조 스타일에 있어서, 굵은 명조체 문자를 발생하기 위해, 태선화 값(파라메터)은 외곽선의 x성분에 대해 15와 9사이의 차이 및 y 성분에 대해 25와 15사이의 차이를 확인함으로써 결정된다.
태선화 값이 정(+)일 때 태선화 프로세스가 수행되고, 태선화 값이 부(-)일때 세선화 프로세스가 수행된다. 단계(6) 내지 단계(1)의 과정 동안, 태선화/세선화 프로세스가 하나의 윤곽선을 구성하는 모든 좌표점렬들에 대해 수행된다.
먼저, 단계(6)에서, 프로세스될 대상점(object point)이 취해진다. 그런후, 단계(7)에서, 대상점에 근접한 점들이 취해진다. 마지막으로, 단계(8)에서, 태선화 프로세스가 실제로 수행된다.
제 17도에 도시된 바와 같이 대상점이 B이고, 선행점이 A이며, 후행점은 C라고 가정하자. 외곽선이 시계반대방향이면, 대상점은 벡터AB 및 BC에 의해 형성된 각을 양분하는 선에 대해 오른쪽으로 시프트된다. 외곽선이 시계방향이면, 대상점은 왼쪽으로 시프트된다. 점이 시프트되는 영역 범위는 단계(5)에서 얻어진 x 태선화 및 y 태선화 값으로 형성되는 삼각형의 빗변과 동일하다.
단계(9)에서, 하나의 윤곽선에 대한 모든 좌표점들이 프로세스되면, 프로그램제어는 단계(11)로 진행한다. 몇몇 윤곽선 점들이 프로세스될 때, 프로그램 제어는 포인터가 다음 윤곽선 점을 지정하기 위해 갱신되고 태선화 프로세스가 다시 수행되는 단계(10)으로 진행한다.
단계(11)에서 하나의 문자에 관한 모든 윤곽선이 프로세스되었는 지를 결정하기 위해 검사가 수행된다. 프로세싱이 완료되었을 때, 프로그램 제어는 단계(12)로 이동한다. 프로세스될 윤곽선이 남아있을 때, 포이터는 다음 윤곽선점을 지정하기 위해 갱신되고, 태선화 프로세스가 다시 수행된다.
태선화 프로세스가 모든 윤곽선 좌표점에 대해 수행될 때, 프로그램 제어는 단계(12)로 간다. 제 18도에 도시된 바와 같이, 태선화 프로세스가 수행되는 동안에는 최종문자 프레임은 더 커지고, 세선화 프로세스가 수행되는 동안에는 최종 프레임이 더 작아진다.
따라서, 단계(12)에서, 최종 프레임의 크기가 최초 문자 프레임의 크기와 일치되도록 조절될 필요가 있다. 확대/축소의 비율은 단계(5)에서 얻어진 외곽선에 대해서는 태선화 값(세선화에 대해서는 부 태선화 값)의 2배이다.
최초 문자 프레임의 X 폭이 Bx일 때, 외곽선의 수평 태선화 값은 Fx이고, Y폭은 By이며, 외곽선의 수직 태선화 값은 Fy이고, 태선화 프로세스가 수행되는 좌표는 (x,y)이며, 문자 프레임 크기가 조정된 후의 좌표는 (X,Y)이다.
(X,Y) = ((x + Fx)× Bx/(Bx + Fx × 2), (y + Fy) × By/(By + Fy ×2))
이 계산은 한 문자에 관한 모든 좌표점렬들에 대해 수행되고, 이어서 제10도에서 도시된 태선화 프로세스가 종료된다.
제12도의 단계(4)에서의 외곽선/내곽선 결정 프로세스가 이제 제 19도의 플로우차트를 참조하여 상세히 설명될 것이다. 제 19도의 플로우차트는 본 발명에 따른 문자 처리 장치를 위해 외곽선/내곽선을 결정하기 위한 예시적인 과정이다. 번호 (1) 내지 (8)은 과정의 단계들을 나타낸다.
제 20도에 도시된 바와 같이, 특정 점에서 외곽선 좌표 점들 ABCD들 중 2개를 연결함으로써 형성되는 시계반대방향 각이 부(+) 값으로 한정되고; 점들의 각들의 합이 2π일 때, 이들 점들은 내곽선에 관한 것으로 결정된다.
계산이 제20도에서 수행된 것과 동일한 방식으로 수행되고, 각들의 합이 0일 때, 점들은 외곽선에 관한 것으로 결정된다. 특정 점이 이미 제 12도의 단계(1)내지 단계(3)에서 계산되었으므로, 특정 점으로 형성된 각 합을 계산하는 프로세스가 제19도의 플로우차트에 지시된 대로 수행된다.
초기화는 단계(1)에서 0과 동일한 각의 힘으로 수행된다. 2개의 근접한 점들은 단계(2)에서 추출된다. 단계(3)에서, 특정 점 및 2개의 추출된 점들은 벡터들에 의해 연결되어, 벡터들 사이의 각의 크기가 결정된다. 특정 점이 X이고, 2개의 추출된 점들이 A 및 B라고 가정할 때 , 각은 외적(outer product) 표현에 의해 계산 될 수 있다. 그 결과는 단계(4)에서 각들의 합에 더해진다.
그후, 2개의 점에 관한 하나의 윤곽선 추출이 완료되었는 지의 여부를 결정하기 위해 단계(5)에서 검사가 수행된다. 계산이 모든 점들에 대해 수행되었다면, 프로그램 제어는 단계(6)으로 간다. 계산될 데이타가 남아 있다면, 프로그램 제어는 계산을 반복하기 위해 단계(2)로 되돌아간다. 각들의 합이 0인지, 또는 2π인지를 결정하기 위해 단계(6)에서 검사가 수행된다. 합이 0이면, 프로그램 제어는 외곽선 플래그가 설정되는 단계(7)로 이동하고, 그 이후에 프로세스가 종료된다. 합이 2π이면, 프로그램 제어는 내곽선 플래그가 설정되는 단계(8)로 이동하고, 이어서 프로세스가 종료된다.
[실시예 2]
다른 실시예가 이제 기술될 것이다. 특정 가중치를 갖는 폰트 스타일이 요구될 때, 동일 폰트 스타일을 위한 표준으로 사용될 수 있는 2개 이상의 가중치가 있는 경우에 대해 설명될 것이다. 이 경우, 요구된 가중치를 프로세스하기 위해 사용되는 폰트 가중치를 동일 폰트 스타일을 위한 다수의 폰트 가중치들 중에서 선택하는 것이 중요하다.
표준 가중치를 갖는 폰트 스타일 이 결정될 때, 후행하는 가중치 변환 프로세스는 제 1실시예에서 수행된 것과 동일한 방식으로 수행된다. 따라서 표준으로서의 가중치를 선택하는 방법에 대해서만 설명된다.
제22도 본 발명에 따른 문자 처리 장치를 위해 태선화 파라메터를 선택하기 위한 예시적인 과정을 도시하는 플로우차트이다. 번호 (1) 내지 (6)은 과정의 단계를 나타낸다.
먼저 , 단계(1)에서 폰트 스타일이 저장 디바이스내에 저장되는 가중치를 검사할 필요가 있다. 폰트 스타일용 헤더들내에 저장되어 헤더 데이타가 참조되고, 이러한 데이타의 존재를 가리키는 데이타는 표에 등록되어 있다.
제23a도 및 제 23b도의 예시적인 표에서, 명조체 스타일의 가중치(3 및 7), 라운드 고딕체 스타일의 가중치(5), 각 고딕체(angular Gothic) 스타일의 가중치(6) 및 해서체(block) 스타일의 가중치(4 및 7)이 있다.
단계(2)에서, 요구된 가중치 데이타가 ROM 또는 하드 디스크와 같은 저장 디바이스내에 저장되었는지 여부를 판단하기 위한 검사가 수행된다. 단계(1)에서 작성된 표가 조사되고, 요구된 폰트 스타일 및 가중치 데이타를 사용함으로써 데이타가 저장 디바이스내에 저장될 것인지의 여부가 결정될 수 있다. 요구된 가중치데이타가 저장 디바이스내에 저장될 때, 프로그램 제어는 단계(3)으로 진행한다. 데이타가 아직 저장되지 않았다면, 프로그램 제어는 단계(4)로 간다.
요구된 가중치 데이타가 저장 디바이스내에 저장될 때 단계(3)에서 프로세스가 수행된다. 태선황/세선화 프로세스가 불필요하기 때문에, 좌표 데이타가 저장 디바이스로부터 판독된다. 데이타를 참조하여, 확대/축소 프로세스가 출력 크기에 따라 수행되고, 비트 맵 폰트가 작성된다. 이어서, 프로세스가 종료된다.
요구된 가중치 데이타가 저장 디바이스내에 저장되지 않을 때는 단계(4)에서 프로세스가 수행된다. 요구된 가중치를 갖는 문자를 출력하기 위해 태선화/세선화 프로세스가 수행된다.
그러므로, 태선화/세선화 프로세스를 수행하기 위해 소스 데이타를 선택하는 것이 필요하다. 일반적으로, 태선화 프로세스를 통해 얻어진 결과가 세선화 프로세스를 통새 얻어진 결과보다 나쁘다(deteriorate). 그러므로, 단계(1)에서 작성된 표를 사용하여, 요구된 가중치보다 작은 가중치용 데이타가 저장 디바이스내에 저장되는 지를 결정하기 위해 검사가 수행된다.
요구된 가중치보다 작은 가중치용 데이타가 저장 디바이스내에 저장된다면, 프로그램 제어는 단계(5)로 이동한다. 보다 작은 가중치용 데이타가 저장 디바이스내에 저장되지 않는다면, 프로그램 제어는 단계(6)으로 간다.
예를 들어, 명조체 스타일 폰트로서 5의 가중치를 갖는 명조체 스타일 폰트를 출력하기 위해, 3의 가중치를 갖는 명조체 스타일 폰트가 저장 디바이스내에 존재한다면, 프로그램 제어는 단계(5)로 이동한다. 3의 가중치를 갖는 각 고딕체 스타일 폰트를 출력하기 위해, 보다 적은 가중치를 갖는 각 고딕체 스타일 폰트가 아니라면 프로그램 제어는 단계(6)으로 이동한다.
단계(5)에서, 태선화 프로세스를 위한 표준으로서 사용될 가중치를 갖는 폰트 스타일이 선택된다. x 방향 및 y 방향의 파라메터들은 태선화 프로세스가 수행되기 위해 외곽선 및 내곽선용으로 설정된다.
5의 가중치를 갖는 명조체 스타일 폰트를 출력하기 위해, 3의 가중치를 갖는 명조체 스타일 폰트가 존재한다면, 외곽선 내곽선 각각의 x방향과 y방향에 대한 가중치 3과 가중치 5 사이의 차이는 태선화 파라메터로서 설정된다. 단계(6)에서, 세선화 프로세스를 위한 표준으로서 사용되는 가중치를 갖는 폰트 스타일이 선택된다. 이어서, 외곽선과 내곽선 각각의 x방향과 y방향에 대한 파라메터가 설정된다.
가중치 3을 갖는 각 고딕체 스타일 폰트를 출력하기 위해, 6의 가중치를 갖는 각 고딕체 스타일 폰트가 존재한다면, 윤곽선의 x방향과 y방향에 대한 가중치 3과 6사이에 차이가 파라메터로서 설정된다.
상술한 것처럼 태선화 또는 세선화 파라메터들이 단계(5) 또는 (6)에서 설정된 이후, 제1 실시예에서 설명한 바와 같은 프로세스가 수행되고 원하는 가중치를 갖는 문자가 출력된다. 타겟 문자의 가중치보다 작은 가중치를 갖는 폰트 데이타가 존재하는 지의 결정에 대해서만 설명되었지만, 타겟 문자의 가중치보다 큰 가중치를 갖는 폰트가 존재하는 지의 여부를 결정하기 위한 검사도 수행될 수 있다.
또한, 타겟 문자의 가중치에 더 근접한 가중치에 대한 데이타가 선택되어 가중치 변환을 수행하기 위해 사용될 수 있다.
[실시예 3]
이제 다른 실시예가 기술될 것이다.
제1 및 제2 실기예에서 수행된 태선화 프로세스의 그레이 스케일 폰트의 구현에 관하여 설명된다.
비트 맵 폰트는 도트 값이 0 또는 1인 이진 폰트이지만, 그레이 스케일 폰트는 각각의 도트가 0내지 3, 0 내지 5 또는 0 내지 255와 같은 다중치를 가질수 있는 다중치 폰트이다.
그레이 스케일 폰트를 발생하기 위한 방법으로서, 일반적으로, 제24도에서 도시된 바와 같이 n2 그레이 레벨을 갖는 그레이 스케일 폰트가 출력으로 될 때, 요구된 출력 크기는 제25a도 및 제 25b도의 단계(4)에서 수직 수평 방향으로 n배만큼 확대되고, 비트 맵 폰트는 최종 출력 크기를 사용함으로써 작성된다.
비트 맵은 제24도에 도시된 것처럼 n개의 비트를 형성하기 위해 수직 및 수평으로 분할된다. 각각의 n x n 스퀘어 필드 분할에 포함된 비트 1의 수는 그레이 스케일 한 도트에 대한 다중치를 결정한다.
제 1 실시예가 그레이 스케일 폰트에 적용된다면, 프로세싱은 제25a도 및 제25b도의 플로우차트에 도시된대로 수행된다.
제 25a도 및 제 25b도는 본 발명에 따른 문자 처리 장치에 대한 제2 문자 발생방법을 도시하는 플로우차트이다. 번호 (1) 내리 번호 (19)는 과정의 단계를 나타낸다.
이 프로세싱에 대한 플로우차트가 제1 실시예의 비트 맵 발생 또는 윤곽선 좌표 출력에 대한 플로우차트와 거의 동일하고, 제3도의 플로우차트에 거의 대응하는 단계이기 때문에 그레이 스케일 폰트의 발생에 기인하여 상이한 과정 단계만이 설명될 것이다.
제3a도 및 제3b도의 단계들과 다른 단계들은 단계 (1) 및 (4), 단계 (17) 및 (18)이다.
입력 파라메터들은 단계(1)에서 취해지고, 그레이 스케일 데이타는 입력 파라메터들에 첨가된다. 예를 들어, 파라메터들은 문자코드, 폰트 스타일, 가중치 데이타 및 출력 디바이스의 문자 출력 크기, 그레이 스케일 테이타, 출력 형태 및 특성들이다.
문자 코드는 타겟 시스템이 미리 특성화됨으로써 JIS 코드, 시프트 JIS 코드, EUC 코드, 또는 UNI코드와 같은 문자 코드 시스템에 의해 결정된다.
폰트 스타일은 미리 시스템내에 통합된 명조체, 고딕체 또는 라운드 고딕체와 같은 데이타,또는 옵션으로서 부가되는 데이타로부터 선택된다.
데이타의 내용들은 비트 맵 폰트를 발생하기 위해 사용되는 데이타를 내용과 실제적으로 동일하다. 그레이 스케일 폰트를 발생하기 위한 특정 데이타는 저장되지 않는다.
가중치 데이타는 폰트 스타일의 라인 두께에 대한 데이타이고, 이 데이타는 매우 가늠, 가늠, 표준, 굵음 및 매우 굵음으로 제공된다. 출력 크기는 출력되는 폰트 데이타의 실제 크기를 표시하는 데이타이다. x 방향과 y방향으로의 크기가 요구된다. 그레이 레벨 데이타는 그레이 스케일 폰트가 작성되는 그레이 레벨을 나타낸다.
그레이 레벨들은 출력 디바이스의 특성에 따라 4, 16 또는 256레벨로 설정된다. 출력 형태는 원하는 폰트용 출력 데이타 형태이고, 윤곽선 데이타 출력, 비트 맵 폰트 출렵, 그레이 스케일 폰트 출력 및 1-도트 표현 형태를 포함한다. 예를 들어, 그레이 스케일 폰트의 1-도트 표현 형태는 하나의 도트가 한 바이트에 의해 표현되는지, 또는 2내지 4개의 도트들이 한 바이트에 의해 표현되는 지를 나타내기 위해 사용된다. 출력 디바이스의 특성들은 디스플레이 유닛을 위한 최적 그레이 스케일을 작성하기 위해 어떻게 그레이 레벨을 결정하는가를 나타내는 테이타이다.
단계(4)에서, 그레이 스케일 폰트의 출력 크기와 그레이 레벨을 참조함으로써, 확대/축소 프로세스가 단계(2)에서 판독된 좌표 데이타에 대해 수행된다. 요구된 출력 크기가 (Ax,Ay)이고, 그레이 레벨이 n이며, 단계(3)에서 얻어진 좌표가 (x,y)일 때, 확대/축소 프로세스가 수행된 이후에 얻어진 좌표는 (X,Y)이고, 저장된 데이타를 위한 문자 프레임 크기는 (Mx,My)이며, 데이타 확대 또는 축소에 대한 표현은
이다.
단계 (17) 및 (18)에서, 그레이 스케일 폰트는 단계(16)에서 작성된 비트 맵폰트를 사용함으로써 작성된다. 먼저, 단계(17)에서, 그레이 스케일 변환표는 출력 디바이스 특성에 따라 선택되고, 이것은 입력 파라메터로서 얻어진다. 16 그레이 레벨에 대해 4×4의 마스크로써, 출력 디바이스 특성을 나타내는 값이 제 26도에 도시된 바와 같은 그레이 스케일 폰트 변환표에 미리 저장된다.
제 26a도는 출력 디바이스의 휘도(luminance)특성이 균일한 예를 도시하고; 제26b도는 휘도가 도트의 중심에서는 높고, 주변부에서는 낮은 예를 도시하며; 제26c 또는 휘도가 도트의 주변부에서는 높고, 중심에서는 낮은 예를 도시한다.
이들 중으로부터, 출력 디바이스의 휘도 특성의 가장 적절한 표가 선택된다.
그런후, 단계(18)에서, 그레이 스케일 폰트가 단계(17)에서 선택된 표를 사용함으로써 작성된다. 이 프로세싱은 이제 제 27도를 참조하여 기술될 것이다.
제 27도는 단계(16)에서 얻어지는 비트 맵 폰트를 도시한다. 수직 및 수평 길이들은을 그레이 레벨 n과 곱함으로써 작성된다.
그러므로, 수직 및 수평 길이들은으로 분할되고,×그리드 스퀘어가 추출된다. 각각의 그리드 스퀘어에 대한 비트값은 단계(17)에서 얻어진 표의 해당 그리드 스퀘어내에 등록된 값으로 곱해진다,
곱(product)들의 합은 타겟 도트용 그레이 스케일값을 제공한다.
제27도는 16 그레이 레벨을 갖는 그레이 스케일 폰트가 출력되는 예를 도시한다. 제26b도내의 표는 4 ×4 그리드 스퀘어용으로 선택된다.
상술된 프로세스가 모든 그리드 스퀘어에 대해 수행되어서, 제28도에 도시된 그레이 스케일 폰트가 발생된다. 이어서 단계(19)에서, 그레이 스케일 폰트는 출력 형태에 따라서 저장되고, 데이타는 요구 측(request side)으로 되돌아 간다.
요구된 출력 형태가 한 도트에 대한 한 바이트라면, 그리드 스퀘어에서의 값들은 한 바이트로 압축되어 저장된다.
요구된 출력 형태가 근접 점들을 한 바이트로 압축하는 것이라면, 하나의 도트는 4 바이트로 압축되어 저장되고, 데이타는 요구 측으로 되돌아간다. 이어서 프로세스가 종료된다.
[실시예 4]
이 실시예의 문자 처리 장치용 블럭회로가 제1도 및 제2도를 참조하여 설명되므로, 여기에서 설명하지 않는다.
제1도에 및 제2도에 도시된 것처럼 배열된 문자 처리 장치에서, CPU(1)이 결정된 문자 가중치를 나타내는 파라메터와 ROM(2)내에 저장된 변환 프로그램에 따라 실행되고, 윤곽선 데이타의 좌표값을 후술될 다른 데이타의 좌표값으로 변환한다. 그다음 CPU(1)은 좌표가 변환된 윤곽선 데이타에 따라 굵은 또는 가는 문자 패턴을 발생하고, 상이한 가중치를 갖는 굵은 문자 또는 가는 문자가 소수의 문자 데이타를 사용함으로써 발생된다.
더우기, CPU(1)은 타겟의 좌표에 근접한 2개의 접의 좌표값을 참조함으로써 변환된 좌표값을 결정하고, 잘 균형잡힌 굵은 또는 가는 문자 패턴을 발생한다.
또한, CPU(1)은 윤곽선 데이타를 사용함으로써 x 방향과 y방향에 대한 독립적인 문자 가중치를 결정하고, 각각의 폰트 스타일의 특성을 효과적으로 묘사하는 굵은 또는 가는 문자 패턴을 발생한다.
무엇보다, 변환된 윤곽선 데이타에 따라, CPU(1)은 비트 맵 폰트, 윤곽선 좌표 데이타 또는 그레이 스케일 폰트 중의 하나를 출력하고, 굵은 또는 가는 문자 데이타를 적절한 데이타 형태로 다양한 출력 수단에 공급한다. 또한, 결정된 문자 가중치를 나타내는 파라메터에 따라, CPU(1)이 변환시킬 문자 데이타는 ROM(2)내에 저장되어 있는 표로부터 결정되고, 결정된 문자 데이타에 대응하는 윤곽선 데이타의 좌표값이 변환된다. 좌표들이 변환되는 윤곽선 데이타에 따라, 굵은 또는 가는 문자 패턴이 발생되어서, 문자 데이타 소스가 보다 양호한 굵은 또는 가는 문자 데이타를 발생하기 위해 활용한다.
또한, CPU(1)은 결정된 문자 가중치에 더 근접한 문자 가중치를 갖는 문자 데이타를 변환시킴으로써 더 정밀한 굵은 또는 가는 문자 데이타를 발생한다.
본 발명의 본 실시예의 상세한 프로세싱이 이제 제29a도 및 제29b도의 플로우차트를 참조하여 설명될 것이다.
제29a도 및 제29b도의 플라우차트는 본 발명에 따라 문자 처리 장치의 제3문자 발생 방법을 도시한다. 번호 (1) 내지 (16)은 과정의 단계들을 나타낸다.
설명은 시스템내에 존재하고 특정 가중치를 갖는, 상이한 가중치를 갖는 문자용 데이타를 발생하기 위한 하나의 폰트 스타일용 데이타의 사용을 포함하여 이루어진다.
입력 파라메터들은 단계(1)에서 받아들여진다. 입력 파라메터들은 예를 들어 , 문자 코드, 폰트 스타일, 가중치 데이타 및 출력될 문자 출력 크기 및 형태일 수 있다. 문자 코드는 타겟 시스템이 미리 특정화됨으로써 JIS 코드, 시프트 JIS 코드, EUC 코드, 또는 UNI 코드와 같은 문자 코드 시스템에 의해 결정된다. 폰트 스타일은 시스템이 명조체, 고딕체, 또는 라운드 고딕체와 같이 미리 시스템에 포함되어 있는 데이타나 옵션으로서 첨가되는 데이타로부터 선택된다. 가중치는 폰트 스타일의 라인 두께에 관한 데이타이고, 매우 가는, 가늠, 표준, 굵음 및 매우 굵음 데이타가 제공된다. 출력 크기는 출력되는 폰트 데이타의 실제 크기를 나타내는 데이타이다. 출력 형태는 원하는 폰트용의 출력 데이타 형태이고, 윤곽선 좌표 데이타 출력 또는 비트 맵 출력과 같은 출력 요구가 제기된다.
타겟 문자용의 좌표 데이타는 단계(2)에서 판독된다. 데이타는 ROM, RAM, 하드 디스크, 또는 플로피 디스크에 미리 저장된다. 단계(1)에서 취해진 폰트 스타일 데이타 및 문자 코드 데이타가 검사되어, 필요한 양의 좌표 데이타가 판독된다. 판독될 좌표 데이타는 제4도에 도시된 것과 같은 문자의 윤곽선의 특성점을 구함으로써 얻어진다. 데이타는 각각의 좌표점에 관해 직선 데이타/곡선 결정 플래그 및 윤곽선 시작점/끝점 플래그와 같은 속성 정보를 포함하고 있다. 이 실시예에서 사용된 곡선 데이타용 보간 표현 (interpolation expression)이 제2 또는 제3B 스플라인(spline)곡선, 또는 제2 또는 제3 베지이르 곡선일지라도, 사용되는 보간 표현은 미리 결정된다.
문자 프레임을 설명하기 위해 사용되는 좌표는 최소값이 0이고, 최대값은 800이다. 각각의 획(stroke) 프레임에서 문자 원점으로부터 표준점까지의 오프셋 정보가 또한 포함된다. 단계(3)에서, 태선화 또는 세선화 프로세스가 입력 파라메터내에 포함된 가중치 데이타에 따라서 좌표 데이타용으로 수용된다. 이 프로세스의 상세한 설명은 제37도의 플로우차트를 참조하여 후술될 것이다. 이 프로세스의 결과로, 제 31도에 도시된 것처럼 좌표 데이타가 태선화된 또는 세선화된 윤곽선용 좌표 데이타로 변환된다.
태선화 또는 세선화 프로세스가 수행된 이후, 좌표점들은 일대일 대을을 갖고, 각각의 점에 대한 속성 플래그는 변하지 않는다. 단계(4)는 입력 파라메터로써 포함된 출력 크기에 따라 단계(3)에서 얻어진 태선화된 또는 세선화된 좌표 데이타에 대해 수행된다.
요구된 출력 크기가 (Ax,Ay)일 때, 단계(3)에서 얻어진 좌표값은 (x,y)이고, 확대 또는 축소 프로세스가 수행된 이후의 좌표값은 (X,Y)이며, 저장된 문자 프레임 크기는 (Mx,My)이므로,
(X, Y) = ( x × Ax/Mx, y× Ay/My)
이다.
단일 문자로부터의 모든 좌표들은 상이 식을 사용하여 계산된다. 식(3)에서 얻어진 각각의 좌표점들에 대한 속성 플래그들은 변하지 않는다.
비트 맵 출력이 단계(5)에서 요구될 때, 프로그램 제어는 단계(7)로 진행한다. 단계(7) 내지 단계(13)은 좌표 데이타로부터 비트 맵 데이타를 실제로 작성하기 위한 과정들이다. 단계(7)에서, 타겟 좌표 데이타가 직선 데이타인지 곡선 데이타인지를 결정하기 위해 검사가 수행된다. 단계(7)에서, 좌표 데이타가 직선 데이타이면, 좌표점은 직선에 대한 시작점으로서 정의되고, 후행 좌표점은 직선에 대한 끝점으로서 정의된다. 프로그램 제어는 단계(8)로 이동한다.
단계(7)에서, 타겟 데이타가 곡선 데이타이면, 좌표점과 곡선 종료 플래그가 배치되는 점 사이의 점들에 대한 좌표 데이타는 곡선 데이타로 된다고 가정된다. 프로그램 제어는 단계(9)로 이동한다. 직선을 발생하기 위한 프로세스가 단계(8)에 서 수행된다. 이 경우에, DDA 방법이 직선을 발생시키기 위해 사용된다. DDA에 의해 얻어진 좌표 데이타는 제33도에 도시된 바와 같이 페인팅용 좌표 표에 등록되어 있다.
제33도에 도시된 페인팅용 좌표 표에서, x 방향에 대한 시작좌표 및 끝 좌표는 출력 영역내의 각각의 y 좌표에 대해 등록되어 있다. DDA방법의 결과로서, 다수의 x 좌표가 단일 y 좌표에 대해 존재할 때, x 좌표는 획의 윤곽선에 관해 외부의 좌표로 되도록 설정된다. 단계(9)에서, 곡선 데이타는 짧은 직선(짧은 벡터)의 어셈블리지로 변환된다.
제 9도는 제3 베지에르 곡선의 짧은 벡터들의 어셈블리지로의 변환을 도시한다. 이 프로세스에 대한 것은 상술되었으므로 여기서는 생략한다.
단계(10)에서, 좌표 데이타는 단계(9)에서 얻어진 짧은 벡터 어셈블리지에 따라 페인팅용 좌표 표에 등록되어 있다. 표에 좌표 데이타를 등록하는 방법은 단계(8)에서 수행된 것과 동일한다. 이 프로세스는 모든 짧은 벡터들에 대해 반복적으로 수행된다.
한 윤곽선용의 모든 좌표 데이타에 대한 프로세싱이 완료되었는 지를 결정하기 위해 검사가 단계(11)에서 수행된다. 프로세싱이 완료되었다면, 프로그램 제어는 단계(13)으로 진행한다. 프로세스가 아직 완료되지 않았다면, 프로그램 제어는 단계(12)로 이동한다. 단계(12)에서, 현재 좌표 데이타에 대한 포인터가 다음 데이타로 진행하도록 갱신된다. 다음 데이타가 직선 데이타이면, 포인터는 다음 좌표 데이타를 지정하도록 갱신된다. 다음 데이타가 곡선 데이타라면, 포인터는 곡선 끝 좌표점을 지정하도록 갱신된다.
이어서 프로그램 제어는 데이타가 직선용 데이타인지 곡선용 데이타인지를 결정하기 위해 검사가 수행되는 단계(7)로 되돌아간다. 한 문자에 대한 모든 윤곽선 데이타가 프로세스되었는 지를 결정하기 위한 검사가 단계(13)에서 수행된다. 모든 윤곽선 데이타가 프로세스되었을 때, 프로그램 제어는 단계(15)로 진행한다. 프로세싱이 아직 완료되지 않았다면, 프로그램 제어는 단계(14)로 이동한다. 한 윤곽선에 대한 데이타가 프로세스되었으므로, 포인터는 단계(14)에서 다음 윤곽선의 헤드를 지정하기 위해 시프트되고, 프로그램 제어는 단계(7)로 되돌아 간다. 단계(15)에서 모든 좌표 데이타에 대한 점들이 24개의 평면상에 배치되므로, y 좌표에 대응하는 x 좌표에 대한 논-제로 와인딩(non-zero winding) 방법으로 페인팅이 수행되고, 이것은 제 34도에 도시된 바와 같이 단계(8)및 (10)에서 페인팅 좌표 표에 저장된다. 이 방법에 따라, 평면이 각각의 스캔된 라인을 따라 좌로 부터 스캔된다. 시작점에서의 플래그 값은 증가되고, 끝점에서의 플래그의 값은 감소된다. 플래그값이0이 아니라면, 이들 플래그들의 점 사이의 간격은 l로 페인트된다.
마지막으로, 단계(16)에서, 단계(15)에서 얻어진 한 문자용 데이타는 요구측에 의해 표시되는 영역으로 되돌아가서, 프로세스가 종료된다. 이제, 제29도의 단계(3)에서 태선화/세선화 예시적인 프로세스가 제 35도의 플로우차트를 참조하여 상세하게 설명될 것이다.
이 실시예에서 태선화/세선화 프로세스에서, 획을 태선화/세선화하기 위한 파라메터는 각각의 윤곽선 점에 대한 좌표를 변환시키기에 유효하다.
제 35도는 본 발명에 따른 문자 처리 장치를 위한 예시적인 태선화/세선화 과정을 도시하는 플로우차트이다. 번호 (1) 내지 (9)는 과정의 단계들을 나타낸다.
단계(1)에서, 윤곽선의 두께에 대한 파라메터는 가중치에 따라 결정된다. 윤곽선 두께를 결정하기 위한 파라메터는 외곽선 및 내곽선에 대해 x 방향 및 y 방향으로 독립된 값을 갖고, 수평 라인의 태선화 및 수직 라인의 태선화를 독립적으로 다룬다.
이것은 예를 들어, 제36도에 도시된 것처럼 명조체 문자를 굵게 하기 때문이며, 그 수평 라인은 더 이상 굵어질 필요가 없고 수직 라인이 더 굵어져야 하므로, x 방향과 y 방향에 대해 상이한 값들이 요구된다. 그러나, 라운드 고딕체 폰트 스타일 문자에 있어서는, 제 37도에 도시된 것처럼 수평 방향의 라인은 수직 방향의 라인만큼 굵어진다. 그러므로, 개별적인 폰트 스타일에 대한 태선화 값들은 변화되어야 한다. 제 38도에 도시된 바와 같이, 폰트 스타일의 윤곽선으로부터 수평 및 수직 라인의 중심까지의 기준값을 나타내는 데이타 및 가중치는 표에 미리 등록되어 있다. 표준 폰트 가중치와 원하는 폰트 가중치간의 차이는 x 방향과 y 방향으로 외곽선과 내곽선의 두께를 결정하기 위해 사용된다. 태선화 값이 정(+)일 때 태선화 프로세스가 수행되고, 태선화 값이 부(-)일 때 세선화 프로세스가 수행된다. 표준 데이타만큼의 굵어지기 위해 좌표 데이타를 사용하는 라운드 고딕체 스타일에 있어서, 매우 가는 라운드 고딕체 문자를 발생하기 위해, 태선화 값(파라메터)은 x 성분에 대해 10과 25사이의 차이 및 y성분에 대해 10과 25사이의 차이를 확인함으로써 결정된다.
단계(2)에서, 각각의 획에 대한 오프셋 정보가 태선화 파라메터에 따라 변한다. 변환된 오프셋 정보를 얻기 위해, 태선화 파라메터의 x값과 y값은 오프셋의 x좌표와 y좌표로 부터 감산된다. 단계(3) 내지 (7)에서, 태선화/세선화 프로세스가 한 획을 구성하는 모든 좌표 점렬에 대해 수행된다. 먼저, 단계(3)에서, 프로세스될 대상점이 취해진된다. 그런후, 단계(4)에서 대상점에 근접한 점들이 취해진다.
단계(5)에서, 태선화 프로세스가 실제적으로 수행된다. 이 프로세스는 제17도를 참조하여 설명되었으므로, 여기서는 그 설명을 생략한다. 점이 시프트되는 영역 범위는 단계(1)에서 얻어진 x 태선화 값 및 y 태선화 값으로 형성되는 삼각형의 빗변과 동일하다. 이 프로세스에서 얻어진 좌표값은 단일 획 프레임용 좌표이고, 이것들은 문자 원점으로부터 좌표를 제공하기 위해 단계(2)에서 얻어진 오프셋 좌표 값에 더해진다.
단계(6)에서, 한 윤곽선에 대한 모든 좌표 점들이 프로세스될 때, 프로그램제어는 단계(8)로 진행한다. 몇명 윤곽선 점들이 프로세스될 때, 프로그램 제어는 포인터가 다음 윤곽선 점을 지정하기 위해 갱신되고 태선화 프로세스가 다시 수행되는 단계(7)로 진행한다. 단계(8)에서 하나의 문자에 관한 모든 윤곽선이 프로세스되었는 지를 결정하기 위해 검사가 수행된다. 프로세싱이 완료되었을 때, 프로그램제어는 단계(9)로 이동한다. 프로세스될 윤곽선이 남아있을 때, 포인터는 다음 윤곽선점을 지정하기 위해 갱신되고, 태선화 프로세스가 다시 수행된다. 태선화 프로세스가 모든 윤곽선 좌표점에 대해 수행될 때, 프로그램 제어는 단계(9)로 간다. 제 15도에 도시된 바와 같이, 태선화 프로세스가 수행되는 동안에는 최종 문자 프레임은 더 커지고, 세선화 프로세스가 수행되는 동안에는 최종 프레임이 더 작아진다.
따라서, 최종 프레임의 크기를 최초 문자 프레임의 크기를 확실히 할 수 있도록 조정될 필요가 있다. 확대/축소의 비율은 단계(1)에서 얻어진 외곽선에 대해서는 태선화 값(세선화에 대해서는 부 태선화 값)의 2배이다.
최초 문자 프레임의 X 폭이 Bx일 때, 외곽선의 수평 태선화 값은 Fx이고, Y폭은 By이며, 외곽선의 수직 태선화 값은 Fy이고, 태선화 프로세스기 수행되는 좌표는 (x,y)이며, 문자 프레임 크기가 조정된 후의 좌표는 (X,Y)이다.
(X,Y) = ((x + Fx) × Bx/(Bx +Fx ×2),(y + Fy) × By/(By +Fy ×2))
이 계산은 한 문자에 관한 모든 좌표점렬들에 대해 수행되고, 따라서 제35도에서 도시된 태선화 프로세스가 종료된다.
[실시예 5]
제5실시예에 대하여 설명한다. 본 설명은 특정의 가중치를 갖는 폰트 스타일이 요구될 때, 동일 폰트 스타일에 대해 표준으로 사용할 수 있는 둘 또는 그 이상의 가중치가 존재하는 경우에 대한 것이다.
이 경우 요구된 가중치를 프로세스하는데 사용되는 폰트 가중치를 동일한 폰트 스타일용의 다수의 폰트 가중치들중에서 선택하는 것이 중요하다. 그러므로, 표준 가중치를 갖는 폰트 스타일이 결정될 때, 다음의 가중치 변환 프로세스는 제 1실시예에서 수행된 것과 동일한 방법으로 수행된다. 따라서 여기서는 표준으로서 가중치를 선택하는 방법에 대해서만 설명한다.
제22도는 본 발명에 따른 문자 처리 장치에 태선화 파라메터를 선택하는 과정의 예를 도시하는 플로우차트이다. 번호 (1) 내지 (6)은 과정의 단계들을 나타낸다.
먼저, 단계(1)에서 폰트 스타일의 어느 가중치가 저장 장치에 저장되어 있는지를 검사를 필요가 있다. 폰트 스타일용 헤더에 저장되어 있는 헤더 데어타를 참조하여, 그러한 데이타가 존재함을 나타내는 데이타는 표에 등록한다. 제39a도 및 제 39b도의 일례를 든 표에서, 가중치 3및 7은 명조체 스타일, 가중 5는 라운드 고딕체 스타일, 가중치 6은 각 고딕체 스타일, 및 가중치 4와 7은 해서체 스타일임을 나타내고 있다. 단계(2)에서, 요구된 가중치 데이타가 예를 들면 ROM 또는 하드 디스크와 같은 저장 장치에 저장되어 있는지의 여부를 결정하는 검사가 수행된다. 단계(1)에서 작성된 표를 조사하여, 요구된 폰트 스타일 및 가중치 데이타를 사용함으로써 저장 장치에 데이타가 저장되어 있는지의 여부가 결정된다. 데이타가 아직 저장되어 있지 않을 때는 , 프로그램 제어는 단계(4)로 이동한다. 단계(3)에서의 프로세스는 요구된 가중 데이타가 저장 장치에 저장되었을 때 수행된다. 태선화/세선화 프로세스 요구가 없으므로, 좌표 데이타가 저장 장치로부터 판독된다. 좌표 데이타를 참조하여 확대/축소 프로세스가 출력 크기에 맞추어 수행되고, 비트 맵 폰트가 작성된다. 이어서 프로세스가 종료된다.
단계(4)에서 프로세스는 요구된 가중치 데이타가 저장 장치에 저장되어 있지 않을 때 수행된다. 태선화/세선화 프로세스가 요구된 가중치를 갖는 문자를 출력하기 위해서 수행된다. 그러므로 태선화.세션화 프로세스를 수행하기 위한 소스 데이타를 선택하는 것이 필요하다. 일반적으로, 태선화 프로세스를 통해 얻어진 결과는 세선화 프로세스를 통해 얻어진 결과보다 양호하다. 그러므로, 단계(1)에서 작성된 표를 사용함으로써 요구된 가중치보다 작은 가중치 데이타가 저장 장치에 저장되어 있는지의 여부를 결정하는 검사가 수행된다.
요구된 가중치보다 작은 가중치의 데이타가 저장 장치에 저장되어 있을 때, 프로그램 제어는 단계(5)로 이동한다. 작은 가중 데이타가 저장 장치에 저장되어 있지 않을 때에는, 프로그램 제어는 단계(6)으로 간다.
저장 장치에 3의 가중치를 갖는 명조체 스타일 폰트가 있을때, 예를 들면 5의 가중치를 갖는 명조체 스타일의 폰트를 출력하기 위해서는 프로그램 제어는 단계(5)로 진행된다. 보다 작은 가중치를 갖는 각 고딕체 스타일 폰트가 없을 때, 3의 가중치를 갖는 각 고딕체 스타일의 폰트를 출력하기 위해서는 프로그램 제어는 단계(6)으로 진행한다.
단계(5)에서, 태선화 프로세스를 위한 표준으로서 사용될 가중치를 갖는 폰트 스타일이 선택된다. x 방향 및 y방향 파라메터를 설정하여 태선화 프로세스를 행하도록 한다. 3의 가중치를 갖는 명조체 스타일 폰트가 있을 때, 5의 가중치를 갖는 명조체 스타일 폰트를 출력하기 위해서, 윤곽선의 x방향 및 y방향에 대한 가중 3과 가중 5간의 차이는 태선화 파라메터로서 설정된다. 단계(6)에서, 세선화 프로세스에 대한 표준으로서의 가중치를 갖는 폰트 스타일이 선택된다. 다음에, 윤곽선의 x방향 및 y 방향에 대한 파라메터가 설정된다.
6의 가중치를 갖는 각 고딕체 스타일 폰트가 있을 때, 3의 가중치를 갖는 각 고딕체 스타일 폰트를 출력하기 위해서, 윤곽선의 x 방향 및 y 방향에 대한 가중 3및 가중치 6간의 차이는 파라메터로서 설정된다. 상술한 바와 같이 태선화 또는 세선화 파라메터 가 단계(5) 및 단계(6)에서 설정된 후에, 제4 실시 예에서 설명한 프로세스가 수행되어 요구된 가중치를 갖는 문자가 출력된다.
타겟 문자의 가중치보다 작은 가중치를 갖는 폰트 데이타가 존재하는지의 여부를 결정에 대해 설명하였지만, 타겟 문자의 가중치보다 큰 가중치를 갖는 폰트 데이타가 존재하는지의 여부를 결정하는 검사가 수행될 수 있다. 더우기, 타겟 문자의 가중치에 가장 근접한 가중치의 데이타가 선택되어 가중치 변환을 수행하는 데 사용될 수 있다.
[실시예 6]
제6 실시예에 대해서 설명한다. 본 설명은 제4 및 제5 실시예에서 수행된 태선화 프로세스의 그레이 스케일 폰트 사용에 관한 것이다.
비트 맵 폰트는 이 폰트의 도트 값이 0 또는 1중 어느 하나인 이진 폰트인 반면, 그레이 스케일 폰트는 각 도트가 0 내지 3,0 내지 5, 또는 0 내지 255와 같은 다중치를 가질 수 있는 다중치 폰트이다. 그레이 스케일 폰트를 발생시키는 방법으로서, 통상 n2 그레이 레벨을 갖는 그레이 스케일 폰트를 출력하고자 할 때, 제40도에 도시한 바와같이 요구된 출력 크기는 제41a도 및 제41b도의 단계(4)에서 수직 및 수평 방향으로 n배만큼 확대되어 , 결과로 나타난 출력 크기를 사용함으로써 비트 밉 폰트가 작성된다.
비트 맵은 제40도에 도시한 바와같이 n비트를 형성하도록 수직 및 수평으로 분할된다. n×n 스퀘어 필드 분할 각각에 포함된 비트 1의 수에 의해서 그레이 스케일의 한개의 도트에 대한 다중치가 결정된다. 제4 실시예가 그레이 스케일 폰트에 적용될 때, 프로세스는 제41도의 플로우차트에 도시된 바와같이 수행된다.
제41a도 및 제41b도는 본 발명에 따른 문자 처리장치를 위한 제4 문자 발생방법에 대한 플로우차트이다. 번호 (1) 내지 (18)은 과정의 단계를 나타낸다.
본 프로세스에 대한 플로우차트는 제4 실시예에서 비트 맵 폰트 발생 또는 윤곽선 좌표 출력에 대한 과정과 거의 동일하며, 단계들은 제29도의 단계들에 거의 대응하므로, 그레이 스케일 폰트의 발생에 기인하여 다르게 된 과정 단계에 대해서만 설명한다.
상이한 단계는 단계(1) 및 단계(4)이며, 단계(16) 및 단계(17)이 추가된다.
입력 파라메터는 단계(1)에서 취해지며, 그레이 스케일 데이타는 상기 입력 파라메터에 부가된다. 파라메터는 예를 들면 문자 코드, 폰트 스타일, 가중 데이타 및 문자 출력 크기, 그레이 레벨 데이타, 출력 형태, 및 출력 장치의 특성이다. 문자코드는 타겟 시스템이 미리 특정화됨으로써 JIS 코드, 시프트 JIS 코드, EUC 코드, 또는 UNI 코드와 같은 문자 코드 시스템에 의해 결정된다. 폰트 스타일은 미리 시스템에 포함되는 데이타로서 이를테면 명조체, 고딕체 또는 라운드 고딕체 또는 옵션으로서 부가되는 데이타로부터 선택된다.
데이타의 내용은 비트 맵 폰트를 발생시키는데 사용되는 데이타와 정확히 동일하다. 그레이 스케일 폰트를 발생시키기 위한 특정 데이타는 저장되지 않는다. 가중 데이타는 폰트 스타일의 라인 두께를 위한 데이타이며, 매우 가늠, 가늠, 표준, 굵음 및 매우 굵음의 데이타가 제공된다.
출력 크기는 출력될 폰트 데이타의 실제 크기를 나타내는 데이타이다. x 방향 및 y 방향으로의 크기가 요청된다. 그레이 레벨 데이타는 그레이 스케일 폰트가 작성될 그레이 레벨을 나타낸다. 그레이 레벨은 출력 장치의 특성에 따라서 4, 6 또는 256 레벨로 설정된다.
출력 형태는 요구된 폰트에 대한 출력 데이타 형태이며, 윤곽선 좌표 데이타 출력, 비트 맵 폰트 출력, 그레이 스케일 폰트 출력 및 1-도트 표현형태를 포함한다.
예를 들면 그레이 스케일 폰트의 1-도트 표현 형태는 하나의 도트가 한 바이트에 의해 표현되는지, 또는 2개나 4개의 도트가 한 바이트에 의해 표현되는지의 여부를 나타내는데 사용된다.
출력 장치의 특성은 디스플레이 장치용 최적 그레이 스케일 폰트의 준비를 위한 그레이 레벨을 결정하는 방법을 나타내는 데이타이다.
단계(4)에서, 그레이 스케일 폰트의 출력 크기와 그레이 레벨을 참조함으로써, 확대/축소 프로세서가 단계(2)에서 판독한 좌표 데이타에 대해 수행된다. 요구된 크기가 (Ax, Ay)일 때, 그레이 레벨은 n, 단계(3)에서 얻게된 좌표는 (x, y), 확대/축소 프로세스 후 얻어진 좌표는 (X,Y), 저장된 데이타용 문자 프레임 크기는 (Mx, My), 데이타 확대 또는 축소를 위한 식은
(X, Y) = (x××Ax/Mx, y××Ay/My)이다.
단계(16)과 단계(17)에서, 그레이 스케일 폰트는 단계(15)에서 작성된 비트 맵 폰트를 채용함으로서 작성된다.
먼저, 단계(16)에서, 그레이 스케일 변환표는 출력 장치 특성에 따라 선택되며, 이는 입력 파라메터로서 얻어진다. 16 그레이 레벨에 대해 4×4 마스크로, 출력 장치 특성을 표현하는 값은 제42a도 내지 제42c도에 도시한 바와 같이 그레이 스케일 폰트 변환표에 미리 저장된다.
제42a도는 출력 장치의 휘도 특성이 균일한 예를 도시한 것이며, 제42b도는 휘도가 도트의 중심에서 높고 그 주변부에서는 낮은 예를 도시한 것이며, 제42c도는 도트의 주변부에서 휘도가 높고 그 중심에서는 낮은 예를 도시한 것이다. 이들로부터, 출력 장치의 휘도 특성에 가장 적당한 표가 선택된다.
이어서, 단계(17)에서 그레이 스케일 폰트는 단계(16)에서 선택된 표를 사용함으로써 준비된다. 이 프로세싱 제43도를 참조하여 설명한다.
제43도는 단계(15)에서 얻어진 비트 맵 폰트를 도시한 것이다. 수직 및 수평 길이는을 그레이 레벨 n과 곱함으로써 작성된다. 그러므로, 수직 및 수평 길이는으로 분할되며×그리드 스퀘어가 추출된다. 각각의 그리드 스퀘어에 대한 비트 값은 단계(16)에서 얻어진 표에서 대응하는 그리드 스퀘어로 등록된 값으로 곱해진다.
곱들의 합은 타겟 도트에 대한 그레일 스케일 값을 제공한다. 제42도는 16 그레이 레벨을 갖는 그레이 스케일 폰트가 출력되는 예를 도시한 것이다. 제42b도에서 표는 4×4 그리드 스퀘어에 대해 선택된다. 상술한 프로세스가 모든 그리드 스퀘어에 대해 수행되어 제44도에 도시된 바와같은 그레이 스케일 폰트가 생성된다.
다음에, 단계(18)에서, 그레이 스케일 폰트는 출력 형태에 맞추어 저장되고 데이타는 요구 측에 되돌아간다. 요구된 출력 형태가 하나의 도트에 대해 하나의 바이트이면, 그리드 스퀘어 값은 한 바이트로 압축되어 저장된다. 요구된 출력 형태가 한 바이트로 이웃한 점의 압축인 것이며, 한 도트는 4개의 비트로 압축되어 저장되며, 이 때 데이타는 요구 측으로 되돌려 준다. 이어서 프로세스가 종료된다.
상술한 바와같이, 본 발명의 일 실시예에 따라서, 변환 수단은 결정된 문자 가중치에 따라 윤곽선 데이타의 좌표값을 변환하고, 이어서 발생 수단은 좌표가 변환된 윤곽선에 따라 굵은 또는 가는 문자 패턴을 발생하여 상이한 가중치를 갖는 굵은 문자 또는 가는 문자를 몇개의 문자 데이타를 사용함으로써 얻어질 수 있다.
더우기, 본 발명의 다른 실시예에 따라서, 변환된 좌표값은 타겟 좌표에 근접한 두 점의 좌표값을 참조함으로써 결정될 수 있어, 양호하게 조화를 이룬 굵은 또는 가는 문자 패턴이 얻어질 수 있다.
또한, 본 발명의 다른 실시예에 따라서, 외곽선 데이타 및 내곽선 데이타는 윤곽선 데이타로부터 추출될 수 있고, 보기좋은 모양의 굵은 또는 가는 문자 패턴을 얻을 수 있다.
더우기, 본 발명의 다른 실시예에 따라서, 굵은 입력 문자 가중치 또는 가는 입력 문자 가중치는 추출된 외곽선 데이타 및 내곽선 데이타를 사용함으로써 별개로 결정될 수 있으며, 보기좋은 모양의 굵은 또는 가는 문자 패턴이 얻어질 수 있다.
또한, 본 발명의 다른 실시예에 따라서, x 방향 및 y 방향에 대한 독립된 문자 가중은 추출된 외곽선 및 내곽선 데이타를 사용함으로써 결정될 수 있으며, 각 폰트 스타일의 특성을 효과적으로 묘사하는 굵은 또는 가는 문자 패턴이 얻어질 수 있다.
또한, 본 발명의 다른 실시예에 따라서, 비트 맵 폰트, 윤곽선 좌표 데이타 또는 그레이 스케일 폰트는 변환된 윤곽선 데이타에 따라 출력될 수 있으며, 굵은 또는 가는 문자 데이타가 여러가지 출력 수단의 적당한 데이타 형태로 공급될 수 있다.
더우기, 본 발명의 다른 실시예에 따라서, 파라메터는 발생된 문자 가중치와 저장된 문자 데이타의 가중치간의 차이를 확인함으로써 결정되며, 변환 수단은 윤곽선 데이타의 좌표값을 변환하기 위해서 상기 결정된 파라메터를 채용하며, 발생 수단은 굵은 또는 가는 문자 패턴을 발생하기 위해서 결과로 나타난 윤곽선 데이타를 사용하여, 문자 데이타 소스를 사용함으로써 가장 바람직하게 굵은 또는 가는 문자 데이타를 얻는다.
또한, 본 발명의 하나 이상의 실시예에 따라서, 보다 정밀한 굵은 또는 가는 문자 데이타는 결정된 문자 가중치에 근접한 문자 가중치를 갖는 문자 데이타에 따라 파라메터를 결정함으로써 발생될 수 있다.
그러므로, 본 발명에 따라서, 단지 작은 용량의 메모리만이 여러 가중치를 갖는 폰트 스타일용의 문자 데이타의 발생을 위해 요구되는 것이다.

Claims (12)

  1. 문자의 태선화량 또는 세선화량을 지정하는 파라메터를 입력하기 위한 입력 수단(제3a도, 단계(1)); 상기 입력 수단에 의해 입력된 상기 파라메터에 기초하여, 문자 윤곽을 나타내는 좌표 데이타를 태선화 또는 세선화하기 위한 처리 수단(제3a도, 단계(3)); 상기 태선화 또는 세선화 처리 전후의 문자 프레임의 크기가 동일하게 유지되도록 상기 처리 수단에 의해 태선화 또는 세선화된 좌표 데이타를 조정하기 위한 조정 수단(제12도, 단계(12)); 및 상기 조정 수단에 의해 조정된 좌표 데이타에 기초하여, 문자 패턴을 발생시키기 위한 발생 수단(제3a도 및 제3b도, 단계(7 내지 16))을 포함하는 문자 처리 장치.
  2. 제1항에 있어서, 상기 처리 수단은 백터 AB 및 백터 BC - 여기서, B는 태선화 또는 세선화될 좌표 데이타를 나타내고, A 및 C는 좌표 B에 인접한 좌표 데이타를 나타냄-에 의해 형성된 각도가 분할되는 방향에서 좌표 데이타를 태선화 또는 세선화하는 것을 특징으로 하는 문자 처리 장치.
  3. 제1항에 있어서, 상기 입력 수단에 저장된 파라메터는 문자 태선화량 또는 세선화량을 X 및 Y 방항에서 지정하는 것을 특징으로 하는 문자 처리 장치.
  4. 제1항에 있어서, 상기 발생 수단에 의해 발생된 문자 패턴을 출력하기 위한 출력 수단(CRT(7), PRT(11))을 더 포함하는 것을 특징으로 하는 문자 처리 장치.
  5. 제4항에 있어서, 상기 출력 수단은 디스플레이를 포함하는 것을 특징으로 하는 문자 처리 장치.
  6. 제4항에 있어서, 상기 출력 수단은 프린터를 포함하는 것을 특징으로 하는 문자 처리 장치.
  7. 문자의 태선화량 또는 세선화량을 지정하는 파라메터를 입력하는 입력 단계; 상기 입력 단계에서 입력된 상기 파라메터에 기초하여, 문자 윤곽을 나타내는 좌표 데이타를 태선화 또는 세선화하는 처리 단계; 상기 태선화 또는 세선화 처리 전후의 문자 프레 임의 크기가 동일하게 유지되도록 상기 처리 단계에서 태선화 또는 세선화된 좌표 데이타를 조정하기 위한 조정 단계; 및 상기 조정 단계에서 조정된 좌표 데이타에 기초하여, 문자 패턴을 발생시키는 발생 단계를 포함하는 문자 처리 방법.
  8. 제7항에 있어서, 상기 처리 단계에서 백터 AB 및 백터 BC - 여기서 B는 태선화 또는 세선화될 좌표 데이타를 나타내고, A 및 C는 좌표 B에 인접한 좌표 데이타를 나타냄 - 에 의해 형성된 각도가 분할되는 방향에서 좌표 데이타를 태선화 또는 세선화하는 것을 특징으로 하는 문자 처리 방법.
  9. 제7항에 있어서, 상기 입력 단계에서 저장된 파라메터는 문자 태선화량 또는 세선화량을 X 및 Y는 방향에서 지정하는 것을 특징으로 하는 문자 처리 방법.
  10. 제7항에 있어서, 상기 발생 단계에서 발생된 문자 패턴을 출력하는 출력 단계를 더 포함하는 것을 특징으로 하는 문자 처리 방법.
  11. 제10항에 있어서, 상기 출력 단계는 디스플레이에 의해 수행되는 것을 특징으로 하는 문자 처리 방법.
  12. 제10항에 있어서, 상기 출력 단계는 프린터에 의해 수행되는 것을 특징으로 하는 문자 처리 방법.
KR1019940033442D 1993-12-09 1994-12-09 문자 발생 장치 및 방법 KR0167618B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP93-309555 1993-12-09
JP93-309556 1993-12-09
JP5309555A JPH07160241A (ja) 1993-12-09 1993-12-09 文字発生装置
JP5309556A JPH07160242A (ja) 1993-12-09 1993-12-09 文字発生装置

Publications (1)

Publication Number Publication Date
KR0167618B1 true KR0167618B1 (ko) 1999-01-15

Family

ID=26565996

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940033442D KR0167618B1 (ko) 1993-12-09 1994-12-09 문자 발생 장치 및 방법

Country Status (8)

Country Link
US (1) US5959634A (ko)
EP (1) EP0657848B1 (ko)
KR (1) KR0167618B1 (ko)
CN (1) CN1098515C (ko)
DE (1) DE69425037T2 (ko)
HK (1) HK1011777A1 (ko)
SG (1) SG55106A1 (ko)
TW (1) TW301731B (ko)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0785524A3 (en) * 1996-01-05 1999-01-13 Texas Instruments Incorporated Printing with dot shape modulation and greyscale
TW421750B (en) * 1997-03-14 2001-02-11 Omron Tateisi Electronics Co Language identification device, language identification method and storage media recorded with program of language identification
JP3576797B2 (ja) * 1997-04-01 2004-10-13 キヤノン株式会社 図形処理装置、図形処理方法、文字処理装置および文字処理方法
KR100239357B1 (ko) * 1997-04-17 2000-01-15 구자홍 영상 표시 장치의 문자 처리 방법 및 장치
US7064757B1 (en) * 1999-05-07 2006-06-20 Apple Computer, Inc. Automatic synthesis of font tables for character layout
US6563502B1 (en) * 1999-08-19 2003-05-13 Adobe Systems Incorporated Device dependent rendering
JP3413383B2 (ja) * 2000-02-17 2003-06-03 株式会社ナムコ ゲームシステム及び情報記憶媒体
US7598955B1 (en) 2000-12-15 2009-10-06 Adobe Systems Incorporated Hinted stem placement on high-resolution pixel grid
US20040040503A1 (en) * 2002-08-29 2004-03-04 Micron Technology, Inc. Micromachines for delivering precursors and gases for film deposition
US7797631B2 (en) * 2002-09-18 2010-09-14 Canon Kabushiki Kaisha Document printing control apparatus and method
KR100497390B1 (ko) * 2003-04-01 2005-06-23 삼성전자주식회사 벡터 폰트 생성방법 및 장치
US7237184B2 (en) * 2003-12-18 2007-06-26 Microsoft Corporation Data property promotion system and method
US7333110B2 (en) * 2004-03-31 2008-02-19 Adobe Systems Incorporated Adjusted stroke rendering
US7639258B1 (en) * 2004-03-31 2009-12-29 Adobe Systems Incorporated Winding order test for digital fonts
US7719536B2 (en) * 2004-03-31 2010-05-18 Adobe Systems Incorporated Glyph adjustment in high resolution raster while rendering
US7602390B2 (en) * 2004-03-31 2009-10-13 Adobe Systems Incorporated Edge detection based stroke adjustment
US7580039B2 (en) * 2004-03-31 2009-08-25 Adobe Systems Incorporated Glyph outline adjustment while rendering
TWI274257B (en) * 2005-03-17 2007-02-21 Arphic Technology Co Ltd Method for generating a bitmap character by scaling strokes of the character
US20080068383A1 (en) * 2006-09-20 2008-03-20 Adobe Systems Incorporated Rendering and encoding glyphs
CN101794566B (zh) * 2010-01-08 2012-08-29 青岛海信移动通信技术股份有限公司 移动终端中确定待显示字符的字模数据的方法及相关装置
US20140354652A1 (en) * 2012-04-27 2014-12-04 Mitsubishi Electric Corporation Character drawing device and character drawing method
WO2014157887A1 (en) * 2013-03-25 2014-10-02 Samsung Electronics Co., Ltd. Display apparatus and method of outputting text thereof
WO2015141260A1 (ja) * 2014-03-17 2015-09-24 株式会社河合楽器製作所 手書き音楽記号認識装置およびプログラム
JP6642964B2 (ja) * 2015-01-05 2020-02-12 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
CN109887197A (zh) * 2018-12-21 2019-06-14 福建新大陆支付技术有限公司 一种基于pos机的矢量字体打印方法及pos机
WO2022212652A1 (en) * 2021-03-31 2022-10-06 Cerini Arielle Nicole Digital penmanship
US20230315216A1 (en) * 2022-03-31 2023-10-05 Rensselaer Polytechnic Institute Digital penmanship

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3275777D1 (en) * 1982-06-01 1987-04-23 Zhang Song Zhi The representation of character images in a compact form for computer storage
JPS61246877A (ja) * 1985-04-25 1986-11-04 Canon Inc 図形変換装置
US5365599A (en) * 1985-10-07 1994-11-15 Canon Kabushiki Kaisha Method and system of converting delineative pattern
JPH0237391A (ja) * 1988-07-27 1990-02-07 Fujitsu Ltd 画像補間方式
US5274365A (en) * 1988-10-26 1993-12-28 Sun Microsystems, Inc. Method and apparatus for minimizing the visual degradation of digital typefaces-character analysis
US4933866A (en) * 1988-11-17 1990-06-12 Vital Lasertype, Inc. Method and apparatus for generating aesthetically alterable character designs
US5475807A (en) * 1988-12-19 1995-12-12 Canon Kabushiki Kaisha Character processing apparatus
JP2907855B2 (ja) * 1989-02-27 1999-06-21 株式会社日立製作所 文字パターン発生装置および文字パターン発生方法
US5050228A (en) * 1989-03-04 1991-09-17 Brother Kogyo Kabushiki Kaisha Apparatus for converting image outline data into dot data representative of image dots
JPH02250189A (ja) * 1989-03-24 1990-10-05 Nippon Joho Kagaku Kk 文字発生方法および装置
US5053246A (en) * 1990-03-30 1991-10-01 The Goodyear Tire & Rubber Company Process for the surface treatment of polymers for reinforcement-to-rubber adhesion
SE464693B (sv) * 1990-04-04 1991-06-03 Haellde Maskiner Ab Matningsanordning vid groensaksskaerare
JP2774662B2 (ja) * 1990-04-04 1998-07-09 キヤノン株式会社 文字処理装置
KR940003701B1 (ko) * 1990-04-25 1994-04-27 샤프 가부시끼가이샤 컴퓨터를 사용한 문자도형 발생방법
JP2755789B2 (ja) * 1990-06-11 1998-05-25 キヤノン株式会社 文字フオントメモリと、該文字フオントメモリを用いた文字パターン発生装置
JPH0493992A (ja) * 1990-08-06 1992-03-26 Fuji Xerox Co Ltd 文字・図形描画装置
JP2909273B2 (ja) * 1991-06-10 1999-06-23 淑郎 大塚 アウトライン・フォントの線幅調整方法および装置
US5301267A (en) * 1991-09-27 1994-04-05 Adobe Systems Incorporated Intelligent font rendering co-processor
DE69222255T2 (de) * 1991-10-11 1998-01-29 Canon Kk Verarbeitungsverfahren für Zeichen oder graphische Daten
JP3164617B2 (ja) * 1991-11-07 2001-05-08 株式会社日立製作所 文字図形変形処理装置および方法
US5280576A (en) * 1991-12-24 1994-01-18 Xerox Corporation Method of adjusting the weight of a character of an outline font
JP3338484B2 (ja) * 1992-09-09 2002-10-28 株式会社リコー アウトラインフォント変形装置
DE59209091D1 (de) * 1992-10-29 1998-02-05 Adobe Systems Inc Verfahren zum Ausgeben von Multitype-Schrift auf hochauflösenden Ausgabegeräten
EP0604685A1 (en) * 1992-12-28 1994-07-06 Océ-Nederland B.V. Method of modifying the fatness of characters
TW363158B (en) * 1993-06-25 1999-07-01 Omron Tateisi Electronics Co A system for automatic adjustment of, character spacing
JPH0816144A (ja) * 1994-06-29 1996-01-19 Fujitsu Ltd アウトラインフォント展開方法およびアウトラインフォント展開装置
US5598520A (en) * 1994-09-26 1997-01-28 Microsoft Corporation Methods and apparatus for hinting a font for controlling stem width as font size and resolution of output device vary
JPH08194459A (ja) * 1995-01-19 1996-07-30 Fujitsu Ltd アウトライン文字描画装置

Also Published As

Publication number Publication date
US5959634A (en) 1999-09-28
DE69425037T2 (de) 2001-03-08
EP0657848B1 (en) 2000-06-28
DE69425037D1 (de) 2000-08-03
EP0657848A2 (en) 1995-06-14
EP0657848A3 (en) 1996-09-18
HK1011777A1 (en) 1999-07-16
CN1121199A (zh) 1996-04-24
CN1098515C (zh) 2003-01-08
TW301731B (ko) 1997-04-01
SG55106A1 (en) 1998-12-21

Similar Documents

Publication Publication Date Title
KR0167618B1 (ko) 문자 발생 장치 및 방법
US5959635A (en) Character pattern generator
JPH0244482A (ja) ラスタ化方法
JP3576611B2 (ja) 文字発生装置ならびに方法
KR970008546B1 (ko) 문자 또는 도형의 처리방법
JP3238580B2 (ja) 太め細め文字生成装置
US5388166A (en) Image drawing apparatus
JPH10143134A (ja) 文字の生成と記憶のための方法と装置
JPH03264995A (ja) 文字処理装置
JPH05232926A (ja) 文字記号発生装置
JP2003162728A (ja) 画像処理装置及び画像出力装置
JPH07160242A (ja) 文字発生装置
JPH07160241A (ja) 文字発生装置
JP3344538B2 (ja) 文字生成装置
JP2899012B2 (ja) 文字処理装置及び方法
JP3376152B2 (ja) 文字発生装置および方法
JPH02266480A (ja) 高品質文字パターン発生方式
JP3025739B2 (ja) 文字パターン発生装置および文字パターン発生方法
JPH09330073A (ja) 文字発生装置および方法
JP2861044B2 (ja) 図形処理装置
JP2001109454A (ja) 文字処理装置
JPH0816145A (ja) 文字処理装置
JPH07186449A (ja) 文字処理装置
JPH04218094A (ja) アウトラインフォント処理装置
JP2002207476A (ja) 画像処理装置及びその方法