文件处理装置和文件处理方法

文档序号:6512834阅读:153来源:国知局
专利名称:文件处理装置和文件处理方法
技术领域
本发明涉及一种具有在预定的位置布置例如登录在数据库中的记录的各字段,来完成文件的自动布局功能的文件处理装置。
背景技术
近年,由于商品的多样化,商品寿命变短,随着互联网的普及,利用它的消费者的客户服务指向增强等原因,所以CRM(CustomerRelationship Management客户关系管理)、一对一营销的必要性就受到关注。这些方法目的在于,提高客户满意程度,开发、稳定客户。
一对一营销是数据库营销的一种,把客户的年龄、性别、兴趣、爱好、购买经历等个人属性信息做成数据库,分析其内容,提出符合客户需求的建议,作为典型的手法,例如有可变打印。最近,随着DTP(desktop publishing桌面出版系统)技术的进展和数字打印装置的普及,开发有对每个客户定制文书并输出的可变打印系统,希望按每个客户将不同的信息量的内容最佳地布局并显示。
在以往的可变打印系统中,作为在文档上显示信息的区域,把容器(container)(在帐票中,也称作字段区域),通过把数据库和容器相关联,来实现布局显示。
但是,因为作为粘贴文本和图像的局部显示区域的容器的尺寸是固定的,所以,当在容器中插入数据库的数据时,如果数据量比容器尺寸多,则产生文本的重叠或图像的裁剪,此外,如果数据量比容器尺寸小,就在容器内产生间隙,在任何情况下,都无法实现与欲显示的文本或图像的信息量相对应的最佳布局显示。
为了解决该问题,提出了根据信息量,使容器尺寸可变的自动布局系统。该自动布局系统能够可变地设定文本和图像的容器尺寸。在该自动布局系统中,使容器的尺寸可变,根据插入的数据量,可以进行改变以增大容器的尺寸。此外,还有以下的技术,即在文本的情况下,当插入了未完全进入固定的容器尺寸内的数据时,就缩小文本的字体尺寸,在容器内显示全部的文本。
但是,在增大了容器的尺寸的情况下,就产生与文档上的其它容器重叠这样的问题。此外,在调节字体尺寸的情况中,当文本量变大时,还产生字体尺寸变得过小的问题。为了解决这些问题,进一步地,作为自动布局的技术,在日本特开平7-129658号公报的“布局设计装置”中,公开了当某容器的尺寸变大时,就变小与该容器相邻的其它容器的尺寸的技术。
然而,在专利文献1中记述的布局构造装置,管理布置原料的优先级,按照该优先级的顺序布置各原料,确定布局。由此,仅是确定布置单位各原料的顺序,优先度最低的原料的区域变窄,不能够得到用户所希望的布局。另外,在专利文献1中记载的自动布局系统中,由于根据各原料的种类确定优先级,因此在根据数据库的数据尺寸自动地进行布局的计算时,对于使各容器的尺寸怎样发生变化,用户并不能够详细地进行设定。例如,设有2个可变容器A和B,双方都从数据库插入了数据。当双方的插入在容器A、B中的数据都比较大,不能够收容到页面内时,由于用专利文献1记述的结构,根据以各原料的种类所设定的优先级来确定布局,因此在以图像、图形、字符的顺序设定优先级的情况下,例如,输入图像的容器A首先确定大小和位置,接着固定地确定输入字符的容器B的大小和位置。
为此,例如,即使希望与输入到容器中的内容的种类无关,比其它的容器优先显示(打印)在生成的文件内生成的一个容器,在专利文献1的自动布局系统中,也根据内容的种类固定地确定优先级。即,即使对于与内容的种类无关,与其它的内容相比较插入了希望有吸引力的内容的容器,由于兼顾其它内容的种类来确定尺寸,因此不能够对每一个容器独立优先地进行布局。
另外,也不能够使优先级平等,根据输入到各容器中的内容的尺寸,增大各容器,通过相互挤压多个容器来确定布局。

发明内容
本发明是鉴于上述以往例子而完成的,目的在于能够通过对在模板中布置数据的区域提供优先级,来提高数据的布局自由度的文件处理装置。
另外,其目的在于,提供一种文件处理装置,对于在模板中布置数据的各个区域,在各区域中设定了优先级的情况下和没有设定优先级的情况下,能够通过动态地布局这些区域,来提高数据的布局的自由度。
解决上述问题的本发明的文件处理装置具备以下的结构。
该文件处理装置,能够根据要对文件布局的数据来动态地变更文件的布局,其特征在于包括存储装置,用于存储包括表示用于布置数据的区域的区域信息和表示与该区域相关联的优先级的优先级信息的多个组合的模板(2001);布置装置,根据上述模板,按照由上述优先级表示的顺序,布置对应于上述区域的数据,适合上述数据地变更上述区域的尺寸或者位置,使得不干扰与高于该区域的优先级相关联的区域(2002),其中,在存储于上述存储装置的模板中,按每个上述区域信息独立地包含上述优先级信息。
依据本发明,能够通过在模板中对布置数据的区域赋予优先级,来提高数据的布局的自由度。
本发明的其他特征和优点,可以通过下面的参照附图进行的说明而得到明确。在这些附图中,相同的标号表示相同或类似的部分。


附图包括在说明书中并构成说明书的一部分,用于说明本发明的实施方式,并与说明书一起用于说明本发明的原理。
图1A是表示实施方式的计算机系统结构图。
图1B是表示实施方式计算机模块的概略图。
图2是表示实施方式的其它的计算机系统结构图。
图3是表示包括实施方式的菜单栏、工具栏、工作区、浮动托板的典型应用的主窗口的图。
图4是用屏幕、工具、图标表示具有实施方式的容器之间的链接、锚点(anchor)、滚动条(slider)的典型容器的一个面。
图5A~图5D是表示实施方式的典型的容器规则的图。
图6A~图6C是表示链接生成时的UI图例子的图。
图7是表示本发明的设定优先级的流程图。
图8是表示本发明的设定优先级的弹出菜单一例的图。
图9A~图9D是表示在设定本发明的优先级时变更的容器的UI例子的图。
图10是表示本发明的布局计算的全体流程的图。
图11是表示与本发明的图10所示的流程图中的步骤“没有优先级的计算布局”相对应的流程的图。
图12是表示与本发明的图10所示的流程图中的步骤“具有优先级的计算布局”相对应的流程的图。
图13A~图13C是表示与本发明的图11的流程相对应的UI例子的图。
图14A~图14C是表示与本发明的图12的流程相对应的UI例子的图。
图15是表示本发明的在计算布局时对于容器的集合进行说明的图。
图16是表示生成本发明链接的流程的图。
图17是表示第2实施方式的优先级的设定流程的图。
图18A~图18C表示第2实施方式的优先级设定时的UI例子的图。
图19是表示模板数据的结构例子的图。
图20是文件处理装置的框图。
具体实施例方式
对适用本发明的实施方式的优选实施方式进行说明。首先说明发明的大概内容。本实施方式涉及一种用于由计算机实现可变打印功能的计算机软件,该可变打印功能,根据在文档模板(也简单地称为模板)中定义的容器(数据插入的局部区域也称为字段区域),来生成布置了数据库的记录等的文件。另外,特别是涉及一种用于由计算机实现具有能够根据该内容的尺寸变更容器尺寸的自动布局功能(或者具有该功能的文件处理装置)的自动布局系统的计算机软件。可执行地加载了该软件的计算机,作为文件处理装置而发挥作用。在本实施方式中,特别是在根据模板布置数据时,根据数据尺寸来变更数据的容器尺寸。这时,按照由模板提供的容器的优先级,使优先级最高的容器优先地插入数据,进行与数据尺寸相对应的尺寸的变更,对于低优先级的容器,变更其尺寸使得不干扰高优先级的容器,并且在容器之间维持由链接定义的固定距离。
其次,说明可适用本发明的本实施方式的计算机系统的结构和应用结构。
图1A图表示打印可变数据文件的系统100。本说明书所示的方法通过用图1B中详细说明的通用计算机101执行预定的程序来实现。图1A中记述的处理由计算机模块101执行,在系统100如可执行的布局编辑应用程序12那样,用软件的全部或者一部分执行。特别是根据由作为本发明的文件处理装置的计算机101执行的软件的指示,来实施布局编辑或者打印的步骤。软件例如保存在包括下述的存储装置的计算机的可读介质中。软件从计算机的可读介质加载到计算机中,由计算机101执行。具有这种软件或者记录在介质中的计算机程序的计算机可读介质是计算机程序产品。通过在计算机中使用该计算机程序产品,计算机作为能够进行文件的布局编辑或者可变数据打印的装置而发挥作用。
在计算机模块101中,连接键盘132、鼠标133那样的指示设备等输入装置,连接显示器装置144、按照状况包括本地打印机145的输出装置。输入/输出接口138能够由网络连接107把计算机模块101连接到系统100的其它计算机装置。该网络连接107的典型是局域网(LAN)或者广域网(WAN)。
计算机模块101一般至少包括1个处理器单元135、例如由半导体随机存取存储器(RAM)或者只读存储器(ROM)构成的存储器单元136、包括视频接口137的输入/输出(I/O)接口、键盘132或者鼠标133使用的I/O接口134。
存储装置139一般包括硬盘驱动器140或者软盘驱动器141。虽然在图1B中没有表示,但也可以使用磁带驱动器。CD-ROM142作为非易失性的数据库而提供。计算机模块101按照GNU/LINUX或者微软公司的Windows(注册商标)这样的操作系统,或者根据基于计算机系统的通常的操作模式的方法,来利用相互经由连接总线143进行通信的计算机模块101中包含的各结构元件(符号135~符号143)。
作为图1B中记述的布置的计算机的例子,考虑包括IBM兼容PC或者SUN公司的SparcStation,或者把包含这些在内的计算机系统。
图1A的布局应用程序121通常保存在图1B的硬盘驱动器140中,由处理器135执行、读入和控制。在若干个实例中,应用程序121在CD-ROM或者软盘上编码,通过相对应的软盘驱动器141或者CD-ROM驱动器142读入,提供给用户。或者作为另一种方法,应用程序121也可以由用户从网络连接107读入。进而,软件还能够从包括磁带、ROM、集成电路、光磁盘、无线、计算机模块101与其它设备之间的红外线通信、PCMCIA卡那样的计算机可读卡、电子邮件通信、具有WEB位置上的记录信息的互联网或企业内部互联网等其它适当大小的计算机可读介质加载到计算机模块101内。上述的例子只是相关的计算机可读介质的一个例子。还可以使用其它的计算机可读介质。
另外,布局编辑应用121进行指示使得进行可变数据打印(VDP),包括2个软件组件。其中第1个模块是布局引擎105,这是根据用长方形的容器提供的限制或者尺寸,用于计算构成容器的矩形和线的位置的软件组件。布局引擎105作为确定各局部区域(容器)的尺寸和位置的应用程序来进行动作,通过对省略图示的打印驱动输出描画信息,打印驱动进行可变数据文档的图像描画处理,生成打印数据。
第2个模块即用户界面模块103是对用户生成文档模板,在文档模板内提供把数据库和容器关联的机制的模块。用户接口103和布局引擎105经由信道123进行通信。用于文档生成的数据源一般存储在位于由运行数据库应用程序的其它计算机所构成的数据库服务器117上的数据库119中。主计算机101通过与网络107的连接而与数据库服务器117通信。布局编辑应用程序121生成保存在由主计算机101或其它计算机构成的文件服务器115中的文档模板。此外,布局编辑应用程序121生成由合并了数据的文档模板构成的文档。这些文档保存在主计算机101的存储装置139中,或保存在文件服务器115中,或直接由打印机113打印。打印服务器109是对没有直接连接到网络上的打印机提供网络功能的计算机。打印服务器109和打印机113经由一般的通信信道111而进行连接。
图2表示由图1A的结构,使布局引擎255独立,由引擎服务器227来实施布局引擎的结构。引擎服务器27是普通的计算机。保存在文件服务器115中的文档模板能够在要打印或者有其它的目的时,为了由布局引擎255生成文件,而与保存在数据库119中的数据结合。这样的操作经由用户接口103进行请求,或者进行请求以便仅打印特别指定的记录。
(主窗口)
如图3所示,用户接口101包括在操作时,由在视频显示器144上显示的应用窗口301所形成的用户接口。窗口301特征是添加有能够进行不显示或者移动到屏幕上各个位置的菜单栏302、工具栏303、可通过鼠标133的位置和动作移动场所的工作区306、选项托板311、光标/指示设备313。
菜单栏302如作为众所周知的技术已知的那样,具有在菜单选项的分级下扩展的多个菜单项304。
工具栏303具有可以根据应用的特别模式来进行不显示或者进行显示的多个工具按钮和小配件305。
选择的标尺308用于表示工作区域内的指针、页面、行、边界引导、布局框(容器)、对象的位置。
托板311用于访问可变数据库那样的添加功能。托板311具有提供用于移动、尺寸恢复、关闭的窗口控制312。根据选项,托板311显示在工作区的前面,或者隐藏在背面。此外,托板311有时只限制在应用窗口301的范围内,或有时允许在应用程序窗口301的外侧显示一部分或整体。
工具栏303如图4所示,至少具有以下用户可选择的“按钮”。
(1)选择工具按钮403用于选择、移动容器的边、变更尺寸、尺寸恢复,以及解除锁定。可以通过在多个容器的周围拖曳选择框,或者可以在选择多个容器期间,通过持续按下CTRL键,来选择多个容器。
(2)图像内容工具按钮404用于生成具有静止(固定)或者可变图像的容器。
(3)文本内容工具按钮405用于生成静止(固定)或者可变文本的容器。
(4)链接工具按钮406用于生成在容器之间进行关联的链接,用于控制链接的距离。
这些按钮如众所周知的技术那样,安装成与操作状况相对应地变化的图标的工具接点。
布局编辑应用121的图3所示的应用窗口301,能够通过在页面内布局各容器或者链接,来确定基本布局。所谓基本布局是在可变数据打印中成为基本的布局。在基本布局内的各容器是固定容器的情况下,所有记录的打印结果的布局相同。另外,在基本布局内的各容器是后述的可变容器的情况下,根据读入到记录单位中的数据的量或者尺寸,各容器的尺寸或者位置在后述的限制范围内变动。由此,用布局编辑应用121生成的文档模板始终确定基本布局,在包括可变容器的情况下,最终的打印品的布局根据所读入的数据来进行布局调整。
(文档模板)工作区306用于显示和编辑文档模板的设计。这是对在用户的准备下所打印的文件概要进行设计,而且可以理解合并了的文件根据可变数据的量或者尺寸如何地进行变化。
如果外部数据源(例如数据库的记录等)链接到模板上,则可变文本和图像显示在容器中,使得能够预览当前的文件。
当使光标移动到容器上时,或选择了容器时,能够总是显示文档的构造和成为描绘可变数据的容器的视觉助手的对象。
工作区306通过滚动条307、选项的标尺308和文档模板309添加特征。文档模板309能够显示多个页面。
所提供的文档模板的页面尺寸利用众所周知的技术由用户进行指定。例如,通过从菜单的“文件”选择“页面设定”,显示设定页面尺寸的对话框,这里,成为反映用户指定的页面尺寸。各个文件内实际的页面数可以根据可变数据发生变化。如果不能够收容在1页面内,则在预定的用纸尺寸的页面内收容各容器的限制成为基本布局的情况下,自动地生成添加的页面。如把各容器收容在预定的用纸尺寸的页面内那样,限制(可以根据后述的锚点图标进行设定)设定在基本布局中的情况下,在页面内各容器相互挤压、被挤压,并且确定各容器尺寸和位置,根据需要,缩小插入的可变数据,在每个记录中动态地布局。
各页面内的边界线是表示可以在页面上打印的对象的最大宽度的边界310,页面边界310能够由使用者定义。
另外,图4是可以在1页面的文档模板309上显示的对象的例子。具有多个容器407、408,能够任意使用的锚点图标,没有被固定的边410,链接412和滚动条413。锚点图标409能够设定在容器的矩形的角、边或者容器的中央。如果设定锚点图标409,则所设定的各个位置就固定。即,在图4的例子中,锚点图标409由于设定在容器407的左上角,因此容器407插入可变数据,在可变数据的图像尺寸或者文本量多的情况下,表示可以扩大到右方向和下方向。在把锚点图标409设定在边上的情况下,该边就固定,沿着其它3条边的各个方向进行扩大。另外,在把锚点图标409设定在容器的中央的情况下,容器的中央位置成为固定,可以沿着4个方向扩大而不改变容器矩形的中央位置。链接412的详细情况在后面叙述,表示容器407与容器408添加关联,表示保持设定在该链接的长度(可指定范围),并且表示容器408可以向右方向移动。滚动条413表示可以沿着所设定的边和水平方向进行移动。
(容器)容器是以记录单位从可变数据文件将固定或可变的文本/图像插入到文档模板内,并进行描画的空间(把它称作局部区域),与其它的容器或者对象一起布局。操作鼠标133,使用指示器313,在图3、图4等用户接口画面中所示那样对容器进行移动、尺寸调整以及再次生成。
更正确地讲,容器具有设定的集合、视觉的表现、相互作用、编辑动作。所谓容器如以下那样定义。
(1)容器与固定或者可变的内容相关联。可变容器从数据源(例如数据库的记录)获得,在不同的文件中可以不同这种意义下是动态的。作为可变内容,活动化的部分或者用其它方法根据时间来发生变化的部分,由于不适于打印因此不包括在内。固定内容显示为与使用一个模板生成的所有的文件相同。可是,在设定可变内容和链接的情况下,通过包括可变内容的容器的位置或者尺寸的变化,包括固定内容的容器在各个文件中有可能位置不同。
(2)容器具有应用于内容的背景色、边界、字体风格等文本设定的装饰功能。把这样的设定称作容器属性。可以按各容器设定容器属性,但是,也可以按与某容器相同的容器属性来进行设定。
(3)容器当生成文件时,与来自数据源的数据合并。装饰功能如在任意固定内容中那样,一般是打印的输出物,是可视的。可变内容是作为来自数据源的特定的数据,进行显示或者打印。收容在容器中的内容,例如,进行打印,或在屏幕144上显示,或可以用这两种方法输出。
(4)容器具有用户接口。例如,具有用于容器的编辑和显示设定的人机对话的GUI。接口的元件一般显示在屏幕144上,用户接口103显示背景色和字体那样容器的装饰功能的若干种。而且还具有用于进行容器设定的编辑或者显示的功能。作为用户接口功能的目的的例子,具有用于对话式地变更和显示边界、容器的尺寸、位置的角图标,或者当容器从数据源合并了数据时,用于表示容器的动作的涂敷数、线、图标以及文本。
(容器限制)容器具有用于控制把在各个文件中显示或者打印的内容怎样收容到容器中的限制。这些限制是用户用一个文档模板控制多个文件的主要方法。作为限制的一个例子,有「该容器的内容的高度最大值是4英寸」这样的限制。作为限制的其它例子,有“容器的内容的左边缘必须在各个文件中相同的水平位置来显示。”这样的限制。这里所述的内容是使用GUI显示、编辑这种限制的各种方法。
使得图像具有在页面上所定义的位置那样,指定固定内容的布置的内容位置标志符(place holder)在数字打印技术中已经广为人们所知。在以下的说明中,容器具有位置和尺寸,它们能够用众所周知的技术中已知的方法编辑、显示。
通过用户指定容器的位置、尺寸、限制等,能够指定文件的内容的尺寸和位置。由于多个文件从一个文档模板生成,因此为了指定、显示内容的多个可能的设定和限制,必须使用用户接口。
1个容器的边定义在文件内显示的与该容器添加关联的内容的假定边界线。即,容器的左边在适用同一个模板的任何的文件内,都对应于布置有与该容器相关联的内容的左端。同样,容器的高度理解为在适用同一个模板生成的文件内与该容器相关联的内容的高度的限制。在本说明书中,参照用户接口103论述了容器的边或者大小,该区别将得到明确。
以下,说明本实施方式的具体的容器限制的例子。“固定”的术语在共同使用某个容器的文件的全部内容中的意思是相同的。
(1)如果容器的宽度固定,则分配到与该容器相关联的内容的宽度在适用包括该容器的模板而生成的所有的文件中,对于包括该容器的页面变为相同(固定值)。
(2)如果容器的高度固定,则分配给与该容器相关联的内容的高度在适用包括该容器的模板而生成的所有的文件中,对于包括该容器的页面变为相同(固定值)。
(3)如果距离的限制固定,则所指定的距离(固定值)是用于适用包括该容器模板而生成的所有的文件的限制。
(4)如果容器的左右边固定,则意味着在适用包括该容器的模板生成的所有的文件中,关于容器的边的水平方向的位置对于包括该容器的页面是相同的。然而,容器的高度或者垂直方向的位置有可能变化。例如,如果容器的左边固定,则与该容器相关联的内容在适用一个模板而生成的一个文件中靠近页面的上方显示,在其它的文件中靠近页面的下方显示。但是,左边的水平位置在所有的文件中是相同的。
(5)如果容器的上下边固定,则边的垂直方向的位置在适用包括该容器的模板生成的所有的文件中,对于包括该容器的页面是相同的。但是,容器的宽度或水平位置有可能变化。
(6)容器的垂直轴与容器的右边和左边平行,是位于其中间想象的垂直线。如果容器的垂直轴固定,则容器的左右边的水平位置的平均在适用包括该容器的模板生成的所有的文件中,对于包括该容器的页面是相同的。在该限制下,容器的宽度有可能变化。例如,在不同的文件中,相对应的容器的左右边的水平方向的位置有可能在远离或者接近垂直轴这一点上相互不同。但是,垂直轴在适用包括该容器的模板生成的所有的文件中,对于包括该容器的页面处于相同的水平位置。容器的高度和水平位置不受到该限制的影响。
(7)容器的水平轴与容器的上边和下边平行,是位于其中间的假想的水平线。与垂直轴相同,如果容器的水平轴固定,则限制容器的上边和下边的垂直方向的位置。但是高度不受该限制的影响。
(8)如果水平轴和垂直轴都固定,则意味着固定容器的中间位置(垂直轴与水平轴的交点)。但是,容器的宽度和高度不受该限制的影响。
(9)如果容器的角、容器的边的中间位置、或者容器的中心位置固定,则与该容器相关联的内容在适用包括该容器的模板而生成的所有的文件中,将包括该容器的页面显示在相同位置。例如,如果容器的左上角固定,则意味着所布置的容器的左上位置在适用包括该容器的模板而生成的所有的文件中,包括该容器的页面变为相同。
(10)垂直边或者垂直轴与页面的左边或右边、或者左页面边界,或者右页面边界、或者其它的水平位置相关联而固定。同样,水平边或者水平轴与页面的上边或者下边、或者边界、或者其它的垂直位置相关联而固定。
与“固定”相反的术语是“可变”,所述“可变”意味着边、轴、角、中间位置或者文件限制在文件之间(记录之间)有可能发生变化。例如,在页面内,根据可变数据的尺寸或者量,期待动态地改变布局,但是,对于特定的容器希望使大小或者位置变成固定,或者页面的角的容器的四个角变成固定。为此,在本布局编辑应用121中,对于各个容器(局部区域),能够适当地进行设定,使边、轴、角、中间位置等固定或者可变。由此,在用户确定文档模板108的基本布局的情况下,能够按照用户的希望生成基本布局。
可变打印的文件的生成顺序大致能够分为两个阶段,即生成模板等模板生成处理(设定模式),和在所生成的模板中插入内容来生成文件的文件生成处理(特别地,把预览显示文本的情况称为预览模式)。首先,说明布局模式。
(新容器的生成方法)在容器中有文本容器和图像容器这两种容器。文本容器收容文本和嵌入图像。图像容器只收容图像。
如图4所示,新文本容器和图像容器用鼠标133点击文本内容404或者图像内容405,在模板309上通过拖曳四角形,生成在文档模板309上。
或者,通过使适当的工具404、405变为有效以后,能够在文档模板309上利用鼠标点击来简单地生成容器。在生成了新容器的情况下,为了插入缺省尺寸的容器或者新容器的尺寸,显示对话框或者其它的提示。另外,还能够根据事先定义或者计算的计划来自动地生成和布置容器。这里通过鼠标等输入单元选择所生成的容器,通过右键点击进行指示性能等的操作,能够显示容器的特性对话,设定容器的限制。在容器的特性对话UI(相当于局部区域设定装置)中,能够设定上述各种限制。另外,在容器的特性对话中,能够确定容器的尺寸(宽度、高度)或者位置,在成为可变尺寸的情况下,设定容器的基本图形(基本尺寸和基准位置),进而,可以设定最大容器尺寸(宽度、高度)和最小容器尺寸(宽度、高度)。
(容器的显示方法)在文档模板内生成的容器的边的状态,优选的是如图4所示那样,在用户接口上用图表来进行显示。通过以共同的表现来表示边的状态,能够进一步减少与状态相对应的图像对象的种类。
图5A~图5D是表示容器的显示例子的图。应用121为了表现边的状态,用实线503或者虚线504描绘边。容器具有锚点(由描绘在边的附近的对象506、507、509所表示的线、形状、图标),把手(为了移动、校正,在边或者图形的附近所描绘的控制点)502,滚动条(在边的两侧所描绘的短平行线,图4的413),放大缩小(箭头)图标505以及颜色等特征。
图5A~图5D的容器显示方法的规则如下。
(1)如果各条边固定,则用实线描绘该边。
(2)如果宽度固定,则用实线503描绘左右两条边。
(3)如果高度固定,则用实线503描绘上下两条边。
(4)不描绘轴。
(5)尚未描绘的边在该边的附近描绘放大缩小图标505,用虚线504描绘(6)在垂直边或者轴与水平边或者轴的交点上,如果相交的边或者轴都是固定的,则描绘锚点。
(7)如果在固定边的任何位置都没有描绘,则在该边的中央部分描绘滚动条。
(8)如果在垂直边或垂直轴与水平边或水平轴的交点既没有描绘锚点也没有描绘滚动条,则描绘把手。
可变的边用虚线描绘。在根据规则6、7、8所描绘的固定点上显示锚点,在固定的边上显示滚动条,在其它的边上显示把手。
上述的规则使用户在后面所设定的限制优先。即,在后面设定了其它限制的情况下,如果在要描绘上述的规则的边上产生影响,则变更实线或者虚线的描绘内容。
描绘可变边的位置依赖于容器的内容。如在后面说明的那样,在文档模板中合并内容,进行在用户接口上显示文件的“动态校正处理”。
这些内容表现提供显示容器的边的状态的图解的方法。其表现的解释如下。
(1)如图4的边401那样,虚线意味着与容器的内容相对应的文件内的边的位置。
(2)实线意味着被限制的边。这是因为用实线显示的边被固定(边414),或者容器的宽度和高度被固定(在容器408中固定双方)。
(3)锚点意味着固定边或者轴的交点。因而,锚点在适用了包括该锚点的文档模板的所有文件中,在同一个水平、垂直位置出现。当然,锚点被固定。图4的图标409是要固定相交的边414的锚点图标的例子。
(4)滚动条意味着相关联的边被固定在该边的垂直方向。但是容器能够移动到沿着该边只滑动了「滑动的长度」的位置。例如,通过滚动条413的操作,容器408的内容有时还在文件内移动到左侧或者右侧来进行显示。
通过选择某个工具、某个容器,使其成为高亮或有效,描绘或者不描绘这些图标或者边的一部分或全部。一般,容器的边和图标是用于构造文档模板而显示的,在适用所生成的文档模板的打印品中不进行描绘。
容器的宽度和高度的基准值、最小值和最大值的基本图形的设定显示在其次的对话窗口中。
在图5A中,容器501没有固定宽度和高度。固定的边503用实线表现。可变的边504用虚线表现。虚线表示该边根据成为容器内容的内容尺寸是可变的。另一方面,放大缩小图标505是表示根据通过链接与相邻的边504相关联的其它容器的尺寸变更或者根据移动而可变的指示器。
在图5B中,容器501的宽度和高度可变。锚点图标506表示固定相交的两条边503。
在图5C中,容器501在能够将以锚点图标507所表示的点为中心均等地放大或者缩小的状态下,宽度和高度是可变的。这里的放大/缩小是进行布局调整,以使锚点图标507的位置始终成为容器501的中心点。
在图5D中,容器501除了固定508以外,宽度与高度是可变的。在上边508的中心所表示的锚点图标509固定该边508,表示容器的左边和右边通过图标509,能够在垂直描绘的中心轴(垂直轴)的周围移动。
图19表示文档模板的数据(称为模板数据)的一个例子。在图19中,模板数据1901保存在存储器136或者硬盘140中。在模板数据中包括以下的单元。
(1)整体尺寸1902表示模板整体的页面的尺寸。页面例如用纵和横的长度,或者标准用纸尺寸等表示。
(2)容器信息1903表示在布置于模板内的每个容器中,用于特定该容器的识别信息或者容器的标准位置(位置信息),边的长度(尺寸信息),构成容器的边或者点的属性(属性信息),与容器相关联的内容的信息等。
位置信息和尺寸信息在模板生成时定义,位置信息成为在容器的生成时由用户设定的容器的基准位置。如果是位置可变的容器,则根据插入到容器中的内容的尺寸(图像尺寸、文本量)来变更大小,根据各容器的大小,动态地变更位置。如果是通过锚点固定了位置的容器,则表示所固定的位置。这样的位置信息至少包括能够特定容器的对折点位置的信息。当然,既可以对所有的点具有模板上的位置,也可以对一个点具有模板上的位置的信息,对于其它的点,具有相对位置的信息。即,还能够根据容器的一个点和容器的尺寸定义。另外,对于被固定的点,也可以在模板上的位置定义,对于可变的点,也可以在相对的位置定义。
属性信息表示参照图4和图5而说明过的容器的边、边、轴或者它们的交点等的属性。一个容器例如根据位置和尺寸,确定上边、下边、左边、右边、水平轴、垂直轴、各折点、中心点、宽度以及高度。对于这些单元,根据属性信息定义是可变的还是固定的。在通过图4的用户接口生成了文档模板的情况下,在选择容器的边、点、轴的状态下,由于在托板3 11内显示的菜单是“进行固定”“成为可变”等,因此通过操作者选择所希望的项目,来与所选择的点或者边相对应,在容器信息1903中写入“固定”“可变”任一个属性。刚生成容器后的既定值例如全部预先取为“可变”。另外,在该例子中,所谓对于一条边或者一个轴是“固定”,就意味着不是固定边或轴的长度或者长度方向的位置,而是固定与长度方向正交的方向的位置。另外,通过设定点或者边的属性,自动地确定其它的点或者边的属性的情况下,也写入该属性。例如,在把折点指定为“固定”的情况下,夹住该点的边也变为“固定”。反之也相同。另外,例如,如果把中心点的位置指定为“固定”,则在中心点的属性中写入“固定”,在水平轴和垂直轴的属性中也写入“固定”。这种情况下,如果宽度或者高度原样地保持可变,则宽度和高度的属性原样维持“可变”。
在关于添加关联的内容的信息(内容关联信息)中,例如,包括表示这是文本容器还是图像容器的种类的信息,插入到该容器中的数据源的识别符例如数据库名、记录名、字段名等的一部分或者全部,以及用于抽取内容的条件式等的关联信息。另外在文本容器的情况下,关于字体的信息,例如字体种类、尺寸、颜色、倾斜、加粗、下划线等字符修饰信息等也包含在内容关联信息中。
优先级信息19031是表示包含在模板内的容器中,优先地确定哪一个容器的尺寸的信息。例如,如果任一个都不是优先的,则对各容器提供相等的优先级的值。而且,例如,更高优先级的容器(称为优先容器)优先地进行尺寸变更。即,优先容器比非优先容器优先地计算其大小使得优先容器成为与内容尺寸相对应的大小。另一方面,非优先容器在确定了优先容器的大小以后,随后计算位置或者尺寸。在本实施方式中,优先级信息用非优先标志构成,该非优先标志对以链接相关联的各容器,宽度(或者高度)不会根据内容的尺寸而改变。而且,没有设置非优先标志的容器对于设置了的一方优先确定尺寸。优先标志在本实施方式中保存为相对高度方向和宽度方向独立的标志。
容器信息1903只保存设置在文档模板中的容器的数量。
(3)链接信息1904所谓链接是容器之间的关联,特别是把通过链接所连接的2个容器之间的距离作为固定(固定链接)或者可变范围(可变链接)的含义的信息。作为链接信息,例如,对于水平方向和垂直方向,分别包括2个容器的识别符,和表示在这些容器的相对的边之间设定了链接的信息,以及对于沿着链接的方向的容器之间的距离等。按每个所定义的链接保持链接信息。作为链接信息的方式,对于水平方向和垂直方向,也可以分别保持各容器的边的位置,也可以在该边之间保持表示设定了链接的含义的信息。
(4)固定信息1905包括用于定义可变部分以外的固定部分的信息。例如,在适用该模板生成的所有文本(所有记录)中能够定义共同的字符或者图像。对于字符或者图像,也可以不包含其数据本身,只是定义位置信息。当然,在模板上也包括用于定义布置的位置的信息。
图16是表示由布局编辑应用121进行的链接的设定方法的流程图。另外,图6A~图6C表示UI例子。使用这些

对容器设定链接的方法。
首先,布局编辑应用121为了设定链接,根据来自用户的操作指示,生成用于设定链接的容器(最低2个)(步骤1601)。接着,进入选择了图4所示的链接工具按钮406的状态(步骤1602)。图6A~图6C表示生成2个容器,从选择了链接工具的状态出发,进行了设定链接的动作时的用户接口的例子。按图6A~图6C顺序进行说明。
图6A的边0601、0602与上述图4的边407、408相同,是被固定的边。另外,锚点0603和0604与锚点409相同。首先,用户点击选择设定链接的一方的容器(步骤1 603)。接着,如图6B所述,把鼠标指针移动到另一方的容器进行点击(步骤1604)。图6B的线0606表示连接了在图6A中最初进行了点击的位置和移动后的鼠标指针的位置的线,是表示由用户在某个位置设定了链接的UI。在结束步骤1604以后,容器成为图6C的状态,在所设定的位置显示链接0607(步骤1605)。另外,通过设定链接,还自动地变更表示容器的对象(步骤1606)。边0608、0610是用虚线表示的边,表示可变的边。如图6C那样容器的边的状态发生变化是因为设定了链接,容器的边成为可变的,尽管设定了链接,但是为了防止引起所有的边是固定的这样的矛盾,就自动地进行的处理。另外,放大缩小图标(箭头)0609与图5的锚点图标505相同,是通过设定了链接,使容器能够变化的方向可视地显示给用户的对象。在图6C的例子中,左方容器的右边0608和右方容器的左边0610可变地发生变化,然而这只是一个例子,右方容器也可以变化成具有图4所示的滚动条413的设定。
如果从图19的数据处理的观点出发说明该处理,则如下所示。例如,在步骤1601中,通过生成容器,来定义容器信息3303。而且,在步骤1606中,布局编辑应用121把在步骤1603和步骤1604中选择的2个容器之间设定了链接作为链接信息进行存储。而且,在步骤1606中,布局编辑应用121根据需要改变设定了链接的2个容器的对置边的属性。例如,如果对置边的至少一方可变,则不需要变更边的属性。但是,如果双方都是固定的,则由于失去设定变更的意义,因此至少要使一方可变。在图16的例子中,可变地变更双方。当然,在变更了边的属性的情况下,对于所变更的属性,对变更了包含在容器信息1903中的属性的边改写该属性信息。
另外,在上述的记载中使用了“对置”,而除去视觉上线之间对置的情况以外,即使线本身不对置(即,即使2条线的长度方向投影不重叠),但是如果存在线的延长线对置的关系,也能够在其延长线之间设定链接。在本说明书中,也包括这样延长线对置的情况,对于用连接建立了关联的容器,采用边“对置”。即,例如在沿着模板的对角所布置的小容器之间,也能够设定链接。
如上所述,如果用链接添加关联的容器的对置边的一方可变,另一方固定,则可以根据内容使可变的边移动。而且,根据该可变边的移动量,固定边一侧的容器的自身进行平行移动(没有锚点的情况)。维持用链接定义的容器之间的距离(关于沿着链接的方向的距离)。如果双方的边可变,则根据内容的尺寸,容器的尺寸可变,但是在这种情况下还维持容器之间的距离。
图7表示由操作者进行的优先级的设定方法。图7的顺序由图1A、图1B、以及图2的计算机根据操作者的操作执行。图7的顺序从显示预先定义了的模板的状态开始。模板通过对每个模板定义模板名称或者在其中定义的容器,容器的属性等模板的属性信息,链接信息,固定信息等图19所示的信息来进行生成。
首先,布局编辑应用121在预览画面中,按照用户的操作选择设定优先级的容器(0701)。作为选择的方法,是使鼠标光标移动到希望设定的容器的位置,进行右键点击或者左键点击。接着,布局编辑应用121的用户接口模块103显示设定优先级的菜单(0702)。这里叙述的菜单是用鼠标的左键点击而显示的弹出式菜单,或者也可以在容器的性能中准备优先级设定对话框。而且,按照用户的操作设定优先级(0703)。关于菜单设定的详细情况在后面叙述。最后,在模板的预览显示画面中,根据所设定的优先级,变更并再次显示容器的UI(0704)。这时,检查包含在模板中的容器的优先级信息19031,如果设定优先标志,则清除与所设定的优先标志相对应的放大缩小图标,进行再次显示。所变更的UI的详细情况在后面叙述。
图8是用于对容器设定优先级而使用的弹出式菜单的UI。使鼠标指针在容器上移动,如果进行右点击,则在画面上显示弹出式菜单801。这里,如果用鼠标指针确定优先级,则像菜单0802那样显示分层的菜单。在图7中,能够选择“关于宽度,内容的尺寸不受到影响”和“关于高度,内容的尺寸不受到影响”的检验框。这里,所谓优先级,不是用数值指定顺序,而应该是表示受到对与该优先度相关联的容器插入的内容尺寸的影响,是否使容器的尺寸动态变化的优先标志。对两个容器设定链接,如果对一方容器设定上述的“关于宽度(或者高度),内容的尺寸不受到影响”这样的优先标志,则设定了该优先标准的容器在其它容器的尺寸变化中受到影响,但是并不会由该容器自身的内容而使尺寸发生变化。从而,如果设定上述优先级,则与添加关联的其它容器相比较优先度降低。
这里,从数据操作方面说明图7的处理步骤。在步骤0701中,如果选择容器,则例如在表示存储器的关注容器的区域中,存储所选择的容器的识别符。在步骤0701中,显示图8所示的菜单画面。这时,在菜单0802的检验框中,根据从图19的容器信息1903的优先级信息19031读取的、关于高度方向和宽度方向的优先标志的值,显示检验。即,如果设置优先标志,则在检验框中显示检验(在该意义下,本实施方式的优先标志是“非”优先标志。当然,如果使标准的意义相反,则由于按照字符原样而成为优先标志,所以不过是简单的称呼问题)的步骤0703中,布局编辑应用121使由操作者输入的(检验的)新的优先级的设定值反映到容器信息1903的优先级信息19031中。即,如果设置与被检验的检验框相对应的优先标志,则对与脱离了检验的检验框相对应的优先标志进行复位。最后,在步骤0704中,根据所反映的优先级信息,更新图8的用户接口显示。即,虽然参照图9A~图9D详细地进行了说明,但是在模板的预览显示上,根据优先标志的值,优先地明确显示成为指示变更对象的边。
在图9A~图9D中表示用于使上述的优先级明显可视地显示给用户的UI显示例子。图9A表示对于高度方向和宽度方向都没有设定优先级容器的状态。图9B表示对于宽度方向设定了优先级的容器的状态。在图9A和图9B中,容器由锚点0901固定在左上角。因此,边0903和0904被固定。另外,边0905和0906是可变的。图9A的容器在高度和宽度方面都不设置优先标志,由于根据内容尺寸变更尺寸,因此显示高度方向的可变符号0907(朝下的箭头)和作为宽度方向的可变符号的放大缩小图标(向右方向的箭头)0909。这是用图6的箭头0609表示的、表示了内容的可变方向的标志。
在图9A的显示中,显示在图8中所示的弹出式菜单0802,用户能够设定优先级。这里,假设由用户从图8的菜单0802中检验了“关于宽度,内容的尺寸不受到影响”检验框。于是,在图7的步骤0703中,设定表示「关于宽度,内容的尺寸不受到影响」的优先标志,保存在图19的优先级信息19031中。于是,在图7的步骤0704中,显示在图9B中表示的容器状态。在图9B中,没有显示(0910)放大缩小图标(箭头)0909。这是因为通过设定容器的宽度方向的优先级(优先标志),根据插入到容器中的内容的尺寸,来向不影响宽度的设定进行变化。其结果,为了把该设定可视地向用户表示,而删除表示了可变边的移动方向的箭头0909。即,用虚线的边表示根据由链接相关联的容器的尺寸变化而能够变更尺寸,通过清除放大缩小图标来表示不根据内容尺寸改变容器尺寸。
图9C表示其它情况的UI变更例子。表示在上下的边中设置锚点0911,这些边沿着上下方向固定。这种情况是固定了容器的宽度方向的中心轴的中心闭锁的状态。边0913表示被固定的边。边0915表示可变的边,放大缩小图标0911表示可变边的变化方向。即,左右边的位置都根据内容尺寸发生变化,根据链接容器尺寸等位置也发生变化。在图9C的状态下,显示在图8中所示的弹出式菜单,设定优先级。这里,假设由用户检验了用图8的0802表示的“关于宽度,内容的尺寸不受到影响”检验框。于是,在图7的步骤0703中,布局编辑应用121设定表示“关于宽度,内容的尺寸不受到影响”的优先标志,保存在图19的优先级信息19031中。于是,显示图9B所示的容器状态。在图9D中,没有显示放大缩小图标0917。删除图标0917的理由与图9B相同。与图9B的区别在于,由于在图9C中,容器两侧的边都是可变的,因此显示表示能够在两侧变更容器的尺寸的箭头。因此,如果设定上述的优先级,则删除两侧的箭头。这是因为采取以下的设定,即关于宽度,在所插入的内容尺寸中不受到影响。
这样,在容器的预览显示时,关于某个容器,对于宽度或高度的至少一个方向的容器尺寸(即边的位置),如果采用在该内容尺寸中受到影响的设定,则在模板的预览显示中,显示符号(放大缩小图标),该符号表示该容器的尺寸根据内容的尺寸,对于宽度或者高度方向是可变的。
图10表示使用了模板的布局的预览显示时的流程。该流程也由图1A~图2的计算机执行。首先,根据操作者的操作,选择所关注的模板及其预览模式(1001)。由此开始预览处理。本实施方式的自动布局系统具有两种模式布局模式,生成容器,在该容器之间建立关联,来生成布局;预览模式,对所生成的布局插入记录,预览实际上插入了记录后的布局结果。图7是布局模式的处理的一部分。
在该预览模式下,在所关注的模板的容器中,插入对应的记录的字段,对于该容器,按照所设定的优先级来计算容器的尺寸。这是布局计算。其中,预览模式是显示上的布局计算。即使在实际进行打印的情况下,也插入记录进行布局计算。这时的计算方法也相同。不同处是显示和打印,如果把图10的“预览”换成“打印”,则打印时的处理顺序也可以成立。
在预览模式下,布局编辑应用121选择进行预览的记录,并插入到模板中(1002)。可以适当地选择记录。对于把字段中的哪个字段插入到哪个容器的对应添加,在模板数据中,在该生成时进行指定。因此,这里根据模板数据,确定插入到每个容器中的字段。
在进行记录的插入时,为了布局该记录,进行布局计算。布局编辑应用121对于包含在模板中的容器检验是否有设定了优先级的容器(1003)。为此,对于包含在模板数据中的所有的容器信息,扫描优先级信息,判定是否有设置的部分。在该检验中,在判断为存在设定了优先级的容器的情况下,作为有优先级计算布局(1004)。关于有优先级时的计算布局方法,在图12中详细记述。在步骤1003中,在所关注的模板中不存在设定优先级的容器时,作为没有优先级来计算布局(1005)。对于步骤1005在图11中说明。接着显示在步骤1004或1005中计算的布局(1006)。即,与最终确定的容器保持一致,布置对应的内容,预览显示该图像。
对于其它的记录也判断是否进行预览(1007)。在步骤1007中,在对于其它的记录判断为不需要进行预览时,结束预览模式(1009)。如果对于其它的记录进行预览,则选择其它的记录,再次进行布局计算,进行预览(1008)。在不是预览模式的打印时,对于所打印的记录按顺序进行布局的计算。从而,不存在处理1007、1009。在结束了所有的记录的打印时刻结束处理。
图11是表示了图10的步骤1005中的没有设定优先级时的布局计算的方法的流程图。另外,图13A~图13C表示了这时的UI显示例子。
首先,求出计算布局的容器的集合(1101)。布局计算把用链接添加了关联的容器作为一个集合进行计算。例如,参照图15,则在页面上布局4个容器,在各容器之间设定关联。这时,容器A与容器B,容器C与容器D用链接添加关联。从而,容器A、B成为集合1,容器C、D成为集合2。如上所述,1501表示锚点,1502表示被固定的边,1503表示控制器,1504表示可变边的变化方向的箭头,1505表示可变的边,1506表示链接,1507表示滚动条。
接着,从步骤1101所求出的容器的集合中,选择用于计算布局的一个集合(1102)。而且,对于所选择的容器的集合进行布局计算。首先,对于包含在所选择的集合中的作为可变要素的两个容器(A、B),从所插入的数据的图像尺寸或者文本量计算各容器没有受到任何限制时的大小。具体地讲,布局编辑应用121判断容器A是图像数据容器还是文本容器。该判断如上所述,能够根据对容器设定的属性来进行判断。接着,布局编辑应用121读取插入到容器A中的数据,在容器A是图像数据容器的情况下,该图像数据的尺寸(宽度、高度的像素数和分辨率)成为不受到容器A的限制的大小。另外,在容器A是文本容器的情况下,根据该文本数据或者字符数、用容器A的容器属性指定的字体类型、字体尺寸、字符间距、行间距等字符属性,能够计算插入到容器A中的数据量。这里,文本容器的情况由于不能够确定为不考虑容器A的纵横比的限制,因此嵌入限制。在图15的例子中,容器A由于在左上方和左下方的角上设定锚点,因此高度(纵方向)变为固定。由此,布局编辑应用121对于作为容器A的基本图形而设定的宽度(横方向)的容器A,判断是否插入所计算的数据量(文本量)的字符。在判断为全部插入的情况下,容器A不变更以基本图形所设定的尺寸(宽度、高度)。另外,在判断为没有全部插入的情况下,容器A由于通过锚点设定其高度是固定的,因此向横方向延伸。这里,布局编辑应用121,如果容器A的宽度成为某种程度,则计算是否插入所计算的数据量的字符,算出容器A的尺寸。
接着,布局编辑应用121进行布局的最优化,使得所布局的容器的尺寸与实际内容的尺寸尽可能减少差异(1103)。具体地讲,布局的最优化在可以使尺寸动态发生变化地关联的容器中,使分别插入的内容的尺寸与所布局的尺寸的差尽可能相同。布局编辑应用121求出在步骤S1102中计算出的容器集合的尺寸,即容器A和容器B和链接1506(这里是固定链接)的总计尺寸,求出该总计尺寸与基本布局中的该容器集合的尺寸(在图15的例子中,相当于容器A与容器B的各个锚点图标的距离)的差。如果容器A和容器B的宽度增大,则在前面的步骤进行计算的情况下产生差分值。布局编辑应用121通过把该差分值平均分配在容器集合的各单元中,来进行布局调整。
布局编辑应用121进行布局的最优化,在违反了规则的情况下,再次进行计算以便不违反规则(1104)。作为这里记述的规则,是在布局生成时由用户设定的限制,是容器的尺寸和位置、可变链接时链接的长度等限制。是否违反限制,参照模板数据容器信息1903和链接的信息1904,把布局计算后的容器的位置或者尺寸等与所固定的边、折点、轴、中心点的位置、所固定的边的尺寸等进行比较,判断要固定的部分是否没有移动,或者是否没有超过移动的限制。如果进行布局使得不违反规则,即,如果确定了关注容器集合内的各容器尺寸和位置,则完成该集合的布局。而且,对页面上的所有容器集合实施步骤1102~1104,计算页面整体的布局(1105)。
其中,优化由于可以在内容没有收容用模板最初定义了的容器中的情况下进行,因此只要不变更相关联的容器的尺寸而收容相对应的内容,则也可以不进行上述优化的顺序。这种情况下,布局处理是在各容器中充填相对应的内容,并不伴随容器尺寸的变更。
图13A~图13C是在没有优先级的设定下进行布局时的预览模式的UI例子。图13A表示插入某记录确定布局的状态。1301、1302表示锚点,1303、1304表示被固定了的边,1305表示可变的边,1306表示可变边的变化方向的箭头,1308表示链接。在该状态下,变更记录符号插入不同尺寸的内容。图13B重迭表示在图13A的状态下重新计算布局后的内容的尺寸。双点划线1309表示插入到各容器中的内容的尺寸。而且,进行布局计算。图13C表示布局计算的结果。布局计算后的各容器的尺寸进行计算使得与实际插入的内容的尺寸具有同等的差异,而且,进行计算使得不违反上述的规则。如图13C所示,图13B中表示的所插入的内容尺寸(1309)和计算后的内容尺寸(1310)的双方中具有同等的差异。因此,首先求出与内容尺寸一致的容器的移动边的位置。该位置由容器尺寸与收容它的容器的固定边的关系求出。即,确定要移动可移动的边的位置,使得成为全部收容内容的尺寸。在可移动的边有2条的情况下,例如,使它们移动相同距离。对于所关注容器集合内的各容器分别进行以上动作。而且,确定再次移动可变边的位置,使得各容器之间的距离成为由链接定义的距离。这时,使可移动的边再次移动,使得2个容器的可移动的边的中间点的位置不进行移动。这样来进行布局计算。
图12是表示图10的步骤1004中的设定了优先级时的计算布局的方法的流程图。另外图14A~图14C表示了这时的预览模式的UI显示例子。使用这两方面进行说明。图14A的1401和1404是被固定的边,1402和1403是锚点,1405是可变的边,1406是表示可变边的变化方向的箭头,1407表示链接。
首先,布局编辑应用121从所关注的模板中选择设定了优先级的容器和通过链接与该容器建立关联的容器(1210)。所谓选择,例如可以把表示相当于该条件的容器的识别符预先存储在参照用存储区中。图14A的2个容器相当于所选择的容器。右容器是设定了优先级的容器,左容器是与其建立了关联的没有设定优先级的容器。接着,布局编辑应用121确认设定的优先级的内容(1202)。即,参照模板数据判断是设定了上述的“根据内容的尺寸,容器的宽度不受影响”或者“根据内容的尺寸,容器的高度不受影响”这样的优先标志中的某一个,还是双方都设定了。设定了优先级的容器与关联了该容器的容器相比,其优先级低。在图14A的情况下,右容器设定“根据内容的尺寸,容器的宽度不受影响”,布局计算的优先度比左容器低。从而,只是利用左容器的尺寸变化,右容器的尺寸将受到影响。
布局编辑应用121优先地计算优先级高的容器的布局(1203)。即,对于根据填充在优先级高的容器中的内容的尺寸而变更的容器,计算可变边的位置。在具有多条可变边的情况下,计算可变边的位置使得各条边移动相同的量。之后,布局编辑应用121计算优先级低的容器的布局(1204)。即,计算优先级低的容器的可变边的位置,使得离优先的容器的距离维持为由链接所定义的距离。
在图14A中表示的容器的布局中,假设分别在左和右的各容器中插入用图14B的双点划线1408和1409所示的尺寸的内容。在该例子中,由于左容器优先级设定为较高,因此首先计算左容器的布局。在左容器中由于插入内容1408,因此作为可变边的容器的右边向右移动。这时由于没有从右容器受到影响,因此只要不违反规则就可以放大。从而,对于左容器,能够以尽可能理想的尺寸来布局所插入的内容。在图14A~图14C的例子中,左容器能够放大到与所插入的内容相同的尺寸。
而且,判定是否结束了对具有优先级的容器的处理,即,在包含于所关注的模板内的添加优先度的容器中是否还有未处理的部分,若有则从步骤1201开始反复进行处理(1205)。
接着,布局编辑应用121对于优先级低的右容器进行计算布局。由于已经确定了左容器的尺寸,也确定了链接的长度,因此也确定能够不违反规则布局的右容器的尺寸。从而,用该尺寸显示内容1409。即,右容器的左边移动到从左容器的右边离开了链接1407的距离的位置。最后,对于包含在所关注模板内的没有设定优先级的容器,用与前面说明过的<计算布局方法(没有优先级)>相同的方法进行计算(1205)。
另外,容器的内容,特别是优先级低的容器的内容在显示(打印)时,有时并不表示全部,因此能够指定内容的缩小(或者放大)、剪裁等。该指定也按图7的顺序对每个容器设定优先级,在进行预览或者打印时用对内容进行布局的处理,根据指定对内容实施放大、缩小或者剪裁等。另外,最优化由于可以在内容没有被收容到在模板所最初定义了的容器中的情况下进行,因此如果是不变更优先的容器的尺寸而在其中收容与其相对应的内容,则不进行上述最优化顺序也可以。在这种情况下,布局处理是填充与各容器相对应的内容,不伴随容器尺寸的变更。
如上所述,本实施方式的优先级信息,具有第1值(优先标志接通)和表示优先级比第1值高的的第2值(优先标志断开),布置装置在优先级的值是第2值的情况下,根据所布置的数据的尺寸变更该区域(容器)的尺寸,在优先级的值是第1值的情况下,根据其它区域的尺寸变更该区域的尺寸。
另外,在模板中还至少包括表示2个上述区域之间的距离的链接信息,布置装置维持由链接信息所示的区域(容器)之间的距离,并且按照优先级所示的等级对上述容器布置数据。
另外,本实施方式还具备生成模板的生成装置,所述模板包括用于布置数据的区域信息(容器信息),和表示与该区域相关联的优先级的优先级信息。
另外,还具备预览显示由布置装置布置(布局)了数据的文件的显示装置,该显示装置通过箭头(放大缩小图标)等的有无可识别地识别显示与区域(容器)相关联的优先级。
这样,如果依据本实施方式,则由于在自动布局中,可以对各容器设定优先级,因此布局的自由度高,用户能够与其它的容器相比较把所要求的容器优先地进行尺寸计算。另外,由于能够把所设定的优先级可视地显示在用户接口上,因此用户易于预测自动布局后的布局结果。
作为本发明的第2实施方式,说明在图7和图8所示的优先级的设定方法中,不使用在第1实施方式中说明过的弹出式菜单或者对话框来进行设定的方法。在该方法中,按照链接设定时选择容器的顺序设定优先级。
图17是通过进行链接的生成自动地设定优先级的顺序的流程。图17表示模板模式的动作。图18A~图18C表示执行该处理时的UI例子。
首先,布局编辑应用121根据操作者的操作生成容器(1701)。所生成的容器的位置或者尺寸、边的属性或者相对应的内容信息保存在模板数据的容器信息1903中。另外,本实施方式的情况由于使用链接进行优先级的设定,因此需要生成用链接建立关联的至少2个以上的容器。
接着,如果选择链接工具则转移到链接生成模式(1702)。而且,根据操作者的操作,在设定优先级的容器中生成链接。布局编辑应用121在设定了链接的容器中,较高地设定先选择出的容器的优先级(1703)。而且,如果对于从选择出的容器到通过鼠标的拖曳等进行关联的容器之间生成链接,则接着对通过鼠标等作为链接对象的选择的容器设定低优先级(1704)。而且,各个优先级保存在优先级信息19031中(1705)。具体地讲,优先级信息可以是与所选择的顺序相对应的数值等。另外,在使用第1实施方式的“优先标志”的情况下,设置低优先度的容器即通过鼠标的拖曳操作等作为链接对象所选择的容器的优先标志。这时,在对于高度方向和宽度方向分别设置的优先标志内,设置对于链接方向的优先标志。即,如果链接设定为横方向,则根据内容的尺寸设定表示容器的宽度不受影响含义的优先标志,如果链接设定为纵方向,则根据内容的尺寸设定表示容器的高度不受影响含义的优先标志。
使用图18A~图18C,说明执行图17的处理时,作为模板模式的用户接口所显示的画面的一个例子。图18A表示生成了容器的状态。1801和1802表示被固定的边,1803和1804表示锚点,1805表示指针。这里,将左容器的优先级设定得较高。从而,操作者如图18B所示那样首先选择左容器,对于右容器设定链接。这时,如用箭头1806所表示的那样,为了向用户可视地显示优先级为左容器>右容器这样的关系,也可以在箭头等的UI显示中进行变更。如果设定链接,则在图18C中所示的容器的设定中进行变更。如在第1实施方式的[链接设定方法]中记述的那样,由于设定了左容器向右容器的链接,因此显示链接UI1807或者被固定的边变更为可变边1808。进而,由于左容器一方的优先级高,因此对于左侧的容器,利用放大缩小图标(箭头)1809来显示变化方向,而在位置1810中不进行显示。这表现为对于右容器,与设定了链接相一致,设定在第1实施方式中记述的优先级“根据内容的尺寸,容器的宽度不受影响”。在图18A~图18C中,由于是对横方向设定链接,因此设定关于宽度的优先级。但是,不言而喻,如果是对纵方向设定链接,则设定关于高度的优先级。
另外,也可以是兼有第1实施方式和第2实施方式的优先级的添加方法的系统。该情况下,能够如第2实施方式那样,通过链接的设定赋予优先级,或者,如第1实施方式那样,作为容器的属性变更优先级。通过这样的动作,能够解除与链接的设定一并进行设定的优先级。
另外,在利用对容器提供了优先级的模板进行预览显示或者打印的顺序中,实施与第1实施方式同样的布局计算处理。
这样,本实施方式按照把用于布置数据的区域(容器)之间添加关联的操作(图17图18A-C的操作)中的区域选择的顺序(链接方与链接对象的顺序),对所选择的各区域提供优先级。
如上所述,依据本实施方式,由于能够按照链接设定时的容器选择的顺序来设定容器的优先级,因此优先级的设定操作就变得简单。
图20表示汇总了本发明的文件处理装置的主要构成单元的功能框图。文件处理装置具备存储装置2001和布置装置2002。在存储装置2001中,存储包括表示用于布置数据的区域的区域信息2001d和表示与该区域相关联的优先级的优先级信息2001b的多个组合的模板2001a。
另外,布置装置2002根据模板2001a,按照由优先级2001的所示的顺序,在上述区域中布置相对应的数据,适合上述数据地变更上述区域的尺寸和位置,使得不干扰与高于该区域的优先级相关联的区域。
另外,在存储于上述存储装置2001内的模板2001a中,按每个上述区域信息2001d独立地包含上述优先级信息2001b。
另外,上述优先级信息2001b具有第1值和比第1值优先级高的第2值,布置装置2002在优先级2001b的值是第2值的情况下,根据所布置的数据的尺寸变更该区域的尺寸,在优先级2001b的值是第1值的情况下,根据其它区域的尺寸变更该区域的尺寸。
另外,在模板2001a中,还至少包括表示上述2个区域之间的距离的链接信息2001c,上述布置装置2002维持由链接信息2001c所表示的上述区域之间的距离,按照优先级2001b表示的等级在上述区域中布置数据。
另外,还具备生成装置2003,生成包括用于布置数据的区域信息2001d和表示与该区域相关联的优先级的优先级信息2001b的模板2001a。
另外,还具备预览显示由布置装置2002布置了数据的文件2001e的显示装置2004,上述显示装置2004可识别地显示与上述区域相关联的优先级。
另外,上述生成装置2003按照把用于布置数据的区域之间添加关联的操作中的区域选择的顺序,对所选择的各区域赋予优先级。
另外,在存储于上述存储装置2001内的模板2001a中,包括设定了优先级信息2001b的区域信息2001d和没有设定优先级信息2001b的区域信息2001d。
上述布置装置2002,当在上述区域信息2001d中设定了上述优先级信息2001b时,按照由上述优先级信息2001b表示的顺序布置对应于上述区域的数据,在上述区域信息2001d中没有设定上述优先级信息2001b时,通过根据对应于该区域的数据尺寸动态地进行布置,来确定布局。
对于第1实施方式和第2实施方式,分别说明了添加了优先级的容器尺寸的变更处理。在第1实施方式中独立地对各容器赋予优先级,在容器尺寸的调整时按照进行该调整的顺序来实现优先级。
注意到本发明可以应用于包含单个装置的设备或应用于由多个装置组成的系统。
而且,可以这样来实现本发明直接或间接地向系统或设备供给能实现上述实施方式的功能的软件程序,用系统或设备的计算机读出供给的程序代码,然后执行该程序代码。在这种情况下,只要该系统或设备具有该程序的功能,实现的模式就不必依赖于程序。
因此,由于本发明的功能由计算机实现,安装在计算机中的程序代码本身也实现本发明。换句话说,本发明的权利要求也覆盖以实现本发明的功能为目的的计算机程序。
在这种情况下,只要该系统或设备具有该程序的功能,该程序就可以以任何形式执行。例如,作为目标代码,是由解释器执行的程序,或是供给到操作系统的脚本(scrip)数据。
作为供给程序的存储介质,例如,可以是软盘、硬盘、光盘、光磁盘、CD-ROM、CD-R、CD-RW、磁带、非易失性存储卡、ROM、以及DVD(DVD-ROM和DVD-R)。
关于供给程序的方法,一个客户计算机可以使用该客户计算机的浏览器连接到互联网的网站,并且本发明的计算机程序或该程序的可自动安装的压缩文件可以下载到例如硬盘的记录介质。而且,本发明的程序可以通过将构成该程序的程序代码划分为多个文件并从不同的网站下载该文件来进行供给。换句话说,本发明的权利要求还覆盖一个下载到多个用户的WWW(万维网)服务器,由计算机实现本发明的功能的程序文件。
而且,也能对本发明的程序加密并存储在存储介质例如CD-ROM上,向用户分配存储介质,允许符合某些要求的用户经互联网从网站下载加密的密码信息,并且允许这些用户通过使用密码信息对程序进行解密和重新加密,由此,该程序安装到用户的计算机中。
此外,除了由计算机通过读入程序来实现根据该实施方式的上述功能的情况之外,还可以运行在计算机上的操作系统等进行全部或部分的实际处理以便可由该处理实现上述实施方式的功能。
此外,在从存储介质中读出的程序写入到插入计算机内的功能扩展板或写入到提供在连接于计算机的功能扩展单元中的存储器之后,安装到功能扩展板上的CPU等或功能扩展单元,进行全部或部分的实际处理以便可由该处理实现上述实施方式的功能。
在不脱离本发明的精神和范围的前提下,可以有许多明显不同的实施方式,因此,可以理解为,本发明不限于上述具体实施方式
,而是用下面的权利要求中来限定。
权利要求
1.一种文件处理装置,能够根据要对文件进行布局的数据来动态地变更文件的布局,其特征在于包括存储部,用于存储包括表示用于布置数据的区域的区域信息和表示与该区域相关联的优先级的优先级信息的多个组合的模板(2001);布置部,根据上述模板按照由上述优先级表示的顺序布置对应于上述区域的数据,适合上述数据地变更上述区域的尺寸或者位置,使得不干扰与高于该区域的优先级相关联的区域(2002),其中,在存储于上述存储部(2001)的模板中,按每个上述区域信息独立地包含上述优先级信息。
2.根据权利要求1所述的文件处理装置,其特征在于上述优先级信息具有第1值和比第1值优先级高的第2值,上述布置部(2002)在上述优先级的值是第2值的情况下,根据所布置的数据的尺寸变更该区域的尺寸,在上述优先级的值是第1值的情况下,根据其它区域的尺寸变更该区域的尺寸。
3.根据权利要求1所述的文件处理装置,其特征在于在上述模板中,还至少包括表示上述2个区域之间的距离的链接信息,上述布置部(2002)维持由上述链接信息所表示的上述区域之间的距离,按照由上述优先级表示的等级而在上述区域中布置数据。
4.根据权利要求1所述的文件处理装置,其特征在于还具备生成装置(2003),生成包括用于布置数据的区域信息和表示与该区域相关联的优先级的优先级信息的模板。
5.根据权利要求1所述的文件处理装置,其特征在于还具备预览显示由上述布置部(2002)布置了数据的文件的显示装置(2004),上述显示装置(2004)可识别地显示与上述区域相关联的优先级。
6.根据权利要求4所述的文件处理装置,其特征在于上述生成装置(2003)按照把用于布置数据的区域之间添加关联的操作中的区域选择的顺序,对所选择的各区赋予优先级。
7.根据权利要求1所述的文件处理装置,其特征在于在存储于上述存储部(2001)内的模板中,包括设定了上述优先级信息的区域信息和没有设定优先级信息的区域信息,上述布置部(2002)当在上述区域信息中设定了上述优先级信息时,按照由上述优先级信息所表示的顺序布置对应于上述区域的数据,在上述区域信息中没有设定上述优先级信息时,通过根据与该区域相对应的数据尺寸动态地进行布置,来确定布局。
8.一种文件处理方法,使用存储在存储部中的、包括表示用于布置数据的区域的区域信息和表示与该区域相关联的优先级的优先级信息的多个组合的模板,根据要对文件布局的数据来动态地变更文件的布局,其特征在于包括布置步骤,根据上述模板按照由上述优先级表示的顺序对上述区域布置相对应的数据(S1203),适合上述数据地变更上述区域的尺寸或者位置,使得不干扰与高于该区域的优先级相关联的区域(S1204),其中,在存储于上述存储部内的模板中,按每个上述区域信息独立地包含上述优先级信息。
9.根据权利要求8所述的文件处理方法,其特征在于上述优先级信息具有第1值和比第1值优先级高的第2值,上述布置步骤在上述优先级的值是第2值的情况下,根据所布置的数据的尺寸变更该区域的尺寸,在上述优先级的值是第1值的情况下,根据其它区域的尺寸变更该区域的尺寸。
10.根据权利要求8所述的文件处理方法,其特征在于在上述模板中,还至少包括表示上述2个区域之间的距离的链接信息,上述布置步骤维持由上述链接信息表示的上述区域之间的距离,按照由上述优先级表示的等级对上述区域布置数据。
11.根据权利要求8所述的文件处理方法,其特征在于还具备生成步骤(S1701;S1705),生成包括用于布置数据的区域信息和表示与该区域相关联的优先级的优先级信息的模板。
12.根据权利要求8所述的文件处理方法,其特征在于还具备显示步骤(S1006),由显示装置预览显示由上述布置步骤布置了数据的文件,上述显示步骤可识别地显示与上述区域相关联的优先级。
13.根据权利要求11所述的文件处理方法,其特征在于上述生成步骤按照把用于布置数据的区域之间添加关联的操作中的区域选择的顺序,对所选择的各区域赋予优先级。
14.根据权利要求8所述的文件处理方法,其特征在于在存储于上述存储部内的模板中,包括设定了上述优先级信息的区域信息和没有设定上述优先级信息的区域信息,上述布置步骤当在上述区域信息中设定了上述优先级信息时,按照由上述优先级信息所表示的顺序布置对应于上述区域的数据,在上述区域信息中没有设定上述优先级信息时,通过根据与该区域相对应的数据尺寸动态地进行布置,来确定布局。
全文摘要
本发明提供一种文件处理装置和文件处理方法。对收容记录内容的可变尺寸的容器设定优先级,来提高布局的自由度。在模板中能至少设定2个容器和与其关联的链接(1407),链接(1407)把容器间的距离限制为固定,对优先级高的容器显示箭头图标(1406),表示容器的优先级。在用模板布局记录的情况下,在填充到各容器的数据未收容到容器时,移动优先级高的容器的可变边,根据内容尺寸扩大容器尺寸。接着,在不超过与链接(1407)连接的优先级高的容器的距离的限制的界限内,扩大或缩小由链接(1407)添加了关联的其它容器,这时,不变更已确定的优先级高的容器尺寸。然后,对所确定的容器插入内容来完成文件,进行显示或打印。
文档编号G06F17/21GK1648894SQ20051000510
公开日2005年8月3日 申请日期2005年1月28日 优先权日2004年1月30日
发明者小桥和文, 原健太, 牧野顺 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1