布局调整方法和装置的制作方法

文档序号:6512836阅读:202来源:国知局
专利名称:布局调整方法和装置的制作方法
技术领域
本发明涉及用于由文本和图像构成的文档的生成、编辑及打印的技术,更具体地说,适于可变数据文档的生成、编辑及打印。
背景技术
近年,由于商品的多样化,商品寿命变短,随着互联网的普及,利用它的消费者的客户服务指向增强等原因,所以,CRM(CustomerRelationship Management客户关系管理)、一对一营销的必要性就受到关注。这些方法目的在于,提高客户满意程度,开发、稳定客户。
一对一营销是数据库营销的一种,把客户的年龄、性别、兴趣、爱好、购买经历等个人属性信息做成数据库,分析其内容,提出符合客户需求的建议,作为典型的手法,例如有可变打印。最近,随着DTP(desktop publishing桌面出版系统)技术的进展和数字打印装置的普及,开发有对每个客户定制文档并输出的可变打印系统,在这种可变打印系统中,要求生成对每个客户不同的量的内容进行最佳布局的定制文档。
一般地,在可变打印系统中生成这样的定制文档时,在文档上对容器进行布局。容器是用于描画内容(描画内容)的局部区域,也称作字段区。即,通过对数据库和布局建立关联(对数据库的各内容和各容器建立关联)这样的作业,生成定制文档(文档)。在本说明书中,将这样的文档称作可变数据文档。
在这样的可变打印系统中,能够将因顾客而不同的内容插入已进行了布局的各容器中。因此,当插入到内容中的数据的尺寸可变,而与之相对应容器的尺寸固定时,就产生以下的问题。例如,当插入比容器的尺寸大的尺寸的文本数据时,无法将所有文本显示在该容器内。或者,当插入比容器的尺寸大的尺寸的图像数据时,该图像的一部分就会缺失。将这样的问题称作溢出。
另外,当内容是图像数据时,还要考虑缩小该图像,描画在容器内,但有可能产生图像极小的弊端。此外,还公开了以下技术可以在插入无法完全进入固定尺寸的容器内的文本数据时,缩小文本的字体尺寸,在该容器内显示所有文本。但还会产生以下问题,当这样地调节字体尺寸时,字体尺寸变得过小,从而造成文档整体的平衡破坏,或变得难以阅读。
作为用于解决这样的问题的自动布局的技术,在日本特开平7-129658号公报的“布局设计装置”中公开了以下技术当某容器的尺寸增大时,为了保持与相邻的容器的间隔,而减小该相邻的容器的尺寸。
但是,在上述特日本特开平7-129658号公报中,相邻的容器的间隔被固定。另外,在本说明书中,将相邻的容器之间的关联称作链接,将该相邻的容器之间的间隔(距离)称作链接长度。像日本特开平7-129658号公报那样,当在容器和容器之间设置链接并将该链接的长度固定的情况下,在要放大双方的容器使之变为最佳尺寸时,有可能因在容器之间设置的固定长度的链接的长度,而造成容器不是理想的尺寸。当为了将各容器设置成与所插入的数据量对应的最佳尺寸而放大链接时,要除去容器相互重复这样的弊端。但是,由于该链接的长度固定,所以,例如,即使在设定链接的容器A和容器B中,为了变为最佳尺寸而要放大它们时,链接的长度的量必需在容器A、B之间。因此,由与存储容器A、B的页面的区域的大小的关联,在某种程度上阻止容器A、B的扩大。
此外,相反地,由于当进入各容器A、B的数据量少时,由固定尺寸的链接,容器A、容器B的距离唯一确定,所以,有时容器A、B的缩小受到限定,容器的尺寸增大到必要以上。即,无法将容器的尺寸最优化,例如,当在图像等中保持比率时,有时会意外地被放大。此外,还会产生以下问题例如,当插入比容器的尺寸小的尺寸的文本(字符数比预想的少)时,在比容器的区域小的区域配置字符,在容器中产生间隙,布局的外观变差。
如上所述,用户优先使各容器为最佳尺寸,有时会期待容器之间的链接的长度在某种程度上缩小或放大的自动布局。但是,在链接长度被固定的上述现有技术中,无法实现这样的自动布局。

发明内容
本发明正是鉴于上述问题而完成的,其目的在于通过可以灵活地变更用于显示基于所分配的数据的图像的局部区域(容器)之间的距离(链接长度),实现按照该偶尔插入的数据量使各局部区域的尺寸变得恰当的自动布局调整。
通过本发明的一种形式,提供以下的布局调整方法。即,一种布局调整方法,确定页面的布局,其特征在于,包括局部区域设定步骤,设定插入数据的局部区域的尺寸和位置的基本图形;基本布局步骤,在页面内布置在上述局部区域设定步骤设定的多个局部区域,确定基本布局;链接设定步骤,对链接设定由上述局部区域设定步骤所设定的多个局部区域之间的距离的可变范围;计算步骤,从在上述局部区域设定步骤设定的局部区域的大小和插入该局部区域的数据,对每个局部区域计算适于描画该所插入的数据的尺寸;以及调整步骤,基于在上述计算步骤计算出的各局部区域的尺寸和在上述基本布局步骤确定的基本布局,在上述链接设定步骤设定的可变范围内,变更各局部区域之间的距离,调整页面内的布局。
此外,通过本发明的其它形式,提供以下的布局调整装置。
即,一种布局调整装置,确定页面的布局,其特征在于,包括局部区域设定单元,设定插入数据的局部区域的尺寸和位置的基本图形;基本布局单元,在页面内布置在上述局部区域设定单元设定的多个局部区域,确定基本布局;链接设定单元,对链接设定由上述局部区域设定单元所设定的多个局部区域之间的距离的可变范围;计算单元,从在上述局部区域设定单元设定的局部区域的大小和插入该局部区域的数据,对每个局部区域计算适于描画该所插入的数据的尺寸;以及调整单元,基于在上述计算单元计算出的各局部区域的尺寸和在上述基本布局单元确定的基本布局,在上述链接设定单元设定的可变范围内,变更各局部区域之间的距离,调整页面内的布局。
通过本发明,因为可以灵活地变更用于显示基于所分配的数据的图像的局部区域(容器)之间的距离(链接长度),所以,能够实现按照该偶尔插入的数据量使各局部区域的尺寸变得恰当的自动布局调整。
本发明的其他特征和优点,可以通过下面的参照附图进行的说明而得到明确。相同的标号表示相同或类似的部分。


附图包括在说明书中并结构说明书的一部分,用于说明本发明的实施例,并与说明书一起用于说明本发明的原理。
图1是表示实施例的可变打印系统的结构的图。
图2是表示图1的主计算机的结构的概略的图。
图3是说明可变数据打印的概要的图。
图4是表示实施例的可变打印系统的其它结构的图。
图5是表示包括菜单栏、工具栏、工作区、选项托板的实施例的用户界面的例子的图。
图6是表示用户界面上的容器的显示例的图。
图7A~7D是说明实施例的容器规则的图。
图8是说明实施例的链接的生成处理的流程图。
图9A~9C是表示生成链接时的用户界面的变动例的图。
图10是表示通过可变链接配置容器时的用户界面的显示例的图。
图11是表示实施例的链接的设定对话窗口的图。
图12是说明用于通过实施例的用户界面设定可变链接的处理的流程图。
图13是表示基于实施例的布局引擎的布局计算处理的流程图。
图14是表示基于实施例的布局引擎的布局计算处理的流程图。
图15是说明实施例的布局计算时的容器的集合的图。
图16A~16C是用于说明实施例的布局计算的图。
图17是说明实施例的布局计算处理的细节的流程图。
图18A~18C是用于说明实施例的布局计算处理的19是表示基于固定链接的布局结果例的图。
图20是表示基于可变链接的布局结果例的图。
图21是表示基于实施例的可变链接工具的容器配置的图。
具体实施例方式
下面,参照附图详细说明本发明的实施例。
<系统结构>
首先,参照图1和图2说明本实施例的可变打印系统的结构。图1是表示用于打印可变数据文档的可变打印系统100的结构例的框图。此外,图2是更详细地表示图1所示的主计算机101的结构的框图。在本实施例中说明的可变打印处理,由作为布局调整装置的主计算机101(由通用计算机模块构成)执行。可以在系统100上实施的布局编辑应用程序121(本发明的布局调整程序),在主计算机101中,执行该软件的整体或一部分。特别是用于布局编辑的处理和用于打印可变数据文档的处理,通过由主计算机101执行的软件来实现。
布局编辑应用程序121存储在计算机的可读介质中,从该计算机的可读介质加载到主计算机101的存储器136中并执行。存储了这样的软件和计算机程序的计算机的可读介质是计算机程序产品。通过在计算机中使用该计算机程序产品,能够提供适于文档的布局编辑和可变打印的装置。
如图2所示,在主计算机101上通过输入输出接口143,将键盘132、鼠标133那样的指示设备等作为输入装置连接。此外,通过视频接口137连接作为输出装置的显示装置144。还能通过输入输出接口138连接本地打印机145。此外,输入输出接口138还具有将主计算机101连接到网络107上的功能。据此,可以通过网络将主计算机101连接在系统100内的其它计算机装置上。作为网络107的典型的例子,能够列举局域网(LAN)或广域网(WAN)。
此外,如图2所示,主计算机101至少包含一个处理器135、由例如半导体随机存储器(RAM)和只读存储器(ROM)构成的存储单元136。存储设备139包括可以在与存储程序等的计算机可读介质之间交换数据的硬盘驱动器140和floppy(注册商标)盘驱动器141。另外,虽然未在图2显示,但还可以将磁带驱动器等作为存储设备139使用。CD-ROM驱动器142,可以作为非易失性的数据源来提供(当然,还可以通过CD-ROM提供计算机程序)。
主计算机101以遵从GNU/LINUX或microsoft windows(注册商标)那样的操作系统的形式,或者通过基于在相关技术中已知的计算机系统的常规操作模式的方法,通过相互连接的总线134,从进行通信的计算机模块的组件135使用143。即,由上述135~143表示的各结构,通过总线134可通信地连接起来,并由安装在主计算机101中的操作系统利用。
另外,作为图2所示的主计算机101的例子,可以考虑IBM兼容PC,SUN的Sparcstation,或包括它们的计算机系统。
<布局编辑应用程序的概要>
在本实施例中,布局编辑应用程序121常驻在硬盘驱动器140中,由处理器135控制执行和读入。在布局编辑应用程序121的程序和从网络107取得的数据存储中,使用硬盘驱动器140和半导体存储器136。
在一个例子中,布局编辑应用程序121的已编码的程序,存储在CD-ROM或floppy(注册商标)盘上,通过相应的驱动器142、141读入,并安装到硬盘驱动器140上。或者,作为其它例子,布局编辑应用程序121,可以从网络107读入主计算机101内,并安装到硬盘驱动器140上。软件还可以使用磁带、ROM、集成电路、光磁盘、在主计算机101和其他设备之间的红外线等的无线通信、PMCIA卡那样的计算机可读卡、或者与包括因特网或企业内部互联网的WEB站点上的其它的适当的计算机的电子邮件通信,加载到主计算机101内。这些是计算机可读介质的例子,当然,还可以使用其它的计算机可读介质。
在图1中,本实施例的布局编辑应用程序121,使计算机进行可变打印(也叫做可变数据打印(VDP)),包含2个软件组件,即,布局引擎105和用户界面103。布局引擎105是按照提供给作为局部区域的容器(矩形的范围)的尺寸和位置的限制,从存储在数据库119中的可变数据中,逐个地读入记录,从所读入的数据和容器的限制,计算插入所读入的数据的容器的大小和位置等的软件组件。此外,在本实施例中,布局引擎105还进行描画分配给容器的数据,生成可变数据文档的图像的处理。但本发明不限于此,布局引擎105还可以作为确定各局部区域(容器)的尺寸和位置的应用程序而工作,通过向省略图示的打印机驱动程序(printer driver)输出描画信息,打印机驱动程序进行可变数据文档的图像描画处理,生成打印数据。用户界面103,可以进行基于用户的容器的布局和属性设定,使用户生成文档模板。此外,用户界面103提供对文档模板内的各容器和数据源建立关联的机构(mechanism)。用户界面103和布局引擎105通过信道123通信。
图3是说明本实施例的可变数据打印的概略的图。通过布局编辑应用程序121的用户界面模块103(以下,称作用户界面103),按照来自用户的操作指示,在页面上配置多个容器181~183,通过对各容器添加关于位置和尺寸的限定条件,生成文档模板180。此外,用户界面103,进行文档模板180和数据源190的关联、各容器和数据源190内的各数据字段的关联。表示各容器和数据源190内的各数据字段的关联的关联信息,被记述在文档模板内,该文档模板被存储在HDD140中。此外,数据源190是以记录单位记载项目数据的文件,被存储在HDD140中。布局引擎模块105,按照来自用户的打印指示或预览指示,从数据源190将以关联信息建立关联的数据读入文档模板的各容器181~183中,以记录单位插入(例如,将数据记录1的数据字段A~C插入容器181~183),按照所插入的数据,调整各容器的尺寸等(布局调整)。当是预览指示时,生成进行了布局调整的文档图像,为了在视频显示器144的画面上显示预览而输出。此外,当是打印指示时,将用布局引擎105或打印机驱动程序生成的文档图像作为打印数据向打印服务器109输出。通过依次处理数据记录1、2、3...,实现可变数据打印。
用于文档生成的数据源(190),例如,还可以是由运行数据库应用程序的其它计算机构成的数据库服务器117上的一般的数据库119。这时,主计算机101可以通过网络107与数据库服务器117通信,取得数据源。此外,由布局编辑应用程序121生成的、用于可变数据打印的文档模板(180),保存在主计算机101或由其他计算机构成的文件服务器115上。如图3所示,布局编辑应用程序121的布局引擎105,生成由与数据合并了的文档模板构成的可变数据文档。这些文档,保存在主计算机101的本地文件系统中,或保存在文件服务器115上,或被发送给打印机113打印。打印服务器109是用于向不与网络直接连接的打印机提供网络功能的计算机。打印服务器109和打印机113通过一般的通信信道111连接。
<其它的系统结构例>
图4是与图1类似的框图,但追加了引擎服务器227。存储在引擎服务器227中的布局引擎225是布局引擎105的分离形式(version)。对引擎服务器227使用一般的计算机。布局引擎225,为了根据打印或其它目的生成可变数据文档,而将保存在文件服务器115中的文档模板和保存在数据库119中的数据结合起来。这样的操作通过用户界面103来请求。
<布局编辑应用程序的说明>
下面,说明布局编辑应用程序121。

用户界面103,在视频显示器144上显示在操作时由图5所示的应用程序窗口301形成的用户界面画面。该窗口301具有菜单栏302、工具栏303、工作区306和选项托板311。菜单栏302、工具栏303可以不显示,或移动到屏幕上的各种地方。此外,工作区306可以通过鼠标133的操作使该地方移动。此外,托板311是选项,光标/指示设备313表示鼠标133指示的位置。
菜单栏302,如公开的技术那样,具有在菜单选项的分级下扩展的多个菜单项304。
工具栏303具有可以通过应用程序的特别模式变成不显示状态,或变成显示状态的多个工具按钮和访问305。
标尺308是选项,用于显示工作区内的指针、页面、行、边距引导、容器或对象的位置。
托板311用于访问可变数据库那样的追加功能。托板311具有用于进行移动、尺寸调整、关闭的窗口控制312。托板311,可根据选项显示在工作区的前面,或隐藏在对象的背面。托板311被限制为只能在应用程序窗口301的范围内显示,或允许在应用程序窗口301的外侧显示其一部分或整体。
在工具栏303上配置有图6所示的可由用户选择的“按钮”。
(1)选择工具按钮403用于进行容器的边的选择、移动、尺寸变更、尺寸调整以及锁住/解锁。容器的选择,通过在容器的周围拖动选择框来进行。此外,可以通过一边按住CTRL键,一边对多个容器进行选择操作,来选择多个容器。
(2)文本容器工具按钮404用于生成具有静态或可变文本的容器。
(3)图像容器工具按钮405用于生成具有静态或可变图像的容器。
(4)链接工具按钮406用于生成在容器之间进行关联的链接,还用于控制链接的距离。
布局编辑应用程序121的如图5所示的应用程序窗口301,通过在页面内布置各容器和链接,可以确定基本布局。所谓基本布局,就是在可变数据打印中成为基本的布局。当基本布局内的所有容器为固定容器时,所有记录的打印结果的布局相同。此外,当基本布局内的各容器为后述的可变容器时,根据读入记录单位的数据量和尺寸,在后述的限定的范围内变动各容器的尺寸和位置。因此,由布局编辑应用程序121生成的文档模板,最终只确定基本布局,当包括可变容器时,最终的打印品的布局,根据所读入的数据进行布局调整。
在图5中,工作区306用于显示和编辑文档模板(180基本布局)的设计。它可以在用户设计文档模板的过程中,向用户提示要打印的文档的概貌。由此,用户能够容易地理解与数据源(190)合并了的文档,怎样基于可变数据的量和尺寸而变化。
此外,当数据源与文档模板建立了关联时,为了能够进行当前文档的预览,而显示在布置了相应的可变文本和图像的各容器上。
进行文档模板中的文档构造和可变数据容器的描写的视觉上的线索(容器的框线、锚点、滚动条、链接等),总是在生成文档模板时显示,当进行插入可变数据的预览时,视觉上的线索,在使光标移动到容器上时,和选择了容器时显示。
工作区306包含滚动条307、选项的标尺308和文档模板309。文档模板309可以表示有多个页面。此外,文档模板309表示图3的文档模板180。
所给出的文档模板的页面尺寸,用公开的技术,由用户指定。例如,通过从菜单的“文件”选择“页面设定”,显示设定页面尺寸的对话框,在那里反映用户指定的页面尺寸。各文档中的实际的页面数,有可能根据建立了关联的数据源内的可变数据而变化。这是因为,当在文档模板内像可变表那样设定根据可变数据的量而变更大小的字段的情况下,当读入无法使可变数据适合在1页面内的可变数据时,自动生成追加的页面。
在各页面内显示的边界线310,是表示页面上的可打印的对象的最大宽度的任意的页面边距。
图6是表示能在1页面的文档模板309上显示的对象的例子的图。作为这样的对象,具有容器407、408,任意使用的锚点图标409,固定的边411、414、未固定的边410、链接412以及滚动条413。锚点图标409可以设定在容器的矩形的角、边、或容器的中央。当设定锚点图标409时,所设定的地方的位置固定。即,在图6的例子中,锚点图标409,表示由于被设定在容器407的左上角,所以,当容器407插入可变数据,可变数据的图像尺寸或文本量多时,可以向右和向下放大。当锚点图标409被设定在边上时,可以固定该边,而向其余3个边的各方向放大。此外,当锚点图标409被设定在容器的中央时,可以固定容器的中央位置,向4个方向放大,使得容器矩形的中央位置不变。链接412将在后面详细描述,表示容器407和容器408建立了关联,表示在保持对该链接设定的长度(可指定范围)的同时,容器408能向右移动。滚动条413表示能向与所设定的边平行的方向移动。
这里,说明容器。容器是将固定或可变的文本/图像从可变数据文件插入文档模板内并描画的空间(将其称作局部区域),如图6所示,与其它容器和对象一起布局。通过用户界面画面,按照来自用户的操作指示,通过鼠标133的操作,对容器进行移动、尺寸调整和再生成。
更正确地说,容器具有设定的集合、视觉上的表现、相互作用和编辑动作。以下是对本实施例的容器的定义。
(1)容器具有固定或可变的内容。可变内容是指,从数据源取得的数据有可能在各文档即各记录上不同,可以说是动态的。但是,本实施例的可变内容,因为动画的内容或以其它方法按时间变化的内容不适合打印,所以,不在此阐述。同样,固定内容在使用容器而生成的所有文档中,相同地表示。但是,当设定可变内容和链接时,受可变内容的影响,固定内容有可能在各文档中位置不同。
(2)容器具有用于内容的背景色、边界、字体风格那样的与文本设定相同的装饰功能。将这样的设定称作容器属性。容器属性能对每个容器设定,也可以进行是与某容器相同的容器属性的设定。
(3)容器在生成文档时与来自数据源的数据合并。装饰功能在所打印的输出品中是可视的,使得在任何固定内容中都是如此。可变内容提供来自数据源的特定数据的显示。容器的该表现,可以是例如打印,或在视频显示器144的屏幕上显示,或两者都进行。
(4)容器如图6所示,具有作为视觉上的线索的用户界面。例如,具有用于容器的编辑和显示设定的人机对话(interactive)的图形用户界面(GUI)。GUI的各要素显示在视频显示器144的屏幕上,但不作为文档打印。布局编辑应用程序121的用户界面103,显示背景色和字体那样的容器的若干装饰功能,还具有用于使容器的设定的编辑和显示成为可能的功能。
容器具有关于如何连接在各文档中表示的内容的控制的限定。这些限定(包括将固定/可变内容与容器结合起来),是用户从一个文档模板控制多个文档的主要方法。限定的一个例子是“该容器的内容高度为最大4英寸”。此外,另一个限定的例子是“容器的内容的左边距,在各文档中必需在相同的水平位置表示”。在此所述的内容,是用于用GUI显示、编辑这样的限定的各种方法。
在数字打印技术中,已知指定固定内容的配置,使得图像具有定义在页面上的地方的内容占位符。容器具有位置和尺寸,以在公开的技术中已知的方法编辑、显示它们。因此,在以下的说明中,将焦点对准在可变数据打印方面特殊化的方法中的显示和编辑。
通过使用容器,用户能够指定文档的内容的尺寸(描画尺寸)和位置。因为可以从一个文档模板生成多种文档,所以,对容器设定多个可能性和限定,但是,为了这些设定(指定)和显示而使用预定的用户界面。
一个容器的边,定义关联的内容在文档内显示的虚拟的边界线。因此,提到容器的左边,与提到能在各文档中显示关联的内容的区域内的最左的边是相同的。同样,提到容器的高度,可以理解为提到在所生成的文档中关联的内容的高度的限定。在本说明书中,只要参照用户界面103提到容器的边或大小,该区别就会变得清楚。
在以下的记载中,定义用于限制内容的显示的某值的用语“固定”,在所有文档中都是相同的。
(1)当容器的宽度固定时,分配给关联的内容的宽度在所有文档中都相同。
(2)当容器的高度固定时,分配给关联的内容的高度在所有文档中都相同。
(3)当距离(链接的长度)固定时,所指定的距离为所有文档的限定。
(4)当容器的左右边固定时,意味着关于页面的边的水平位置在所有文档中都相同。但是,容器的高度或垂直方向的位置有可能变化。例如,当容器的左边固定时,关联的内容的显示位置,在所有文档中其左边的位置为相同的水平位置,但有可能在某文档中显示在页面的上方,而在其它文档中则显示在页面的下方。
(5)当容器的上下边固定时,意味着页面的边的垂直位置在所有文档中都相同。但是,容器的宽度或水平位置有可能根据文档变化。
(6)容器的垂直轴与容器的右边和左边平行,是位于其中间的虚拟的垂直线。如果容器的垂直轴固定,则该容器的左右边的水平位置的平均(即,左右的中央位置)在所有文档中都相同。在该限定下,容器的宽度有可能变化。但是,左右边有可能离垂直轴最远,也有可能离垂直轴最近,垂直轴在所有文档中都是相同的水平位置。另外,容器的高度和垂直位置不受该限定的影响。
(7)同样地,如果水平轴固定,则容器的上边和下边的平均被配置在同一垂直方向位置。但是,容器的宽度和水平位置不受该限定的影响。
(8)当水平轴和垂直轴均固定时,意味着容器的中心位置被固定。但是,容器的宽度和高度不受该限定的影响。
(9)当容器的角位置、容器的边的中间位置、或容器的中心位置固定时,各位置在所有文档中都为相同的地方。例如,如果容器的左上角固定,则意味着所配置的容器的左上位置在所有文档中都相同。
(10)垂直边或垂直轴,可以与页面的左边或右边、或左页面边距或右页面边距、或其它水平位置建立关联并固定。同样地,水平边或水平轴,可以与页面的上边或下边、或上下页面边距、或其它垂直位置建立关联并固定。
“固定”的反意词是意味着容器的边、轴、角、中间位置或文档限定可能在文档间(记录间)变化的“可变”。例如,在页面内,希望根据可变数据的尺寸和量,动态地改变布局,但是,对于特定的容器,有时希望固定大小和位置,或固定页面的角的容器的四角。因此,在本布局编辑应用程序121中,对于各容器(局部显示区域),能够适当地设定是固定边、轴、角和中间位置还是使其可变。由此,当用户确定文档模板180的基本布局时,能够如用户所希望地生成基本布局。
(新容器的生成方法)容器有文本容器和图像容器2种。文本容器具有文本和嵌入的图像。图像容器只具有图像。
如图6所示,新文本容器和图像容器,通过用鼠标133点击文本容器工具404或图像容器工具405,并在文档模板309上拖动四边形,在该文档模板309上生成。
或者,还可以在激活适当的工具404、405后,通过在文档模板309上点击来生成容器。这时,按照鼠标133的点击操作,在模板上插入默认尺寸的容器,并且,提供用于设定该新容器的尺寸等的对话框或其它提示。另外,容器的尺寸可以自动地提前定义,或者考虑由计算出的分离器(skimmer)生成和配置等各种方法。用鼠标等输入单元选择在此生成的容器,通过用右击进行指示属性等的操作,能够显示容器的属性对话框,设定容器的限定。在容器的属性对话UI(相当于局部区域设定单元)中,能够设定上述各种限定。此外,在容器的属性对话框中,能够确定容器的尺寸(宽度、高度)和位置,当为可变尺寸时,设定容器的基本图形(基本尺寸和基准位置),还能够设定最大容器尺寸(宽度、高度)和最小容器尺寸(宽度、高度)。
图7A~图7D举例说明关于容器的边的显示规则。
布局编辑应用程序121,为了表现容器的边的状态,用实线(503)或虚线(504)表示边,并且,使用锚点(由在边的附近描画的506、507、509所示的线、形状、图标)、把手(为了进行移动、修改,在区域的边上或附近描画的控制点502)、滚动条(在边的两侧描画的短平行线,图6的413)、放大缩小图标(505)以及颜色。
图7A~图7D所示的容器显示方法的规则如下所述。
(1)边的固定,用实线描画。
(2)宽度固定时,用实线描画左边和右边。
(3)高度固定时,用实线描画上边和下边。
(4)不描画轴。
(5)在尚未由(1)~(3)描画的各边的附近描画放大缩小图标,以虚线描画这些边。
(6)在垂直边和水平边,或垂直轴和水平轴的各线对中,如果两者固定,则在其相交点描画锚点。
(7)在各固定边上,如果在边的任意位置都未描画锚点,则在边的中央描画滚动条。
(8)在垂直边和水平边,或垂直轴和水平轴的各线对中,当未描画锚点和滚动条时,在其相交点描画把手。
由规则(1)、(2)、(3)定义的线,如上所述,因被固定或被限制而用实线描画。像规则(5)那样,可变的边以虚线描画。由规则(6)、(7)、(8)定义的固定的点表示锚点,几个固定的边表示滚动条,其它表示把手。
由用户后来所设定的限定优先于上述规则。即,当以后设定其它限定时,如果上述规则影响要描画的边,则实线和虚线的描画内容发生变更。
描画可变的边的地方依存于容器的内容。如后所述,在文档模板中合并内容,使用意味着在用户界面上为可视的“动态校正处理”。作为替代的执行,可以使用以下的方法在所有文档中被平均化的容器的内容区,或在用户界面上,确定可变的边要在哪里进行布局。
这些内容表现,提供表示容器的各边的状态的图解(graphical)的单元。该表现的解释如下所述。
(1)如图6的边410那样,虚线意味着依存于容器的内容,文档内的边的位置发生变化。
(2)实线意味着是为了固定(边414)、或固定容器的宽度和高度(在容器408中4个边是实线,并固定双方)而被限制的边。
(3)锚点意味着边和轴交叉的地方固定。因此,锚点出现在所有文档的水平、垂直位置。锚点当然固定。图6的图标409是意味着边414的交叉位置固定的锚点图标的例子。
(4)滚动条意味着关联的边的长度固定,但有可能平行移动。例如,在图6中,滚动条413表示容器408的内容在文档内显示在以特定的图表表示的位置的左或右。例如,当插入与容器408建立关联(链接设定)的容器407的数据的图像尺寸或文本量少时,由于容器407的尺寸变少,所以,容器408向左滑动(平行移动),布置,显示。此外,当容器407的尺寸变大时,相反地,容器408向右滑动,布置。
这些图标和边的几个或全部,根据对哪个工具、哪个容器进行选择、加亮或激活,描画或不描画。一般地,容器的边和图标是文档模板的设计的助手,所以,在打印品中不描画。
另外,如上所述,容器的宽度和高度的基本值、最小值、最大值的基本图形的设定,显示在附属对话窗口上。
在图7A中,容器501的宽度和高度均不固定(可变)。固定的边503以实线表现,可变的边504以虚线表现。放大缩小图标505表示相邻的边504可变。可以代替或追加地使用其它形式的指示器(indicator)。
在图7B中,容器501的宽度和高度均可变。锚点图标506,为了明确地表示交叉的双方的边503的角的位置固定。
在图7C中,容器501的容器的宽度和高度均可变,表示平等地扩展以锚点图标507显示的中心点的周围的状态。即,容器501能够以锚点图标507为中心放大或缩小。这里的放大/缩小进行布局调整,使得锚点图标507的位置总是容器501的中心点。
在图7D中,容器501的上边508固定,但宽度和高度均可变。位于上边508的中心显示的锚点图标509固定。而且,容器501的左边和右边,在通过锚点图标509垂直的中心轴(垂直轴)周围放大、缩小。
下面,说明用于在容器之间建立关联的链接的设定。图8是表示链接的设定方法的流程图。此外,图9A~图9C表示设定链接时的用户界面(UI)的变迁例。用图8、图9A~图9C说明对容器设定链接的方法。
首先,在步骤S601中,布局编辑应用程序121表示为了在用户界面画面的工作区306上进行编辑而选择出的文档模板。为了设定链接,用于设定链接的容器(最少2个)必需在文档模板上生成。在图9A~图9C表示在步骤S601生成2个容器并设定链接时的用户界面的变迁例。
接着,在步骤S602,布局编辑应用程序121,判断上述链接工具是否为选择状态(通过点击图6的按钮406,成为选择状态)。如果链接工具不是选择状态,则根据需要执行其它的各种处理(步骤S609),回到步骤S602。
在图9A中,设容器601和602全部由固定的边构成。此外,603和604与图6的409相同,意味着锚点。605意味着鼠标指针。那么,在链接工具按钮406为选择状态期间,用户点击设定链接的2个容器中的一个(称为容器601)来选择。按照该操作,布局编辑应用程序121的用户界面103,识别出指定了第1容器(步骤S603),保持特别指定所选择的容器的信息。此外,在画面上显示与以后的鼠标光标的移动对应的轨迹(步骤S604)。例如,图9B的线段606,表示连接图9A的状态下的点击位置和当前的鼠标光标的位置的线,可以通过该UI向用户明确表示在哪个位置设定链接。
接着,如图9B所示,用户将鼠标指针移动到另一个容器(容器602)并点击。按照该操作,用户界面103识别出指定了第2容器(步骤S605),布局编辑应用程序121,在步骤S604中保持的第1容器,和在步骤S605中识别出指定的第2容器之间设定链接(步骤S606)。
这样,在由用户选择出的两个容器601、602之间设定链接时,显示链接UI1607(步骤S607)。进而,接受该链接的设定,容器的显示状态成为图9C的状态(步骤S608)。即,通过设定链接,自动地变更容器的UI。这里,由链接建立了关联的边为可变,以虚线表示。在图9C中,608是以虚线表示的边,表示上述可变的边。
另外,像图9C那样的容器的边的状态的变化,因为由设定链接产生了使容器的边可变的必要而自动地执行,其目的在于,防止发生尽管设定了链接但所有的边却是固定的这样的矛盾。此外,609与图7A~图7D的505相同,是通过设定链接,向用户在视觉上显示容器能够发生变化的方向的标记。此外,在图9C的例子中,左边的容器的右边和右边的容器的左边变为可变的状态,但这是一个例子,例如,右容器可以变化为具有图6的413所示的滚动条的设定。
图10表示用于设定可变链接的用户界面。与图6相同,具有应用程序窗口301和工具栏303。在图10的状态下,在文档模板309上存在容器1203和容器1204。各容器包括锚点图标1201、锚点图标1202和固定的边1205、1206、1212、1213。在容器1203和1204之间具有可变尺寸的链接1209,连接着容器1203和容器1204。因为在容器1203和容器1204之间设定有链接,所以,各自的右边1207和左边1208以虚线表现。因此,在各容器上显示指示器1210、指示器1211,分别表示边1207和边1208可变。
此外,图11是作为本申请的特征性结构的链接设定单元中的用户界面画面,是用于设定链接1209的信息的对话窗口701的例子。该对话窗口由标题栏702、工具按钮703、进行对话窗口的开关的按钮704、设定各种信息的区域709构成。在该对话窗口中,可以进行链接类型是可变长度(707)的链接,或是固定长度(706)的链接的择一地选择。当链接类型是可变长度时,可以设定链接长度的最小值(Min.Distance710)、最大值(Max.Distance712)以及基准值(Distance711)。图11的对话窗口701,例如,当通过在图8、图9说明的链接的设定操作在2个容器之间设定了链接之后,在通过点击等操作选择设定的链接时显示。或者,也可以在设定了链接之后,立即自动显示关于该链接的对话窗口701。这里,各容器之间的距离的基准值711,是在插入数据时各容器的尺寸不变更的情况下使用的链接的长度。
图12是说明基于本实施例的用户界面103的可变链接的设定顺序的流程图。例如,当在图15的容器A和容器B之间以在图8、图9说明的顺序设定链接时,首先设定固定尺寸的链接。然后,能够通过选择该链接执行图12所示的处理,使该链接从固定尺寸的链接1506(图15)的状态向可变尺寸的链接1209(图10)转移。
首先,用鼠标将所需要的链接(例如,链接1506)设置成选择状态,当进行用于使之显示链接属性的预定的操作时,布局编辑应用程序121的用户界面103,识别成链接属性的显示指示的输入(步骤S801)。用户界面103,当识别链接属性的显示指示时,显示与选择状态的链接(以下,称作链接对象)对应的属性对话窗口701(图11),并显示链接属性(步骤S802)。另外,作为链接的选择操作,与设定容器的基本图形时相同,也可以是鼠标的右击或键盘的特定键的操作等的任意一个。
在步骤S802显示的对话窗口701上显示所选择的链接的当前的状态。在本例子中,因为选择了链接1506,所以,在该阶段链接尺寸固定,在Link Type705中,选择表示固定长度的Fixed Length706。
为了在该对话窗口701中将链接从固定尺寸变更为可变尺寸,选择用于在Link Type705中将链接尺寸设定为可变的Flexible Length707。由此,被配置在Link Distance708内的Max.Distance712、Min.Distance710、Distance711变为有效,并可以进行数值的设定。用户为了设定链接的可变尺寸,在Max.Distance712中设定该链接长度的最大值,在Min.Distance710中设定最小值,在Distance711中设定当前的值。
当结束设定时,用户通过一般的对话窗口开关按钮704指示该设定的使用。用户界面103,当检测该指示时,使处理从步骤S803进入步骤S804以后,使该对象链接反映上述设定状态。
即,首先,在步骤S804,布局编辑应用程序121判定对象链接是固定尺寸还是可变尺寸。如果指定固定尺寸,则进入步骤S808,将对象链接设定为“固定尺寸”,在步骤S807,设对象链接的显示状态为表示“固定链接”的“实线”。
另一方面,在步骤S804,如果指定可变尺寸,则进入步骤S8085,布局编辑应用程序121,将对象链接设定为“可变尺寸”。然后,在步骤S806,注册由上述对话窗口701设定的对象链接的当前值(基准值)、最大值、最小值。然后,在步骤S807,设对象链接的显示状态为表示“可变链接”的“虚线”。结果,链接的UI显示变化为图10的链接1209所示的状态。以上的对话窗口701的设定信息被存储在存储器中。
另外,还可以在Distance711中设定的当前的值中,将作为当前的布局配置的容器之间的距离作为默认值自动地输入。
以上,说明了基于用户界面103的文档模板的布局编辑。以下,说明将数据源插入各容器时的、与数据尺寸(描画尺寸)对应的容器布局的调整处理。
<基于布局引擎的布局计算处理> 本实施例的布局编辑应用程序,分为使用用户界面103生成容器,在该容器之间进行关联(链接设定),并生成布局的布局模式;通过布局引擎105,将数据源的各记录插入所生成的布局,并预览实际插入了记录之后的布局结果的预览模式。在该预览模式中,插入实际的记录,按照上述优先级计算布局。但是,预览模式是显示上的布局计算。在实际打印时,布局引擎105也向各容器插入数据并计算布局,并且,此时的计算方法与预览模式相同。
图13表示布局计算的流程。首先,选择预览模式(S1001)。如果是预览模式,则布局编辑应用程序121,使用户从数据源选择预览的记录,确定将所选择的记录的各字段数据插入各容器(步骤S1002)。当确定向各容器插入字段数据时,布局编辑应用程序121,进行用于对该记录进行布局的计算,并根据需要进行布局调整(步骤S1003)。步骤S1003中的布局计算的细节,将在后面描述。并且,布局编辑应用程序121,显示在步骤S1003计算出的布局(步骤S1004)。布局编辑应用程序121,根据用户的指示判断是否对其它记录进行预览(S1005)。当在步骤S1005,判断为不必对其它记录进行预览时,结束预览模式(S1007)。如果对其它记录进行预览,则布局编辑应用程序121,选择其它记录再次进行布局计算,进行预览(步骤S1006)。
另外,当不在预览模式下进行打印时,依次对要打印的全部记录进行布局的计算。因此,步骤S1004不存在,步骤S1005进行是否处理全部要打印的记录的判断。对在步骤S1003进行了布局计算的结果进行描画输出,用打印机驱动程序生成为打印数据,并向打印机输出打印数据。此时,在对于所有记录(为了打印而被指定的所有记录),打印数据的输出结束的时刻,结束本处理。
下面,说明基于上述步骤S1003的布局计算的细节。图14是表示本实施例的未设定布局的优先级时的布局计算的方法的流程图。此外,图18是表示这时的UI显示例的图。另外,由于图14是用于只说明布局计算的处理方法的流程图,所以,相当于对可变数据打印的1个记录进行打印/预览时的布局计算方法。当为多个记录时,重复以下的处理。
首先,布局编辑应用程序121,求出计算布局的容器的集合(步骤S1101)。布局计算,将关联的容器作为一个集合进行计算。例如,当参照图15时,在页面上对4个容器进行布局,并对各容器设定关联。此时,容器A和容器B、容器C和容器D通过链接建立关联。因此,容器A和容器B成为集合1,容器C和容器D成为集合2。即,将由链接连接的容器群确定为一个集合。如上所述,1501表示锚点,1502表示固定的边,1503表示把手,1504表示代表可变的边的变化方向的箭头,1505表示可变的边,1506表示链接,1507表示滚动条。
接着,布局编辑应用程序121,从在步骤S1101求出的容器的集合中,作为计算布局的对象,选择一个集合(S1102)。然后,对所选择出的容器的集合,进行布局的计算。首先,对作为所选择出的容器的集合中包含的可变要素的2个容器(A、B),由所插入的数据的图像尺寸或文本量,计算各容器不受任何限定时的大小。具体而言,布局编辑应用程序121判断容器A是图像数据用容器,还是文本用容器。该判断如上所述,可以按照对容器设定的属性进行判断。接着,布局编辑应用程序121,读入插入容器A的数据,当容器A为图像数据用容器时,该图像数据的尺寸(宽度、高度的像素数以及析像度)为不受容器A的限定时的大小。此外,当容器A为文本用容器时,该文本数据也可以基于字符数、由容器A的容器属性指定的字体类型、字体尺寸、字符间隔、行间隔等字符属性,计算要插入容器A的数据量。这里,当是文本用容器时,如果不考虑限定就无法确定容器A的纵横比例,所以,分配限定。在图15的例子中,容器A在左上角和左下角设定锚点,所以,高度(纵向)固定。由此,布局编辑应用程序121,判断是否可以将计算出的数据量(文本量)的文字插入作为容器A的基本图形设定的宽度(横向)的容器A中。当判断为能够全部插入时,在容器A中,无法变更为以基本图形设定的尺寸(宽度、高度)。此外,判断为不能全部插入时,容器A,通过锚点设定而高度固定,所以,横向延伸。这里,布局编辑应用程序121,容器A的宽度变为多少,就计算是否能插入所计算的数据量的字符,并计算容器A的尺寸。
接着,布局编辑应用程序121进行布局的最优化,使得尽可能地减小进行布局的容器尺寸和实际的容器尺寸的差(S1103)。进行布局的最优化,使得在可动态地改变尺寸地建立了关联的容器中,分别插入的内容的尺寸和进行布局的尺寸的差尽可能相同。布局编辑应用程序121,求出在步骤S1102选择出的容器的集合的尺寸,即,容器A和容器B和链接1506(固定链接时,使用设定的链接长度,可变链接时,使用被设定为基准值的链接长度)的合计尺寸,求出该合计尺寸和基本布局中的该容器的集合的尺寸(在图15的例子中,相当于容器A和容器B的各自的锚点图标的距离)的差。当计算出容器A和容器B的宽度增大时,产生差值。布局编辑应用程序121,通过将该差值均等地分配到容器的集合的各要素中,来进行布局调整。
布局编辑应用程序121,进行布局的最优化,当违背了规则时,再次计算使得不违反规则(S1104)。在此所述的规则是由用户在布局生成时设定的限制,容器的尺寸的可变范围和位置的限制,在可变链接时,是链接长度的变化的限制等。如果为了不违反规则来计算布局,则该集合的布局完成。而且,对页面上的所有集合实施步骤S1102~S1104的处理,布局编辑应用程序121计算页面整体的布局(S1105)。
下面,进一步详细地说明本实施例的使用了可变链接的布局计算方法。
现在,由链接连接2个容器,如图16A那样设定配置和尺寸。即,容器1701的左边和上下边固定,容器1702的右边和上下边固定。因此,由容器1701和1702构成的集合的整体的横向尺寸D固定。链接1703被设定为可变,将基准值(作为对话窗口701的当前值而设定的值)设定为Cs,将可变范围(对话窗口701的最小值~最大值)设定为Cmin~Cmax。另外,各容器1701、1702的可变范围,分别通过预定的用户界面被设定为Amin~Amax、Bmin~Bmax。在该状态下参照上述图14和图17的流程图,说明内容插入各容器时的布局计算。
首先,步骤S1101、S1102,将包含容器1701、1702的集合选择为计算对象的集合。然后,通过步骤S1103和S1104,在进行了布局设定的限定的范围内进行布局的最优化。下面,说明基于步骤S1103和S1104的所选择的集合的布局的最优化。
首先,布局编辑应用程序121,通过与图14相同的计算方法,计算向各容器插入数据时的容器的理想大小(步骤S1801)。在图16A的例子中,由于容器1701、1702的各自的高度固定,所以,基于插入的内容,计算容器所必需的宽度(将其称作理想宽度)。例如,在内容为图像数据的情况下,当使该图像尺寸与容器的高度一致时,可以由图像的纵横比例确定理想值。在内容为文本的情况下,将各行(将从文头到改行称作行)排成1列,可以通过缩小容器的横向宽度,直到与容器的高度一致,来确定理想值。在容器的横向和高度方向被设定为可变的情况下,当内容为图像数据时,用该图像尺寸确定理想值。当容器的横向和高度方向可变,内容为文本数据时,设各行排成1列时的最大横向宽度为理想值。然后,比较基于容器1701、容器1702的理想宽度和链接1703的基准值的集合的合计宽度,和对该集合设定的设定宽度D(步骤S1802)。
现在,由于当设对容器1701和1702计算出的理想宽度分别为Ac、Bc时,链接1703的基准值(在图11的对话框中,向Distance711设定的值)为Cs,所以,布局编辑应用程序121,判断Ac+Bc+Cs是否与D相等(步骤S1803)。如果相等,则布局编辑应用程序121,由各宽度Ac、Bc和链接的长度Cs,确定布局(步骤S1804)。
另一方面,当Ac+Bc+Cs≠D时,布局编辑应用程序121,将该差分均等地分配给各容器和可变链接(步骤S1805)。更具体地说,通过δ=(Ac+Bc+Cs)-D求出与设定宽度D的差值δ,将差值δ分配给2个容器1701、1702和一个链接1703。即,通过计算A’=Ac-(δ/3)B’=Bc-(δ/3)C’=Cs-(δ/3)使布局最优化。通过该最优化,伸缩容器盒(box)的宽度和链接长度,使得变为设定宽度D。另外,这里,将差分均等地分配给各要素(各容器和可变链接),但是这只是横向,即,在可以1维地考虑时有效。在图16C中,如后所述,当从锚点设定2维地考虑差分的分配时,由于维持用户确定的基本布局地进行布局调整,所以,不进行均等分配。
在图14的步骤S1104和图17的步骤S1806中,布局编辑应用程序121检测是否发生了违反规则。例如,检测上述计算出的A’~C’是否超出了布局设定时设定的各容器的变化范围(Amax、Amin、Bmax、Bmin)、链接长度的变化范围(Cmax、Cmin)。如果超过设定的范围,则回到步骤S1103,重新进行适合于规则的布局计算。作为该计算的一种方法,将算出出的大小超过了设定范围的要素的大小固定在设定范围内,对剩下的要素分配差值(步骤S1807、S1805)。例如,(Ac+Bc+Cs)比设定宽度D大,由上述表达式分配差值的结果,是所取得的链接长度C’比所设定的最小值Cmin还小时,进行如下的处理。
首先,将链接的长度确定为最小值Cmin,通过δ’=(Ac+Bc+Cmin)-D计算差值δ’。然后,将该δ’分配给容器1701和1702的宽度。即,通过A’=Ac-(δ’/2)B’=Bc-(δ’/2)C’=Cmin确定各容器和链接的尺寸。
另外,在上述处理中,说明了横向的布局计算,但可以清楚,同样可以以由纵向排列的容器和可变的链接构成的集合为对象的纵向的布局计算。此外,也能容易扩展到在同一方向(横向或纵向的任意一个)排列3个以上的容器,通过链接连接它们的情形。即,如图16B所示,在由容器1701、1702、1704和可变链接1703、1705构成的集合中,各容器的理想宽度为Ac、Bc、Ec,链接的基准值为Cs、Fs时,可以比较集合的设定宽度D和“Ac+Bc+Ec+Cs+Fs”,如果不一致,则将这些差分均等地分配到各容器和链接来调整布局。
此外,布局计算还能容易地扩展到在成为对象的方向上包含大小固定的容器或链接的情形。这时,可以不对这些固定的容器和链接进行所计算出的差值的分配。
此外,在上述处理中均等地对容器和可变链接分配差分,但可以对可变链接和各容器设置优先级,向优先级高的区域优先分配差分。例如,在图11所示的链接的属性设定UI中,设置“比容器优先地可变”这样的检查盒,在检查该检查盒时,对可变链接优先分配差分。这时,首先通过在可变范围内调整可变链接的长度,使集合的宽度与设定宽度一致。当即使设可变链接为最大值或最小值,也无法变为设定宽度时,对容器分配该差值来调整布局。即,本实施例的一个特征是,在布局的调整中,至少进行可变链接的长度调整重要,据此,要实现美观的布局。
容器的布局常常处理横向和纵向的2维布局。例如,在是图16C所示的布局时,在成为布局的调整对象的集合中包括容器1701、1702、1704和链接1703、1705。在本实施例中,首先在横向进行调整,然后在纵向进行调整。即,在容器1701和1702之间,以上述步骤进行布局的调整,使得收敛在设定值D,然后,在容器1703和1704之间进行布局的调整,使得收敛在设定值D。但是,在单纯在横向进行调整,然后在纵向进行调整的调整方法中,设想调整量集中在最初进行调整的方向(横向),成为从用户所希望的基本布局偏离的布局结果。因此,对各容器,为了尽量不从基本图形(纵横比例)偏移,求出基本图形的宽度和布局调整后的宽度的差的平方,与基本图形的高度和布局调整后的高度的差的平方的和,对所有容器计算它。并且,布局编辑应用程序121,也可以计算各容器的宽度和高度来进行布局的调整,使得各容器的平方和的合计值最小。在本实施例中,将该方法称作最小二乘法。当使用最小二乘法时,则不会从用户当初设定的基本布局大幅度偏移,能确定作为整体取得了平衡的最终布局。
图18A~图18C是未设定优先级的布局时的UI例。
图18A表示插入某记录来确定布局的状态。1301和1302表示锚点,1303和1304表示固定的边,1305表示可变的变,1306表示代表可变的边的变化方向的箭头,1308表示链接。在该状态下,变更记录,插入不同的尺寸的内容。图18B在图18A的状态下重叠表示新的内容的尺寸。1309表示插入各容器的内容的尺寸。然后,进行布局的计算。图18C表示进行了布局计算的结果。进行计算,使得计算后的各容器的尺寸与实际插入的内容的尺寸具有同等的差异,并且,在不违反上述规则的前提下计算。图18B所示的插入的内容尺寸(1309)和图18A所示的基准的容器(1305)的尺寸的差异,在链接1308被设定为可变时,平等地分配给各容器和链接。结果,如图18C所示,图18B所示的插入的内容尺寸(1309)和计算后的内容尺寸(1310),具有同等的差异。
接着,使用图19、图20,说明插入容器的数据为图像时的可变链接的效果。
图19表示在图10的链接1209中使用了固定尺寸的链接时的布局结果。如上所述进行布局的计算方法。例如,在图10中,考虑对容器1203和容器1204分别插入不同尺寸的图像数据的情形。这时,各容器将数据的大小视为最佳,对容器1203变更尺寸,使得向右接近成为插入的图像尺寸的框804(最佳容器尺寸),同样,容器1204变更尺寸,使得向左接近成为插入的图像尺寸的框805(最佳容器尺寸)。但是,容器1203和容器1204无法分别由锚点1201和锚点1202,移动左边1212和右边1213,如上所述,当要变更尺寸时,只能缩短两者的间隔。但是,在容器之间设定有固定尺寸的链接803,在布局计算时维持其长度,所以,容器1203和容器1204的尺寸变更。
结果,容器1203和容器1204无法确保与数据的纵横比例匹配的最佳尺寸,最终,如图19所示,变得比最佳的尺寸(框804、框805)小。即,因为链接803的尺寸固定,所以,容器801和容器802无法实现最佳尺寸(在图19中,各容器内的以单点划线表示的范围是数据所具有的纵横比例)。
另一方面,图20表示在与图19相同的状态下,使链接为可变尺寸的情形。这时,在上述例子中,在容器1203和容器1204之间如图所示设定可变尺寸的链接。因此,当容器1203和容器1204的尺寸变更时,可以通过缩小链接尺寸,使容器1203和容器1204的尺寸比图19的例子大。结果,可以实现与插入的数据尺寸匹配的最佳尺寸,或者可以设定接近插入数据尺寸(最佳尺寸)的容器的框。图20表示其结果,布局计算的结果,可变链接1209变为可变链接903所示的尺寸状态。这时,容器1203和容器1204分别变为最佳尺寸(与数据尺寸匹配的大小)<实施例2>
在上述实施例1中,当通过用户界面103在容器之间设定可变尺寸的链接时,首先设定固定链接,然后选择所需要的链接,使之显示图11那样的对话框,从而设定为可变链接。第2实施例表示用于设定可变链接的用户界面的变形例。
图21是表示第2实施例的用户界面例的图,在图10的用户界面上添加新的链接工具407。链接工具406是用于设定固定链接的工具,为了变更为可变尺寸的链接,图12所示的顺序(第1实施例)是必需的。
另一方面,链接工具407的不同之处在于,在容器之间设定链接的时刻已经是可变的。由此产生以下效果在想从最初设定可变链接时,省略打开属性对话窗口,将设定从固定链接变更为可变链接的步骤。链接的设定方法按照上述方法进行,但前提是在容器之间设定的可变尺寸的链接中,存在预先设定的值(最大值、最小值、链接时的尺寸)。当要在多个容器之间设定具有同一可变区域的链接时等,除了上述效果,如果预先指定一次可变尺寸,就可以期待迅速地在容器之间设定链接的效果。在使用了该链接工具407时的容器之间设定的尺寸(链接时的链接尺寸),这时,最好是照原样地保持当前的容器之间的距离。该设定一般在图11的说明中,在上述属性对话窗口上预先进行设定,在选择了链接工具407时,将在此设定的值用作默认值,并在容器之间设定链接。当然,使用链接工具407设定的链接的UI显示,在容器之间设定链接的时刻如上所述与固定的显示相区别,作为例子,如图20的链接显示903那样,用表示可变的虚线的显示等在UI上显示。在其后的布局计算中,按照上述的布局计算规则进行布局。
如上所述,通过上述各实施例,可以将容器的最佳尺寸优先,能够以更接近理想的尺寸对容器进行布局,能提供用户所需要的布局结果。由此,容易地避免成为不是最佳的容器尺寸,链接的尺寸成为可变,从而可以按照该偶尔插入的数据量灵活地变更容器之间的距离,使得各容器尺寸最佳,即使插入不同的数据量的数据,也可以计算与数据更匹配的最佳尺寸的容器尺寸,结果,可以向用户提供最佳的布局。
<其它实施例>
另外,本发明的目的还可以通过以下方式实现,向系统或装置提供记录了实现上述实施例的功能的软件的程序代码的存储介质,该系统或装置的计算机(或CPU和MPU)读出并执行存储在存储介质中的程序代码。
这时,从存储介质读出的程序代码本身就能实现上述实施例的功能,存储了该程序代码的存储介质就构成本发明。
作为用于提供程序代码的存储介质,例如,可以使用floppy盘、硬盘、光盘、光磁盘、CD-ROM、CD-R、磁带、非易失性的存储卡、ROM等。
此外,不仅可以通过执行计算机所读出的程序代码,来实现上述实施例的功能,当然还包括以下情形基于该程序代码的指示,在计算机上运行的OS(操作系统)进行实际处理的一部分或全部,通过该处理,实现上述实施例的功能。
当然,还包括以下情形将从存储介质读出的程序代码写入插入计算机的功能扩展板或连接在计算机上的功能扩展单元所具备的存储器之后,基于该程序代码的指示,该功能扩展板或功能扩展单元所具备的CPU等进行实际处理的一部分或全部,通过该处理,实现上述实施例的功能。
权利要求
1.一种确定页面的布局的布局调整方法,包括局部区域设定步骤,设定插入数据的局部区域的尺寸和位置的基本图形;基本布局步骤,在页面内对在上述局部区域设定步骤设定的多个局部区域进行布局,确定基本布局;链接设定步骤,对链接设定由上述局部区域设定步骤所设定的多个局部区域之间的距离的可变范围;计算步骤,根据在上述局部区域设定步骤设定的局部区域的大小和插入该局部区域的数据,对每个局部区域计算适于描画该所插入的数据的尺寸;以及调整步骤,基于在上述计算步骤计算出的各局部区域的尺寸和在上述基本布局步骤确定的基本布局,在上述链接设定步骤设定的可变范围内,变更各局部区域之间的距离,调整页面内的布局。
2.根据权利要求1所述的布局调整方法,其特征在于上述调整步骤,当在上述计算步骤计算出的尺寸的各局部区域大,无法用上述基本布局布置在页面内时,在上述链接设定步骤设定的可变范围内,减小各局部区域之间的距离,调整页面内的布局。
3.根据权利要求2所述的布局调整方法,其特征在于上述调整步骤,当在上述计算步骤计算出的尺寸的各局部区域大,无法用上述基本布局布置在页面内时,不仅调整各局部区域之间的距离,还同时调整各局部区域的尺寸。
4.根据权利要求1所述的布局调整方法,其特征在于上述调整步骤,当在上述计算步骤计算出的尺寸的各局部区域大,无法用上述基本布局布置在页面内时,基于表示各局部区域之间的距离的链接和对各局部区域设定的优先级,确定调整各局部区域之间的距离和各局部区域的尺寸中的哪一个。
5.根据权利要求1所述的布局调整方法,其特征在于上述链接设定步骤,能够设定各局部区域之间的距离的基准值;上述调整步骤包括计算关于构成上述区域集合的各局部区域在上述计算步骤取得的尺寸和上述局部区域之间的距离的基准值的合计尺寸,与适合在上述基本布局步骤确定的基本布局的区域的尺寸的差值的步骤;以及为了消除上述差值,而对各局部区域和局部区域之间的距离分配上述差值的步骤。
6.根据权利要求5所述的布局调整方法,其特征在于上述局部区域设定步骤,能够设定局部区域的尺寸的可变范围;上述分配的步骤,对局部区域和局部区域之间的各距离,在不超过所设定的可变范围的范围内,均等地分配上述差值。
7.根据权利要求1所述的布局调整方法,其特征在于,还包括显示步骤,通过特别指定包括与各局部区域对应的数据的数据群,在显示器上显示包括在上述调整步骤调整的结果的上述页面上的布局。
8.根据权利要求1所述的布局调整方法,其特征在于,还包括识别显示步骤,在显示器上显示表示上述局部区域和在各局部区域之间设定的链接的图形,可识别地显示由上述链接设定步骤设定了可变范围的链接和其它链接。
9.一种确定页面的布局的布局调整装置,包括局部区域设定单元,设定插入数据的局部区域的尺寸和位置的基本图形;基本布局单元,在页面内对在上述局部区域设定单元设定的多个局部区域进行布局,确定基本布局;链接设定单元,对链接设定由上述局部区域设定单元所设定的多个局部区域之间的距离的可变范围;计算单元,根据在上述局部区域设定单元设定的局部区域的大小和插入该局部区域的数据,对每个局部区域计算适于描画该所插入的数据的尺寸;以及调整单元,基于在上述计算单元计算出的各局部区域的尺寸和在上述基本布局单元确定的基本布局,在上述链接设定单元设定的可变范围内,变更各局部区域之间的距离,调整页面内的布局。
10.根据权利要求9所述的布局调整装置,其特征在于上述调整单元,当在上述计算单元计算出的尺寸的各局部区域大,无法用上述基本布局布置在页面内时,在上述链接设定单元设定的可变范围内,减小各局部区域之间的距离,调整页面内的布局。
11.根据权利要求10所述的布局调整装置,其特征在于上述调整单元,当在上述计算单元计算出的尺寸的各局部区域大,无法用上述基本布局布置在页面内时,不仅调整各局部区域之间的距离,还同时调整各局部区域的尺寸。
12.根据权利要求9所述的布局调整装置,其特征在于上述调整单元,当在上述计算单元计算出的尺寸的各局部区域大,无法用上述基本布局布置在页面内时,基于表示各局部区域之间的距离的链接和对各局部区域设定的优先级,确定调整各局部区域之间的距离和各局部区域的尺寸中的哪一个。
13.根据权利要求9所述的布局调整装置,其特征在于上述链接设定单元,能够设定各局部区域之间的距离的基准值;上述调整单元包括计算关于构成上述区域集合的各局部区域在上述计算单元取得的尺寸和上述局部区域之间的距离的基准值的合计尺寸,与适合在上述基本布局单元确定的基本布局的区域的尺寸的差值的单元;以及为了消除上述差值,而对各局部区域和局部区域之间的距离分配上述差值的单元。
14.根据权利要求13所述的布局调整装置,其特征在于上述局部区域设定单元,可以设定局部区域的尺寸的可变范围;上述分配的单元,对局部区域和局部区域之间的各距离,在不超过所设定的可变范围的范围内,均等地分配上述差值。
15.根据权利要求9所述的布局调整装置,其特征在于,还包括显示单元,通过特别指定包括与各局部区域对应的数据的数据群,在显示器上显示包括在上述调整单元调整的结果的上述页面上的布局。
16.根据权利要求9所述的布局调整装置,其特征在于,还包括识别显示步骤,在显示器上显示表示上述局部区域和在各局部区域之间设定的链接的图形,可识别地显示由上述链接设定单元设定了可变范围的链接和其它链接。
全文摘要
本发明提供一种基于表示在内部对基于所分配的数据的图像进行可视描画的多个局部区域的页面内的配置的布局信息,来确定页面的布局的布局调整方法。在布局调整方法中,布局信息包括关于对排列在预定方向上的多个局部区域进行分组的区域集合的该预定方向的整体尺寸和局部区域之间的距离的可变范围,从存储器取得布局信息和与各局部区域对应的数据,对包含在区域集合中的多个局部区域,分别计算适于描画所分配的数据的尺寸,根据计算出的各局部区域的尺寸和上述整体尺寸,至少通过在上述可变范围内变更局部区域之间的距离,来调整上述区域集合的布局。
文档编号G06F17/21GK1648848SQ20051000510
公开日2005年8月3日 申请日期2005年1月28日 优先权日2004年1月30日
发明者小桥和文, 原健太, 牧野顺 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1