CN1648847A - 布局控制方法和布局控制装置 - Google Patents

布局控制方法和布局控制装置 Download PDF

Info

Publication number
CN1648847A
CN1648847A CNA2005100051023A CN200510005102A CN1648847A CN 1648847 A CN1648847 A CN 1648847A CN A2005100051023 A CNA2005100051023 A CN A2005100051023A CN 200510005102 A CN200510005102 A CN 200510005102A CN 1648847 A CN1648847 A CN 1648847A
Authority
CN
China
Prior art keywords
container
mentioned
display area
partial display
layout
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CNA2005100051023A
Other languages
English (en)
Other versions
CN1313916C (zh
Inventor
小桥和文
原健太
牧野顺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN1648847A publication Critical patent/CN1648847A/zh
Application granted granted Critical
Publication of CN1313916C publication Critical patent/CN1313916C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23DPLANING; SLOTTING; SHEARING; BROACHING; SAWING; FILING; SCRAPING; LIKE OPERATIONS FOR WORKING METAL BY REMOVING MATERIAL, NOT OTHERWISE PROVIDED FOR
    • B23D35/00Tools for shearing machines or shearing devices; Holders or chucks for shearing tools
    • B23D35/002Means for mounting the cutting members
    • B23D35/004Means for mounting the cutting members for circular cutting members
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23DPLANING; SLOTTING; SHEARING; BROACHING; SAWING; FILING; SCRAPING; LIKE OPERATIONS FOR WORKING METAL BY REMOVING MATERIAL, NOT OTHERWISE PROVIDED FOR
    • B23D19/00Shearing machines or shearing devices cutting by rotary discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Document Processing Apparatus (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明提供一种布局控制方法和布局控制装置。为了使得可以对于多个容器之间用一个操作统一设定链接,来提高用户操作的效率,所述布局控制方法,在局部显示区域之间设定使该局部显示区域相互连结的链接,并根据分配给该局部显示区域的数据,调整该局部显示区域的位置,其中所述局部显示区域容纳被分配的数据,将该数据在页面上进行布局。其中,该布局控制方法,对多个局部显示区域设定多个链接;指定多个局部显示区域;获得指定的局部显示区域的位置信息;在指示了多个链接的设定时,根据获得的位置信息,对指定的多个局部显示区域设定多个链接。

Description

布局控制方法和布局控制装置
技术领域
本发明涉及用于由文本和图像构成的文档的生成、编辑、打印的布局控制技术,更具体而言,适于可变数据文档的生成、编辑、打印。
背景技术
近年,由于商品的多样化,商品寿命变短,随着互联网的普及,利用它的消费者的客户服务指向增强等原因,所以CRM(CustomerRelationship Management:客户关系管理)、一对一营销的必要性就受到关注。这些方法目的在于,提高客户满意程度,开发、稳定客户。
一对一营销是数据库营销的一种,把客户的年龄、性别、兴趣、爱好、购买经历等个人属性信息做成数据库,分析其内容,提出符合客户需求的建议,作为典型的手法,例如有可变打印。最近,随着DTP(desktop publishing:桌面出版系统)技术的进展和数字打印装置的普及,开发有对每个客户定制文书并输出的可变打印系统,希望按每个客户将不同的信息量的内容最佳地布局并显示。
在以往的可变打印系统中,作为在文档上显示信息的区域,把容器(在帐票中,也称作字段区域),通过把数据库和容器相关联,来实现布局显示。
但是,因为作为粘贴文本和图像的局部显示区域的容器的尺寸是固定的,所以,当在容器中插入数据库的数据时,如果数据量比容器尺寸多,则产生文本的重叠或图像的裁剪,此外,如果数据量比容器尺寸小,就在容器内产生间隙,在任何情况下,都无法实现与欲显示的文本或图像的信息量相对应的最佳布局显示。
为了解决该问题,提出了根据信息量,使容器尺寸可变的自动布局系统。该自动布局系统可以可变地设定文本和图像的容器尺寸。在该自动布局系统中,使容器的尺寸可变,根据插入的数据量,可以进行改变以增大容器的尺寸。此外,还有以下的技术,即:在文本的情况下,当插入了未完全进入固定的容器尺寸内的数据时,就缩小文本的字体尺寸,在容器内显示全部的文本。
但是,在增大了容器的尺寸的情况下,就产生与文档上的其它容器重叠这样的问题。此外,在调节字体尺寸的情况中,当文本量变大时,还产生字体尺寸变得过小的问题。为了解决这些问题,进一步地,作为自动布局的技术,在日本特开平11-316792号公报的“布局设计装置”中,公开了当某容器的尺寸变大时,就变小与该容器相邻的其它容器的尺寸的技术。
但是,在上述的自动布局系统中,仅仅考虑与粘贴在各容器中的数据一致,增加作为容器的1例的可变表的行,依此来移动其它容器的对位的技术。即,为以下的技术:当可变表的行增加时,其它容器就相应地移动。但是,在上述的一对一营销中,希望在所确定的用纸尺寸的页面上布置用户所要求的容器数。即,在以往的单一可变表的技术中,存在不能对应这样的问题。因此,需要使数据插入各自的容器中,一边使各容器的尺寸可变,一边在所确定的用纸尺寸的页面上动态地配置所需数量的容器这样的自动布局系统。在这样的自动布局系统中,彼此的容器的尺寸是可变的,因此,必须一边使各容器相互推挤,一边动态地变化布局。为了动态地变化布局,需要在各容器之间设定关联(以下称作链接),但是,需要在容器之间,一个个地设定链接,就增加用户的操作负担。即,为了进行设定,以便对多个容器进行布局,并动态地对各容器进行布局,必须在容器之间设定链接,但是,如果容器的数量增加,则链接的数量也增加,在一个个设定链接的作业中,链接数量将与容器的数量成比例地增大,用户的操作负担就变大。
本发明是鉴于上述课题而做成的,其目的在于:可以对于多个容器之间,用一个操作来统一设定链接,实现高效的操作。
发明内容
为了实现上述目的,本发明的布局控制方法的特征在于主要包含以下的步骤。
一种布局控制方法,在局部显示区域之间设定使该局部显示区域相互连结的链接,并根据分配给该局部显示区域的数据,调整该局部显示区域的位置,其中所述局部显示区域容纳被分配的数据,将该数据在页面上进行布局,所述布局控制方法,包括:
指示步骤,用于对上述多个局部显示区域设定多个链接;
指定步骤,指定多个上述局部显示区域;
位置信息获得步骤,获得上述指定的上述局部显示区域的位置信息;以及
设定步骤,当由上述指示步骤指示了多个链接的设定时,根据上述获得的位置信息,对于由上述指定步骤所指定的多个局部显示区域,设定多个链接。
或者,为了实现上述目的,本发明的布局控制装置的特征在于主要包含以下的结构。
一种布局控制装置,在局部显示区域之间设定使该局部显示区域相互连结的链接,并根据分配给该局部显示区域的数据,调整该局部显示区域的位置,其中所述局部显示区域容纳被分配的数据,将该数据在页面上进行布局,所述布局控制装置,包括:
指示装置,对上述多个局部显示区域设定多个链接;
指定装置,指定多个上述局部显示区域;
位置信息获得装置,获得上述指定的上述局部显示区域的位置信息;
设定装置,当由上述指示单元指示设定多个链接时,根据上述获得的位置信息,对于由上述指定装置所指定的多个局部显示区域,设定多个链接。
本发明的其他特征和优点,可以通过下面的参照附图进行的说明而得到明确。相同的标号表示相同或类似的部分。
附图说明
附图包含在说明书中并构成其一部分,用于阐述本发明的实施方式,并与其描述一起说明本发明的原理。
图1A是表示本发明实施方式的计算机系统的结构的图。
图1B是说明主计算机的具体结构的图。
图2是表示除了在主计算机101上设置了布局引擎模块,还在引擎服务器227上设置了布局引擎225的结构的图。
图3是表示包含菜单栏、工具栏、工作区、浮动托板(pallet)的用户界面画面的图。
图4是表示具有容器之间的链接、锚点(Anchor)以及滚动条的典型的容器的图。
图5A是说明对构成容器的边的规则的图。
图5B是说明对构成容器的边的规则的图。
图5C是说明对构成容器的边的规则的图。
图5D是说明对构成容器的边的规则的图。
图6是表示链接的设定方法的流程图。
图7A~图7C是表示生成链接时的用户界面的画面显示例的图。
图8是说明布局计算的处理流程的流程图。
图9是说明布局计算的详细处理的流程的流程图。
图10A~图10C是表示与图9的流程对应的用户界面画面的显示例的图。
图11是说明布局计算时的容器的集合的图。
图12A和图12B是表示关于链接的自动设定的UI画面的例子的图。
图13是表示选择多个容器F、G、H的UI画面的例子的图。
图14A是表示为了将通过在图13中说明的操作选择了容器F、G、H显示给用户,而切换为UI画面的状态的图。
图14B是表示通过用鼠标指针1303按下(指定)容器来选择多个容器的例子的图。
图15是表示在多个所选择的容器F、G、H之间统一设定链接的状态的图。
图16是说明链接的自动设定的全体流程的流程图。
图17是概略说明链接的统一生成的处理流程的流程图。
图18是说明获得容器的位置信息的处理流程的流程图。
图19A是说明X方向的链接的生成的处理流程的流程图。
图19B是说明X方向的链接的生成的处理流程的流程图。
图20是表示图19B的步骤S1914的链接设定处理的流程的流程图。
图21A是说明X方向的链接设定的图。
图21B是说明X方向的链接设定的图。
图22A是说明Y方向的链接的生成处理的流程的流程图。
图22B是说明Y方向的链接的生成处理的流程的流程图。
图23是说明图22B的步骤S2214的链接设定处理的流程的流程图。
图24A是表示对链接的生成状态进行显示的UI画面例子的图。
图24B是表示对链接的生成状态进行显示的UI画面例子的图。
图25是说明关于锚点的设定的全体处理的流程的流程图。
图26是具体说明锁住图25的步骤S2501的左边的处理的流程的流程图。
图27是表示容器的左边的锁住状态的图。
图28是具体说明锁住图25的步骤S2502的右边的处理流程的流程图。
图29是表示容器的右边的锁住状态的图。
图30是具体说明锁住图25的步骤S2503的上边的处理流程的流程图。
图31是表示容器的上边的锁住状态的图。
图32是具体说明锁住图25的步骤S2504的下边的处理流程的流程图。
图33是表示容器的下边的锁住状态的图。
图34是表示锚点的设定状态的图。
图35是说明设定具有最大和最小值的柔性(flexible)链接的处理流程的流程图。
图36是说明设定具有最大和最小值的柔性链接的处理流程的流程图。
图37是说明锁住位于用户指定的范围中的边的处理的全体处理流程的流程图。
图38是具体说明锁住图37的步骤S3702的容器左边的处理流程的流程图。
图39是表示容器的左边的锁住状态的图。
图40是具体说明锁住图37的步骤S3703的容器右边的处理流程的流程图。
图41是表示容器的右边的锁住状态的图。
图42是具体说明锁住图37的步骤S3704的容器上边的处理流程的流程图。
图43是表示容器的上边的锁住状态的图。
图44是具体说明锁住图37的步骤S3705的容器下边的处理流程的流程图。
图45是表示容器的下边的锁住状态的图。
图46是说明自动布局系统中的基于典型的可变链接的容器配置的图。
图47表示设定自动布局系统中的可变链接的流程。
图48是表示设定链接4609的信息的对话窗口的例子的图。
图49是表示自动布局系统中的基于固定链接的布局结果的图。
图50是表示自动布局系统中的基于可变链接的布局结果的图。
图51是说明优先级的设定流程的流程图。
图52是表示通过容器的统一设定而生成的链接及其容器的图。
图53是表示自动优先级设定的对话框的显示例的图。
图54A是表示把X方向优先并设定优先级之前的容器和链接的图。
图54B是表示把X方向优先并设定了优先级之后的容器和链接的图。
图55A是表示把Y方向优先并设定优先级之前的容器和链接的图。
图55B是表示把Y方向优先并设定了优先级之后的容器和链接的图。
图56是说明优先级的设定处理的流程的流程图。
图57是说明以容器的集合为单位设定优先级的内容的图。
图58是表示设定优先级的对话用户界面(UI)画面的例子的图。
图59A和图59B是改变对容器进行设定的优先级的步骤的图。
图60是表示用于向设定优先级的模式转移的弹出菜单的例子的图。
图61是表示对用户显示优先级的设定的UI画面例子的图。
图62是表示对用户显示优先级的设定的UI画面例子的图。
图63是表示对用户显示优先级的设定的UI画面例子的图。
图64是说明设定了优先级的容器的布局计算处理的流程的流程图。
图65是说明对容器设定了布局的优先级时的布局计算处理的流程的流程图。
图66是表示由图65布局计算处理所显示的UI画面的例子的图。
图67A~图67C是表示由图65的布局计算处理所显示的UI画面的例子的图。
图68是说明在链接的自动设定中,不局限于最小距离时的处理流程的流程图。
图69是用于选择链接的自动设定方法的UI图。
图70A~图70B是说明在链接的自动设定中,选择了不局限于最小距离的自动链接设定方法时的链接生成处理的流程的流程图。
图71是说明通过图70的处理,在X方向进行链接的设定时的图。
图72是表示在图70A和图70B的链接自动设定中,选择了不局限于最小距离的自动链接设定方法时的具体例的图。
图73是用于选择链接的自动设定处理中的链接生成方向的UI图。
具体实施方式
参照附图,详细说明本发明的优选实施方式。
(系统结构图)
图1A表示可变地设定容器尺寸来打印文档的系统100。在图1B中详细说明的主计算机101的控制下,实施在该系统中执行的控制、容器之间的链接设定。在图6中描述的处理,在布局控制装置即主计算机101内实施,由软件的整体或其一部分执行,使得在系统100上变为可执行的布局编辑应用程序121(本发明的布局控制程序)。特别地,通过基于主计算机101的软件来执行布局的编辑和打印的步骤。
软件存储在包含以下描述的存储装置的计算机的可读介质中。软件从计算机的可读介质下载到主计算机中,并执行。这样的软件、记录在介质中的计算机程序、或存储该程序的计算机的可读介质,作为执行与计算机相关的文档的布局编辑和可变数据的打印所需要的运算处理和显示控制、布局控制、关于内容的信息处理的装置,来特别指定计算机的功能。
主计算机101与键盘132和鼠标133这样的指示设备等输入装置、显示装置144连接,并按照状况,与包含本地打印机145的输出装置连接。输入/输出(I/O)接口138能够把主计算机101连接在网络107上,把系统100连接在其它计算机装置(例如数据库服务器117)上。典型的网络107是局域网(LAN)或广域网(WAN)。
典型的主计算机101,至少包含:一个处理单元135;例如由半导体随机存储器(RAM)或只读存储器(ROM)构成的存储单元136;包含视频接口137的输入/输出(I/O)接口;以及用于键盘132和鼠标133的I/O接口143。存储装置139包含硬盘驱动器140和软盘驱动器141。这里虽未图示,但是磁盘驱动器也能够作为存储装置使用。
CD-ROM驱动器142作为非易失性的数据源而提供。主计算机101能够通过GNU/LINUX和微软Windows那样的操作系统、按照操作系统而形成的计算机系统的操作,从相互经由连接总线134进行通信的主计算机101的处理单元135来利用I/O接口143。作为包含图1A所示的主计算机101的系统的例子,考虑到IBM兼容PC、SUN的Sparcstation或包含这些的计算机系统。
布局编辑应用程序121典型的是存储在硬盘驱动器140中,由处理单元135读出并执行。从存储程序121的存储装置139和网络107所获得的数据,使用硬盘驱动器140,或与它呼应,使用存储单元136,在CD-ROM或软盘上把应用程序121编码,通过对应的CD-ROM驱动器142或FDD141读入来提供给用户。
或者,作为另一方法,可以从网络107由用户安装应用程序121。也可以从磁带、ROM、集成电路、光磁盘、无线、主计算机101和其他设备间的红外线通信、PCMCIA卡那样的计算机可读卡、电子邮件通信、电子邮件通信、具有WEB站点上的记录信息的互联网或企业内部互联网、以及其它适当大小的计算机可读介质,把软件加载到主计算机101内。但是,这些计算机可读介质只是相关的计算机可读介质的规范,并不限定为这些,也可以使用其它计算机可读介质。
此外,命名为布局编辑的应用程序121是用于进行可变数据的打印(VDP)的程序模块,包含两个软件组件。其中第1个模块是布局引擎模块105,它是根据数据插入的局部显示区域即容器(矩形的范围)的尺寸和位置的限制,从存储在数据库119中的可变数据中一个记录一个记录地读入,从读入的数据和容器的限制计算读入的数据所插入的容器的大小和位置的软件模块。布局引擎模块105作为确定各局部显示区域(容器)的尺寸和位置的应用程序来进行动作,通过对省略图示的打印驱动输出描画信息,打印驱动进行可变数据文档的图像描画处理,生成打印数据。
第2个模块即用户界面模块103是对用户生成文档模板,在文档模板内提供把数据库和容器关联的机制的模块。用户界面模块103和布局引擎模块105可以经由信道123进行通信。用于文档生成的数据源存储在位于由运行数据库应用程序的其它计算机所构成的数据库服务器117上的数据库119中。主计算机101能够通过与网络107的连接而与数据库服务器117通信。当实施可变数据的打印时,布局编辑应用程序121生成保存在由主计算机101或其它计算机构成的文件服务器115中的文档模板。此外,布局编辑应用程序121生成由合并了数据的文档模板构成的文档。这些文档保存在主计算机101的存储装置139中,或保存在文件服务器115中,或直接由打印机113打印。
打印服务器109是对未直接连接在网络上的打印机113提供网络功能的计算机。打印服务器109和打印机113经由典型的信道111而进行连接。
图2是表示除了在主计算机101上设置布局引擎模块105之外,还在引擎服务器227上设置布局引擎225的结构的图。引擎服务器227由典型的计算机构成,保存在文件服务器115中的文档模板在有打印和其它目的时,为了利用布局引擎225而生成文档,可以与保存在数据库119中的数据结合。这样的操作在用户界面模块103的控制下,通过用户界面(UI)画面进行输入,可以进行设定,以便只打印特别指定的记录。
(应用程序结构图)
(主窗口)
图3所示的应用程序窗口301通过用户界面模块103(图1),在操作时显示在显示装置144上。应用程序窗口301,具有:可以变为不显示、移动到屏幕上的各种地方的菜单栏302和工具栏303、可以根据鼠标133的位置和动作移动地方的工作区306、选项托板311和光标/指示设备313,由这些来付与特征。
菜单栏302如公开的技术那样,具有在菜单选项的分级下扩展的多个菜单项304,工具栏303具有利用应用程序的特别模式变为不显示或显示的多个工具按钮305。选项的标尺308用于表示工作区内的指针、页、行、边距引导、容器或对象的位置。托板311用于访问可变数据库那样的追加功能。托板311具有提供用于移动、调整尺寸、关闭的窗口控制功能的按钮312。根据选项,托板311可以显示在工作区的前面,或者隐藏在背面。此外,对于托板311的显示控制,也可以只限制在应用程序窗口301的范围内,或在应用程序窗口301的外侧显示一部分或其整体。
在工具栏303中至少具有用户可以选择的“按钮”(403~406)(例如,参照图4)。下面说明按钮403~406。
选择工具按钮403用于把容器的边选择、移动、改变尺寸,锁住(固定)容器或解锁。通过拖动多个容器的周边,或在选择多个容器时持续按住CTRL键,就可以选择多个容器。
图像容器工具按钮404用于生成具有静态或可变图像的容器。
文本内容工具按钮405用于生成具有静态或可变文本的容器。
链接工具按钮406用于生成在容器之间进行添加关联的链接,还用于控制链接的距离。
这些按钮如公开的技术那样,作为按照操作状况进行变化的图标而安装。
布局编辑应用程序121的图3所示的应用程序窗口301,通过在页面内布置各容器和链接,能够确定基本布局。所谓基本布局,是在可变数据的打印中成为基本的布局。基本布局中的所有容器为固定容器时,全部记录的打印结果的布局变为相同。此外,当基本布局内的各容器为后述的可变容器时,根据以记录单位读入的数据量和尺寸,各容器的尺寸和位置就在后述的限制的范围内变动。因此,用布局编辑应用程序121生成的文档模板始终确定基本布局,当包含可变容器时,就根据读入的数据来调整最终的打印品的布局。
(文档模板)
图3所示的工作区306用于显示和编辑文档模板的设计。它可以使用户在初步准备中设计打印的文档的外观,使用户知道被合并的文档根据可变数据的量和尺寸做怎样的变化。当把外部的数据库链接到模板时,能够在这些容器中显示可变文本和图像,以便能够预览现在的文档。当使光标移动到容器上时,或选择了容器时,能够总是显示文档的构造和可变数据容器。
工作区306由滚动条307、选项的标尺308和文档模板309付与特征。文档模板309能够显示多个页面。提供的文档模板的页面尺寸作为公知的技术,由用户指定。例如通过从菜单的“文件”选择“页面设定”,显示设定页面尺寸的对话框,在那里反映用户指定的页面尺寸。各文档的实际的页数可以根据可变数据变化,如果可变数据无法容纳在1个页面中,当在基本布局中没有在预定的用纸尺寸的页面中容纳各容器的限制时,就自动生成追加的页面。为了在预定的用纸尺寸的页面中容纳各容器而在基本布局中设定限制(可以通过后述的锚点等来设定)时,在页面内各容器一边相互推挤,一边确定各容器尺寸和位置,按照需要来缩小插入的可变数据,对各记录动态地确定布局。
在图3中用虚线表示的页面内的边界线,表示页面上的可打印的对象的最大宽度,是可以任意设定的页边距310。此外,图4是表示可以在1个页面的文档模板309上显示的对象的例子的图,在图4中,表示多个容器407和408,通过固定容器的边414的位置的锚点图标409和不固定的边410、链接412、滚动条413来规定容器之间的相互关系。锚点图标409可以设定在容器的矩形的角、边或容器的中央。如果设定锚点图标409,则设定的地方的位置变为固定。即在图4的例子中,锚点图标409设定在容器407的左上角,因此,表示容器407在插入可变数据,可变数据的图像尺寸或文本量多时,可以向右和向下扩大。当在边上设定锚点图标409时,该边变为固定,可以向其它3边的各方向扩大。此外,当锚点图标409设定在容器的中央时,可以向4方向扩大,使得容器矩形的中央位置不变。后面详细描述链接412,但是表示容器407和容器408相互关联,表示以下情况,即:保持对该链接设定的长度(可以指定范围),并且可以向右移动容器408。滚动条413表示可以沿着与设定的边平行的方向移动。
(容器)
这里,对容器加以说明。容器是以记录单位从可变数据文件将固定或可变的文本/图像插入到文档模板内,并进行描画的空间(把它称作局部显示区域),如图4所示,与其它容器或对象一并布局。通过用户界面画面,根据来自用户的指示,通过鼠标133的操作,来对容器移动、调整尺寸、再生成。
容器由锚点图标409、链接412、滚动条413规定关于容器的变形的限制条件。根据文本和图像数据的信息量,在允许变形的方向控制容器空间的变形,在容器内对文本数据和图像数据进行布局。当对两个容器需要相互变形时,按照要存储在各容器中的文本数据和图像数据量,(在对各容器没有压力的状态下)控制各容器的形状,以使相互的容器的变形均衡。
容器通过作为指示设备的鼠标133的动作,特别指定在工作区内的位置(图3的313),在作为用户界面的画面内(图3)进行移动、尺寸的调整,还可以追加新的容器。容器具有以下功能:通过锚点图标、链接、滚动条,设定对于容器之间的相互关系的变形的各种条件;显示内容的视觉表现;以及容器之间的相互作用和容器内的信息的编辑。这里把容器定义如下。
(1)容器是输入固定或可变的内容,可变内容从数据源获取来数据,在不同的文档中根据不同的数据,使容器尺寸可变,它是动态的。可变内容包含动画的内容、或用其它方法改变时间的内容,不适合打印,所以并不是所需要的。同样,固定内容在使用内容而生成的全部文档中显示为相同。但是,当设定可变内容和链接时,通过可变容器的动作,进行显示控制,以使固定内容在各文档中显示位置不同。
(2)容器具有应用于内容的背景色、边界、字体风格等文本设定的装饰功能。把这样的设定称作容器属性。可以按各容器设定容器属性,但是,也可以按与某容器相同的容器属性来进行设定。
(3)容器在生成文档时,与来自数据源的数据合并。装饰功能对典型打印的输出品进行反映,而无论它是怎样的固定内容,并对反映了装饰的结果进行可视化。可变内容从数据源带来特定的数据的显示。即对于特定的数据,按照对容器设定的条件,可变地设定容器的尺寸。可变设定的容器的布局、及容器内的特定数据的表现,例如,通过打印机113打印,或在显示装置144上显示,或通过双方进行处理。
(4)对于容器的设定,系统具有用户界面模块103,例如,具有用于容器的编辑和显示设定的人机对话(interactive)的图形用户界面(GUI)。而且,用户界面的要素显示在显示装置144上。但是不打印文档。用户界面模块103在界面画面上显示背景色或字体等关于容器的几个装饰功能,能够在容器的设定、编辑、容器的显示中追加这些装饰功能。
(5)作为用户界面模块103的设定的例子,在为了以对话方式改变、显示容器之间的边界或容器的尺寸和位置,而变化对容器设定的转角的图标,或从数据源合并数据的情况下,就设定容器的动作(再涂数、线、图标的设定、文本的编辑)。
(对容器的限制)
容器为了显示各文档中的内容,而存在把容器与内容相关联,进行显示控制,控制布局的限制。这些限制(把固定、可变内容与容器相关联),是用户由一个文档模板控制多个文档的主要方法。限制的例子例如有容器的内容的高度为最大值是4英寸的限制。作为另一个限制,容器的内容的左边缘在各自的文档中必须在相同的水平位置显示。为了使用GUI来显示、编辑这样的限制,可以设定在此所记述的内容。
为了图像具有在页面上所定义的位置,内容的配置也特别指定它的位置。容器具有位置和尺寸,在可变数据的打印中,按照插入容器内的内容,在容器的设定的布局的条件下,可以显示、编辑内容。容器可以由用户指定文档的内容的尺寸和位置。因为从几个文档生成一个文档模板,所以容器能够指定由用户界面模块103提供的对容器的限制。
构成一个容器的边,定义关联的内容在文档内显示的虚拟的边界线。例如,矩形的容器的左边提供配置所关联的内容的左侧的位置,同样地,容器的高度提供与所生成的文档相关联的内容的高度的限制。
在以下的记载中,对为了限制内容的显示而使用的某值进行定义的用语“固定”,在全部文档中是相同的。
(1)如果文档的宽度固定,则分配给关联的内容的宽度在全部文档中变为相同。
(2)如果文档的高度固定,则分配给关联的内容的高度在全部文档中变为相同。
(3)如果距离的限制固定,则指定的距离成为全部文档的限制。
(4)当容器的左右边固定时,容器的高度或垂直方向的位置为了把内容完全容纳在容器内,容器尺寸可以在允许变形的高度方向或垂直方向进行变化。
(5)当容器的上下边固定时,容器的宽度或水平位置为了内容完全容纳在容器内,容器尺寸可以在允许变形的宽度方向或水平方向进行变化。
(6)容器的垂直轴与容器的右边和左边平行,是位于中间的虚拟的垂直线。如果容器的垂直轴固定,则容器的左右边的水平位置的平均在全部文档中相同。在该限制下,容器的宽度有可能变化,左右边双方在不同的文档中,有可能离垂直轴最远,也有可能最近,但是轴在全部文档中位于相同的水平位置。容器的高度和水平位置不受该限制影响。
(7)同样,如果水平轴固定,则容器的上下边限制为位于垂直轴方向,但是高度不受该限制影响。
(8)如果水平轴、垂直轴双方固定,则意味着的中心位置固定,但是宽度和高度不受该限制影响。
(9)如果容器的角、容器的边的中间位置、或容器的中心位置固定,则在全部文档中,在相同的地方,在与容器相关联的相同地方显示。例如,如果容器的左上角固定,则意味着所配置的容器的左上位置在全部文档中变为相同。
(10)垂直边或垂直轴能够与页面的左边或右边、左页边距或右页边距、或者其它水平位置相关联并固定。同样,水平边或水平轴可以与页面的上边或下边、或上下页边距、或其它垂直位置关联,固定。
“固定”的相反是意味着容器的边、轴、角、中间位置或文档限制可在文档之间(记录间)变化的“可变”。例如,在页面内,希望根据可变数据的尺寸量,动态地改变布局,但是,对于特定的容器,有时希望固定大小和位置,或固定页面的转角的容器的四角。因此,在本布局编辑应用程序121中,对于各容器(局部显示区域),能够适当地设定是固定还是可以变化边、轴、角、中间位置。由此,当用户确定文档模板180的基本布局时,能够如用户所希望的那样生成基本布局。
(容器的显示和编辑)
(新容器的生成方法)
容器有文本容器和图像容器这2种。文本容器具有文本、嵌入的图像。图像容器只具有图像。如图4所示,通过用鼠标133点击文本容器工具404或图像容器工具405,在模板309上拖动四边形,在模板309上生成新文本容器和图像容器。使适当的工具404、405起作用后,通过在模板309上点击鼠标133,来生成容器。为了插入默认尺寸的容器,或插入新容器的尺寸,提供对话框或其它提示。容器由自动地提前定义并计算的分离器(skimmer)所生成,配置在文档模板309上。在此,利用鼠标等输入装置选择所生成的容器,通过用右键单击进行属性指示等操作,能够显示容器的属性对话框,设定容器的限制。在容器的属性对话UI(相当于局部显示区域设定装置)中,能够设定上述的各种限制。在容器的属性对话框中,能够确定容器的尺寸(宽度、高度)和位置,当为可变尺寸时,可以设定容器的基本图形(基本尺寸和基本位置),进而,可以设定最大容器尺寸(宽度、高度)和最小容器尺寸(宽度、高度)。
(容器的显示方法)
图5A~图5D是举例说明对于构成容器的边的规则的图。布局编辑应用程序121为了表现边的状态,用实线(503)或虚线(504)描画边,作为特征具有:锚点(由在边的附近描画的506、507、509所表示的线、形状、图标)、把手(为了移动、修改,在边、表面的附近描画的控制点502)、滚动条(在边的两侧所描画的短平行线,图4的413)、放大缩小图标(505)、以及颜色。
图5A~图5D所示的容器的显示方法的规则如下上述。
1.为了固定各边,用实线描画。
2.如果宽度固定,就用实线描画左边和右边。
3.如果高度固定,就用实线描画上边和下边。
4.不描画轴。
5.仍未描画的全部边在各边的附近描画放大缩小图标,变为虚线。
6.在垂直边或轴的各自的线对中,如果两者固定,则在相交点描画锚点。
7.在各固定边上,如果在边的任意位置都未描画锚点,就在边的中央描画滚动条。
8.在垂直边或轴的各自的线对中,如果未描画锚点和滚动条,就在相交点描画把手。
用上述的规则1、2、3定义的线,如上述那样固定或限制,所以用实线描画。像规则5那样可变的边由虚线描画。由规则6、7、8定义的固定点显示锚点,几个固定的边显示滚动条,其它显示把手。
由用户后来所设定的限制优先于上述规则。即当以后设定其它限制时,如果上述规则影响要描画的边,则实线和虚线的描画内容将发生改变。
描画可变的边的地方依存于容器的内容。如后所述,在文档模板中合并内容,使用在用户界面中意味着变为可视的“动态校正处理”。作为代替的执行方法,能够使用以下的方法:确定在全部文档中被平均化的容器的内容区,或确定可变的边在用户界面中要布置在哪里。布局编辑应用程序121按照以上的规则,能够执行容器的显示控制、布局控制。
内容的表现按照设定在容器的边的锚点图标、滚动条图标等的设置,插入到可以使尺寸变化的容器中,由此变为可视化。对容器设定的具体的图标和构成容器的边有如下的功能。
如图4的边410所示,虚线表示依存于插入容器中的内容,文档内的边的位置可以移动。而且,实线414表示限制位置的边。
锚点表示边或轴相交的地方固定。图4的图标409是表示相交的边414被固定的锚点图标的例子。
滚动条意味着关联的边在该边的垂直方向固定,但是可以平行移动。宽度和高度的尺寸在布局编辑应用程序121的控制下,显示在附属对话窗口中,可以设定作为容器尺寸而被允许的基本值、最小值、最大值的基本结构。
在图5A中,构成容器501的由实线表示的边503是固定的,由虚线表示的边504在宽度和高度上是可变的。放大缩小图标505表示相邻的边504可变。此外,在图5B中,构成容器501的由实线表示的边503是固定的,在图5B中,锚点图标506表示在与边503相交的高度方向和宽度方向对位移进行限制。
在图5C中,容器设定为容器的放大或缩小在由任意的锚点图标507表示的中心点的周围,在宽度方向和高度方向均匀扩展这样的状态,宽度和高度在各边可变。此外,在图5D中,容器501对上边508设定滚动条图标509,并进行固定,但是由虚线表示的边502在宽度和高度可变。这时,把通过锚点图标509的中心轴(垂直轴)作为基准,可以在边502的左右方向、上下方向进行位移,据此可以改变容器的尺寸。这里的放大/缩小对布局进行调整,以使锚点图标507的位置总是成为容器501的中心点。
(链接的设定方法)
图6是表示基于布局编辑应用程序121的链接的设定方法的流程图,图7A~图7C是表示用户界面的画面显示例子的图。下面,参照图6、图7A~图7C,说明对容器设定链接的操作方法。首先,为了对容器设定链接,生成作为链接的设定对象的容器(最少2个)(S601)。图7A表示生成了2个容器701、702的状态。
接着,变为选择上述链接工具按钮(参照图4)的状态(S602)。这里,图7A的容器701和702表示与上述图4的容器407、408相同的内容的容器,由固定的边(由实线表示)构成容器。此外,图标703和704表示与图4的图标409相同的锚点图标,705表示鼠标指针。
在步骤S602中,如果链接工具按钮406的选择结束,就选择容器(S603)。该选择通过用鼠标133点击成为设定链接的对象的容器的一方(例如,701),来选择容器。接着通过用鼠标133点击成为设定链接的对象的另一方容器(例如702),来结束设定链接的另一方容器的选择(S604)。
图7B的706是表示连接步骤S603中鼠标133点击的位置(P1)和步骤S604中鼠标点击的位置(P2)的、鼠标133的概略轨迹的线段(图6的S605),在与该线段相交的容器的边711和边712之间设定链接707,最后在容器之间设定了链接707的状态的用户界面(S606)被更新。通过设定链接707,来自动切换用于显示容器的画面显示。在所切换的画面(图7C)中,边708是由虚线表示的边,表示上述的可变的边。从固定的边(与链接前的711、712相对应)切换为可变的边708,是因为设定了链接707,就需要使容器701、702的边可变;是为了防止尽管设定了链接707,但是如果全部边固定,就由链接特别指定容器之间的相对关系这样的矛盾;是在布局编辑应用程序121的控制下,自动进行的处理。
此外,709也与图5的505同样发挥作用,709是用于识别的显示,通过设定链接707,来将容器701、702能够位移的方向可视地表示给用户。在图7C的例子中,左方容器701的右边和右方容器702的左边变为可变,但是,这是一个例子,右方容器701也能够通过具有图4的413所示的滚动条的设定,来显示边708是可变的。以上的处理能够在布局编辑应用程序的控制下实施。
(可变长度的链接)
在图46的界面画面中,表示有一般的可变链接4609。在图46中,与图4同样具有应用程序窗口301和工具栏303,在文档模板309上有容器4603和容器4604。各容器典型的是由锚点图标4601、锚点4602和固定的边4605、边4606构成。在各容器4603、4604之间存在可变尺寸的链接4609,连接各容器。在容器4603和容器4604之间设定链接,所以各自的右边4607和左边4608由虚线表现。因此,在各容器中表示指示器4610、指示器4601,它表示边4607和边4608可变。
此外,图48是表示设定链接4609的信息的对话窗口4801的例子的图。该对话框典型的是由标题栏4802、工具按钮4803、进行对话窗口的开关的按钮4804、设置各种信息的区4809构成。在该对话窗口中,可以进行链接类型是可变长度(4807)的链接,还是固定长度(4806)的链接的择一的选择。在可变长度的情况下,能够设定链接的长度的最大值(4812)、最小值(4810)、基准值(4811)。在此,各容器之间的距离的基准值4811是插入数据时各容器的尺寸不改变时所使用的链接长度。
图47是设定自动布局系统中的可变链接的流程图。利用鼠标133来点击、选择链接4609(S4702)。布局编辑应用程序121显示通过鼠标的右键点击或键盘的特定键选择的链接4609的属性对话窗口4801(S4703)。在该状态下,链接尺寸不是可变而是固定的,所以在链接类型4805中选择固定4806。为了使链接从固定尺寸改变为可变尺寸,在链接类型4805中选择把链接尺寸设定为可变的可变4807(S4704)。据此,配置在链接间隔4808内的最大值4812、最小值4810、基准值4811变为有效,就可以进行数值的设定。这里,为了设定链接的可变尺寸,就设定链接长度的最大值4812、最小值4810、基准值4811(S4705)。如果通过一般的对话窗口开关按钮4804应用设定,则链接的UI显示变化为图46的链接4609这样的状态(S4706)。该对话窗口4801的设定信息被存储到存储器中。
图49是表示使用固定尺寸的链接时的布局结果的图。布局编辑应用程序121的布局引擎模块105的布局计算方法如上述那样进行。例如在图46中,当在容器4603和容器4604中分别插入不同尺寸的数据时,各容器认为数据的大小为最佳,为了接近成为插入的图像尺寸的框4904(最佳容器尺寸),容器4603向右增大尺寸,同样为了接近成为插入的图像尺寸的框4905(最佳容器尺寸),容器4604就向左稍微增大尺寸。
但是,如果在容器4603和容器4604之间设定固定尺寸的链接4903,则容器4603和容器4604分别由于锚点4601、锚点4602,左边4612和右边4613无法移动,所以要改变的尺寸大于链接尺寸。而且,该链接尺寸固定,所以在布局的计算时优先计算,容器4603(图46)和容器4604(图46)的尺寸改变。结果,容器4603和容器4604无法确保与数据匹配的最佳尺寸,最终像图49的容器4901和容器4902那样,与最佳的尺寸相比,框4904、框4905变小。即链接4903的尺寸固定,所以容器4901和容器4902无法实现最佳尺寸。
图50表示使链接成为可变尺寸时的情形。这时,在上述例子中,如果在容器4603和容器4604之间设定可变尺寸的链接4609(图46),则在容器4603和容器4604的尺寸改变时,通过缩小链接尺寸,容器4603和容器4604的尺寸就能够比上述例子大,能够实现与插入的数据尺寸匹配的最佳尺寸,或者能够更接近插入数据尺寸(最佳尺寸),来计算容器的框。其结果是图50的容器5001和容器5002。经过布局计算,可变链接4609变为可变链接5003的尺寸,这时容器5001和容器5002的变形是连动的,分别变为最佳尺寸(与数据尺寸匹配的尺寸)。能够在处理单元135、布局编辑应用程序的控制下进行以上的处理。
(布局计算方法(全体流程))
本实施方式的布局编辑应用程序划分为:使用用户界面模块103生成容器,对容器之间进行关联(链接设定),生成布局的布局模式;通过布局引擎模块105对生成的布局插入数据源的各记录,预览实际插入记录后的布局结果的预览模式。在预览模式中,插入实际的记录,按照上述优先级,计算布局。但是,预览模式是在显示上的布局计算。在实际打印时,布局引擎模块105对各容器插入数据,计算布局,但是这时的计算方法与预览模式相同。图8表示布局计算的程序流程。
首先,选择预览模式(S801)。在自动布局系统中,划分为:生成容器,在这些容器之间进行关联添加,生成布局的布局模式;对生成的布局插入显示的数据记录(以下称作“记录”),预览实际插入记录后的布局结果的预览模式。在预览模式中,插入实际的记录,计算布局。但是,预览模式是在显示上的布局计算。即使在实际打印的情况下,也插入记录来计算布局。这时的计算方法也相同。如果变为预览模式,就选择预览的记录并插入(S802)。如果进行记录的插入,为了把记录布局,就进行布局计算(S803)。然后,显示处理步骤S803中计算的布局(S804),判断对其它记录是否也进行预览(S805)。在处理步骤S805中,在判断为对其它记录不需要进行预览的情况下(S805-否),使处理进入步骤S807,结束预览模式。另一方面,在步骤S805的判断中,如果对其它记录进行预览,就选择其它记录,再次进行布局计算(S803),进行预览(S804)。在不是预览模式而进行打印时,对于打印的全部记录,按顺序进行布局的计算。因此,处理S804在打印时的处理中是不需要的步骤。步骤S805进行是否全部处理了打印的记录的判断。把步骤S803计算布局的结果描画输出,使用打印驱动,做成打印数据,对打印机输出打印数据。这时,对于全部记录(为了打印而所指定的全部记录),在打印数据的输出结束的时刻,结束本处理。以上的处理能够在处理单元135的控制下实施。
(布局的计算方法)
图9是说明布局计算的详细处理流程的流程图,图10A~图10C是表示这时的用户界面画面的显示例子的图。本图是只说明布局计算的处理方法的流程图,所以相当于可变数据打印的1个记录的打印/预览时的布局计算方法。在多个记录的情况下,就反复进行以下的处理。
首先,布局编辑应用程序121求出计算布局的容器集合(S901)。布局计算把关联的容器作为一个集合,进行计算。例如参照图11,则在页面上布置4个容器A、B、C、D,对各容器设定关联。这时,容器A和容器B、容器C和容器D通过链接关联。因此,容器A、B变为集合1,容器C、D变为集合2。1101表示锚点,1102表示固定的边,1103表示控制点,1104表示代表可变边的变化方向的箭头,1105表示可变的边,1106表示链接,1107表示滚动条。
接着,布局编辑应用程序121,为了计算布局,在步骤S901所求出的容器的集合中选择出一个集合(S902)。然后,对于选择的容器的集合,进行布局的计算。首先,对于成为选择的容器的集合中包含的可变部件的2个容器(A、B),从插入的数据的图像尺寸或文本量来计算各容器不受任何限制情况下的大小。具体而言,布局编辑应用程序121判断容器A是图像数据用容器,还是文本用容器。该判断如上所述,能够根据对容器设定的属性来判断。接着,布局编辑应用程序121读入插入容器A的数据,当容器A为图像数据用容器时,图像数据的尺寸(宽度、高度的像素数,析像度)变为不受容器A的限制时的大小。此外,当容器A为文本用容器时,该文本数据也能够根据字符数、根据容器A的容器属性指定的字体类型、字体尺寸、字符间距、行间距等字符属性,计算要插入容器A的数据量。这里,在文本用容器的情况下,如果不考虑限制,就无法确定容器A的纵横比,因此需要应用限制。在图11的例子中,因为容器A在左上和左下的角设定锚点,所以高度(纵向)变为固定。因此,布局编辑应用程序121判断计算的数据量(文本量)的字符是否可以插入作为容器A的基本图形的设定了宽度(横向)的容器A中。当判断为可以全部插入时,容器A就不改变在基本图形中所设定的尺寸(宽度、高度)。此外,判断为不能全部插入时,由于进行了锚点的设定,容器A的高度是固定的,所以容器A就向横向延伸。这里,布局编辑应用程序121计算容器A的宽度变为多少后,计算的数据量的字符就可以插入,由此来计算容器A的尺寸。
接着,布局编辑应用程序121进行布局的最优化,以便布局的容器尺寸和实际的容器尺寸尽可能地减小差距(S903)。进行布局的最优化,以便在关联为可以动态改变尺寸的容器中,插入各自的内容的尺寸和布局的尺寸的差距尽可能变为相同。布局编辑应用程序121,求出步骤S902中计算出的容器的集合的尺寸,即容器A和容器B和链接106(在此是固定链接)的合计尺寸,求出该合计尺寸与基本布局中该容器的集合的尺寸(在图11的例子中,相当于容器A和容器B的各自的锚点图标的距离)的差。如果容器A和容器B的宽度增大,则在前面步骤中进行计算时,将产生差分值。布局编辑应用程序121通过把该差分值均匀分配到容器集合的各部件中,来进行布局调整。
布局编辑应用程序121进行布局的最优化,在最优化的计算中,当违反规则(对于容器的限制)时,就计算容器尺寸(S904)以便不再次违反规则。这里描述的规则是生成布局时由用户设定的限制,是容器的尺寸、位置、可变链接情况下的链接的长度等。如果在不违反规则的前提下布局被计算,就完成步骤S902中选择的集合的布局。而且,对于页面上的全部容器的集合,实施步骤S902~S904,然后计算页面整体的布局(S905),最后结束布局计算的结果。
图10A~图10C是表示布局计算时表示的用户界面画面例子的图。图10A表示确定插入某记录的布局的状态。1001和1002表示锚点,1003和1004表示固定的边,1005表示可变的边,1006表示代表可变的边的变化方向的箭头,1008表示链接。在该状态下,改变记录,如果插入不同尺寸的内容,就变为图10B的状态。用双点划线表示可变的边从图10A的状态如何变化。然后,进行加入了规则的布局计算。图10C表示布局计算的结果。进行计算,以使计算后的各容器1012、1013的尺寸与实际插入的内容的尺寸具有相同的差异(变形联动),并且在不违反上述规则的前提下计算。如图10C所示,图10B所示的插入的内容尺寸(a1b1c1d1、e1f1g1h1)和计算后的内容尺寸(a2b2c2d2、e2f2g2h2),在左右双方的容器中具有相同的差异并计算容器尺寸。以上的处理能够在处理单元135、布局引擎模块105的控制下进行。
(容器的优先级)
(设定方法)
图56是说明优先级的设定处理流程的流程图,与图57~图60的用户界面画面的例子一起说明各步骤的处理。
首先,布局编辑应用程序121如图60所示,对用户显示用于选择设定优先级的容器的弹出菜单6002,如果选择优先级的设定,就显示优先级的设定画面(S5601)。在图60中,6001是容器,6002是弹出菜单,6003表示鼠标指针。这时,在图60中,用弹出菜单选择优先级的设定,但是,也可以用容器的属性对话框等来选择。
接着,布局编辑应用程序121把步骤S5601中选择的与容器关联的容器识别为一个集合(S5602),设定优先级(S5603)。本自动布局系统中,关联的容器彼此与内容的尺寸匹配,计算布局,进行最优化(参照布局计算方法)。优先级对于彼此关联的容器,指定计算的顺序,将添加关联的容器识别为一个集合,并设定优先级。例如,在图57中,对文本容器A、D、F和图像容器B、C、E进行布局。通过链接(5701)把容器关联,变为容器A、B、C、D和E、F这2个集合。这里,如果用鼠标指针(5702)选择容器A来进行优先级的设定,则对容器A、B、C、D设定优先级。
接着,布局编辑应用程序121在步骤S5601中表示的优先级设定画面(参照图58)中,对容器设定用户所设定的优先级(S5604)。图58是表示设定优先级的对话用户界面(UI)画面的例子的图。在图58中,5801是对话框,5802是表示优先级的UI,5803是显示设定优先级的容器的列表框。这里,在步骤S5602中识别为一个集合的容器全部显示。5804是改变优先级的箭头按钮。5805是取消设定的取消按钮,5806是反映设定的确定按钮。像5802的UI所示那样,在列表框(5803)中,显示在上面的容器优先级高,越向下则优先级越低。进行布局计算的顺序是从上到下的顺序。在图58中,按文本容器A、图像容器B、图像容器C、文本容器D的顺序进行计算。
图59A和图59B是说明改变对容器设定的优先级的步骤的图。例如图59A的5901所示,用鼠标指针选择要改变优先级的容器名,如果提高优先级,就按5902的上箭头按钮,如果降低,就按下箭头按钮。这里,选择文本容器D,进行提高优先级的操作。如图59B所示,文本容器D的优先级提高一级,图像容器C的优先级降低一级。优先级的设定方法并不局限于此,在此,因为对于容器A、B、C、D这4个容器设定优先级,所以可以是对于各容器,用优先级1、优先级2的编号来指定的方法。以上的处理能够在处理单元135的控制下执行。
(显示方法)
图61、图62、图63是列举对用户可视地表示对分别设定的容器设定的优先级的用户界面(UI)画面的图。图61和图62表示用不同窗口显示容器的布局显示和优先级的设定的UI画面。在图61和图62中,6101表示自动布局应用程序窗口。构成该窗口的页面区、工具栏与图3是相同的,在此省略。6102是鼠标指针,6103、6104是设定优先级的容器的集合。6105是表示优先级的属性托板,6106是显示容器名的列表框。在图62中也同样,6201表示鼠标指针,6202表示列表框。利用6105、6106以及6202,能够对用户可视地显示容器的优先级。如图61所示,如果把鼠标指针(6102)放在容器的集合(6103)上,就按优先级高的顺序显示该集合内的容器(容器A、B、C、D、E)。这里,以容器B、A、E、C、D的顺序表示优先级从高到低。如图62所示,如果把鼠标指针6201向其它容器的集合移动,就更新列表框6202的显示,按优先级从高到低的顺序来显示容器F、G、H。这里,按容器F、H、G的顺序,设定成优先级从高到低的状态。
图63是表示与图61、图62的显示方法不同的形式的UI画面的图,在图63中,6301是表示页面区的页边距,6302是鼠标指针,6303是由数字表示容器的优先级的显示部,6304是设定优先级的容器的集合。在图63所示的UI画面中,如果将鼠标指针6302移动到容器上,就用数字6303显示对与该容器关联的各容器设定的优先级。这里,如果将鼠标指针移动到容器B上,就在各容器上显示对与容器B相关联的容器A、C、D、E所设定的优先级,数字越小,优先级越高,(1)表示优先级最高,(5)表示优先级最低。因此,在图63中,按照容器B、A、E、D、C的顺序设定优先级。以上的处理能够在处理单元135、布局编辑应用程序的控制下执行。
(布局计算方法)
下面,参照图64的布局计算的流程图,说明包含设定优先级的容器情况的布局的计算处理。
首先,在步骤S6401中,选择预览模式。在自动布局系统中,划分为:生成容器,在容器之间进行关联,生成布局的布局模式;对生成的布局插入记录,预览实际插入记录后的布局结果的预览模式。
在预览模式中,插入实际的记录,按照上述的优先级,计算布局。但是,预览模式是显示上的计算,但是在实际打印时,插入记录,计算布局时的计算方法也是同样的。如果在步骤S6401的处理中起动预览模式,就从存储在数据库119中的数据源选择进行预览的记录来执行预览(S6402)。
如果进行记录的选择,执行预览,则布局编辑应用程序121为了对该记录进行布局而进行计算。这时,检查是否对容器设定有上述优先级(S6403)。在步骤S6403的检查中,当判断为存在设定优先级的容器时(S6403-是),就作为“存在优先级的设定”来计算布局(S6404)。对于“存在优先级的设定”情况的布局计算方法,后面将详细描述。
在步骤S6403的判断处理中,不存在设定优先级的容器时(S6403-否),就使处理进入步骤S6405,布局编辑应用程序121作为“没有优先级”来计算布局。
然后,在步骤S6406中,布局编辑应用程序121显示作为有优先级而计算的结果(S6404)或作为没有优先级而计算的结果(S6405)。然后,在步骤S6407中,对于其它记录,判断是否进行预览,当对于其它记录,判断为没必要预览时(S6407-否),就结束预览模式(S6409)。如果对其它记录进行预览(S6407-是),就选择其它记录,再次进行布局计算(S6404、S6405),进行预览(S6406)。
在不是预览模式而是进行打印时的布局计算的情况下,对于打印的全部记录,按顺序进行布局的计算。因此,使记录移动,在打印时的布局计算中就不需要用于进行布局计算的步骤S6407、S6408的处理,在对全部记录的打印结束的时刻结束处理。
(对设定了优先级的容器的具体的布局计算方法)
参照图65的流程图,说明对容器设定布局的优先级时的布局计算处理的流程。此外,图66、图67是表示按照布局计算处理,对用户显示的UI画面的显示例子的图。
这里,图66的6601表示容器A,6603表示对容器A设定的优先级,6602表示容器B(6604)和容器C(6605)之间设定的链接。而且,数越小,由6603表示的优先级越高。这里,按照优先级(1)、(2)、(3),按照容器A、B、C的顺序,计算布局。图67A的虚线所示的区域6701表示插入容器A的内容的尺寸。6702表示容器A的布局计算后的容器A’,由虚线表示的区域6703表示对容器B插入的内容的尺寸。6704表示容器B的布局计算后的容器B’,6605表示容器C的布局计算后的容器C’。
首先,在图65的步骤S6501中,求出布局计算的容器的集合。然后选择进行计算的一个集合(S6502)。这时,容器的集合相当于由链接6602所关联的图66的容器A、B、C。
然后布局编辑应用程序121从数据库119获得布局的内容数据(S6503)。这里描述的内容数据是内容、尺寸、量等。处理单元135从经由I/O接口138由数据库119获得的内容数据,把内容数据分配给插入内容的容器(S6504)。
接着,在步骤S6505中,布局编辑应用程序121抽出优先级最高的容器。在图67A中,容器A的优先级最高,所以抽出容器A。然后,对于抽出的容器A,根据在步骤S6504中分配的内容数据,进行布局计算(S6506)。这里,图67A的6701表示与分配给容器A的内容数据的尺寸对应的区域。计算的方法只要不违反规则,就可以对比成为现在计算的对象的容器A的优先级低的容器(B、C)产生影响。而对于比成为现在计算的对象的容器的优先级高的容器(例如从容器B来看,容器A的优先级高)提供影响。在图67A的情况下,在容器A的布局计算中,可以与比容器A优先级低的容器B、C的容器尺寸无关地进行计算。对于容器B,受到容器A的计算结果的影响,但是容器B的布局计算结果可以对优先级低的容器C产生影响。优先级最低的容器C受到容器A、B的布局计算结果的影响,并执行对自身的容器的布局计算。
接着处理进入步骤S6507,布局编辑应用程序121从在步骤S6506中计算的布局计算的结果来确定容器的尺寸和位置。然后,确定在步骤S6507中确定的容器的尺寸和位置(S6508)。图67B的6702表示对容器结束计算,确认尺寸和位置后的容器。
在步骤S6509中,布局编辑应用程序121确认对于选择的集合内的全部容器A、B、C,计算是否结束。如果对于全部容器A、B、C,尚未结束计算(S6509-否),就抽出计算的容器的优先级第二高的容器(S6510),对于该容器,执行步骤S6506~S6508的处理。在图67B的状态中,如果容器A的计算结束,则对于优先级高的容器B,执行容器尺寸的计算、确定位置的处理。在图67B中,6703表示与分配给容器B的内容数据的尺寸(内容数据)对应的区域。根据内容数据,进行对于容器B的布局计算,但是容器B的优先级比容器A低,所以已经在前面步骤中确定容器A的尺寸和位置,计算结果并不能够对容器A的布局结果产生影响。
因此,容器B的布局计算采用必须在对容器A不产生影响的范围内计算容器尺寸的限制条件。如图67B的6703所示,实际插入容器B的内容的尺寸与容器A’重叠。因此,比实际的尺寸缩小来计算容器B的布局,以便与计算结果确定的容器A’不重复。对容器B计算结束,将确定了尺寸和位置的容器B’用图67C的6704来表示。
对于容器B,布局计算结束后,接着抽出比容器B优先级低的容器C(图65的步骤S6510),对容器C进行布局的计算(S6506~S6508)。但是,在图67A~图67C的例子中,容器C在集合内是优先级最低的容器,当对该容器进行计算时,对其它全部的优先级高的容器(A、B)确定容器尺寸和位置,因此并不能做到以下情况:进行布局计算,以便把容器C的布局计算结果提供给其它容器(A、B)。因此,当在步骤S6510中抽出优先级最低的容器时,已经确定该容器的尺寸和位置。对于优先级最低的容器,在步骤S6506~S6508中进行计算,但是按照其它优先级高的容器的计算结果,实质上已经确定。然后,如果对集合内的全部容器结束布局计算(S6509-是),就确认页面内还存在未计算的集合(S6511)。当不存在未计算的集合(S6511-否)时,将处理返回步骤S6502,布局编辑应用程序121用上述方法进行布局的计算。如果对于全部集合,计算结束,则布局编辑应用程序121从数据库读入可变数据的内容,该内容插入计算的容器(S6512),最后结束处理。以上的处理能够在处理单元135、布局编辑应用程序(用户界面模块103、布局引擎模块105)的控制下执行。
(链接的自动设定)
下面,说明与作为本发明的特征的链接的自动设定相关的内容。图12A是例示与链接的自动设定相关的UI画面的图。1201表示应用程序窗口,1202表示容器,1203表示在容器之间设定的链接,1204表示鼠标指针。此外,在本实施方式中,对容器的位置有记述,以文档内左上为原点1205,X方向定义为向右侧增加,Y方向定义为向下方增加(参照图12B)。容器的位置信息可以分别由容器的各转角的位置坐标((X1、Y1)、(X2、Y2)、(X3、Y3))记述,在文档模板309上布置的多个容器之间的位置关系,可以通过求出成为基准的容器的位置坐标信息、和其它容器的位置坐标信息,来求出相对的位置关系。
图16是说明链接的自动设定的整体流程的流程图。首先,在步骤S1601中,布局编辑应用程序121判断是否指定统一进行链接设定的容器。容器的设定可以由用户任意指定,但是,如果没有任何指定(S1601-否),就选择页面上的全部容器(S1603)。而布局编辑应用程序121,在判断为指定了多个容器时(S1601-是),使处理进入步骤S1602,处理单元135识别由用户选择出的多个容器(S1603)。
然后,在处理单元135和用户界面模块103的控制下,为了对用户在视觉上显示识别出的容器而改变UI画面(1604)。图13是表示选择多个容器F、G、H的UI画面的例子的图。通过鼠标指针1303等指示输入单元,拖动矩形1302,在矩形1302内放入多个容器,可以选择矩形内的多个容器。此外,多个容器的选择不限于该方法,也可以由鼠标指针1303个别地拖动要选择的容器来指定。
图14A是表示为了向用户显示通过在图13说明的操作来选择容器F、G、H,而切换UI画面的状态的图。在图14A中,显示有表示选择了容器F、G、H的显示(在图14的例子中,添加阴影线表示)1402。
图14B表示不是像图14A那样由矩形区域指定多个容器,而是通过用鼠标指针1303点击(指定)容器来选择多个容器的例子。在该方法中,不能够如图14A说明的那样,通过矩形区域来选择容器,而是能够通过容器的布局(包含未部分地选择的容器的布局)来选择多个容器。
与图14A一样地表示所选择的容器的显示5102,显示所选择的容器。
使说明回到图16,在步骤S1605中,布局编辑应用程序121,在选择出的多个容器之间统一设定链接。在该步骤中,还包括改变容器的设定,使得不会由于统一设定链接,而使布局违反对链接设定的规则的步骤。在选择了多个容器的状态下,通过用鼠标指针按下图14A所示的链接工具按钮1403,显示图73那样的链接生成方向UI。在本实施方式中,作为统一设定链接的设定方向模式,包括以下3个。首先,第一链接设定方向模式是7302的“在X方向设定链接”,当布局编辑应用程序121识别出由用户选择时,在X方向统一设定链接。此外,第二链接设定方向模式是7303的“在Y方向设定链接”,当识别出由用户选择了7303时,在Y方向统一设定链接。第三链接设定方向模式是7304的“在X和Y方向设定链接”,当识别出用户选择了7304时,在X方向和Y方向统一设定链接。X方向是水平方向,Y方向是垂直方向。链接的统一设定,可以另外显示对话框,使用户确认设定的有无。这时,当存在用户的确认输入时进行链接的统一设定。图15是表示在多个选择出的容器F、G、H之间统一设定链接的状态的图。通过链接的统一设定,在容器F、G、H之间设定链接1502。用于该链接设定的具体内容将在后面详细描述。接着,本处理在读入可变数据,插入各容器中,在预览自动布置的结果的预览处理中进行布局的编辑时,考虑设定的链接1502的状态,进行布局计算(S1606)。关于该布局的计算,因为与在图9、图10说明的内容重复,所以,省略说明。此外,只是基本布局的编辑中,当未接受预览显示和打印请求时,不进行步骤S1606的处理。
(链接的统一生成)
图17是概略说明链接的统一生成处理的流程的流程图。在以后的说明中,以用矩形区域选择多个容器的情形为例说明处理的内容,但是,不管是选择页面内的全部容器时,还是用鼠标指针个别地选择多个容器时,都可以用相同的方法进行处理。
首先,在步骤S1701中,布局编辑应用程序121,获得在图16的步骤S1602识别的、由用户选择出的容器的位置信息和容器的个数(ConNum)。接着,布局编辑应用程序121,将所选择的容器的个数存储到存储装置139(140、141)或存储单元136中(S1702)。然后,布局编辑应用程序121,当对所选择的容器,在X方向上相邻的位置配置容器时,进行X方向的链接的生成(S1703)。接着,当在Y方向上相邻的位置配置容器时,布局编辑应用程序121,进行Y方向的链接的生成(S1704)。最后,布局编辑应用程序121,通过所生成的链接,自动改变容器的设定(锚点的设定等),使得不违反关于容器的布局的规则(1705)。
以下,参照图18等附图说明以上的各步骤(S1701~S1705)的具体的处理。另外,基于布局编辑应用程序121,在处理单元135的整体性的控制下,可以执行关于链接的统一生成的处理。
(获得容器的位置信息)
图18是说明获得容器的位置信息的处理流程的流程图。首先,布局编辑应用程序121,对所选择的容器任意设定顺序(S1801)。该处理为了对全部容器获得位置信息而设定顺序。接着,布局编辑应用程序121,将1代入变量i,进行变量的初始化(S1802)。该变量i与对容器设定的编号对应,通过该变量i使各容器关联起来。然后,对第i容器,处理单元135,首先对X方向获得选择出的容器的位置信息(S1803),接着,对Y方向获得位置信息(S1804)。然后,处理单元135,将所获得的信息存储到存储装置139(140、141)或存储单元136中(S1805)。接着,布局编辑应用程序121,使变量i增加,获得下一容器的X方向的位置信息(S1803)、Y方向的位置信息(S1804),存储数据(S1805),反复进行以上的处理,直到对所选择的全部容器数据的获得和存储结束。对于所选择的全部容器,在处理结束时(S1807-是),结束处理。
(链接的生成)
图19A和图19B是说明X方向的链接的生成处理的流程的流程图。链接的生成,抽出相邻的容器,在该容器之间设定链接。这里,相邻的容器意味着容器之间的距离最小,当发现了多个最小的容器时,设定多个链接。
首先,在步骤S1901中,布局编辑应用程序121,设定成为链接设定基准的容器(这时,是容器2104),以该容器2104的左边的X坐标为基准,求出容器之间的相对的位置关系,为了生成链接,按照X方向的间隔小的顺序设定容器的编号。该序号的设定,如图21A的2160所示,以容器2104的左边的X坐标为基准,对各容器的X方向的距离小(X1<X2)的容器2105设定序号(2),对X方向的距离其次小的容器2106设定序号(3)。以下,对选择出的全部容器,按照X方向的距离,同样地设定序号。这时,当在相同的X方向的位置布置多个容器时,求出Y方向的距离的关系,将Y方向的距离小的容器设定为靠前的序号。图21A的2150是表示对容器,用于设定链接的序号添加结束了的状态的图。在本实施方式中,对容器的左边位于左上的容器,设定序号为第1,但并不限于此,例如,也可以从右上、右下方向等设定序号。
接着,使处理进入步骤S1902,布局编辑应用程序121将1代入变量n。在步骤S1903中,布局编辑应用程序121,准备存储在X方向上相邻的容器的编号(在步骤S1901设定的序号)的ContX[],用0对该值进行初始化。
接着,在步骤S1904中,布局编辑应用程序121,准备存储X方向的距离最小值的DistX_Min,把页面宽度代入到初始值(1904)中。
然后,在步骤S1905中,布局编辑应用程序121,将n+1代入用于检查相邻的容器的变量i。因为在步骤S1901中按照离X方向的距离从小到大的顺序设定序号,所以,相邻且需要设定链接的容器,变得比自身容器(在图21A的情况,与容器2104对应)的序号靠后。因此,步骤S1905的处理用于控制变量,使得检查的容器变为从第n+1个开始。
接着,将处理转移到图19B的流程图的步骤S1906,检查第n容器和第i容器的Y方向的位置是否重叠。在本实施方式的链接的统一设定中,所生成的链接以容器位于相同的水平方向或垂直方向为前提。因此,对于X方向的链接进行步骤1906的检查,判断容器是否被布置在水平方向上。例如,在图21A的2160中,容器2104和容器2105的Y方向的距离为Y1,容器2104和容器2106的Y方向的距离为Y2。
在步骤S1906的判断中,当判断为Y方向的位置重叠时(S1906-是),使处理进入步骤S1907,布局编辑应用程序121,计算第n容器和第i容器的X方向的位置的差,并将结果代入DistX。
接着,使处理进入步骤S1908,布局编辑应用程序121,比较在前面的步骤中计算出的DistX和存储最小距离的DistX_Min。如果DistX比最小值(DistX_Min)小(S1908-是),则使处理进入步骤S1909,布局编辑应用程序121,用0对ContX[]进行初始化,将0代入变量k。
然后,将距离最小的容器的编号代入ContX[k](1910)。
另一方面,在步骤S1908中,当DistX不小于最小值时(S1908-否),使处理进入步骤S1911,布局编辑应用程序121继续进行比较,判断DistX和DistX_Min是否一致(S1911)。如果一致(S1911-是),则将该容器编号代入ContX[k],在k上加1。
在处理完步骤1910后,或者在S1911中判断为DistX大于最小值时,或在步骤S1906中第i容器不在Y方向上重叠时,布局编辑应用程序121,为了检查下一容器而增加变量i(S1912)。
在步骤1913中,布局编辑应用程序121,判断是否对所选择的全部容器进行了检查,如果尚未进行,则进入步骤S1906反复进行处理。当对全部容器检查结束时,进行向检测出的相邻的容器设定链接的处理(S1914)。该处理将在后面描述。
然后,如果链接设定的处理结束,则增加变量n(S1915),判断是否对所选择的全部容器进行了此前的处理,如果尚未进行,则进入步骤S1903反复进行处理(S1916)。如果对全部容器处理结束,则结束处理。
图20是说明图19B的步骤1914的链接设定处理的流程的流程图。首先,在步骤S2001中,判断ContX[0]是否为0。如果为0(S2001-是),就意味着未检测到相邻的容器,因此,不进行链接的设定处理就结束。
另一方面,当ContX[0]不为0时(S2001-否),将0代入k(S2002)。然后,在第n容器和第ContX[k]容器之间设定X方向的链接。如果设定了链接,则增加k(S2004),并检查ContX[k](2005)。对所存储的全部容器进行链接的设定,直到ContX[k]变为0。如果ContX[k]变为0,则结束链接的设定处理。
图21A和图21B是说明X方向的链接设定的图。在图21A中,2101、2102表示未选择的容器,2103表示指定多个容器的矩形区域,2104~2111表示为了进行链接的统一处理而选择出的容器,2112表示鼠标指针。容器内的编号是在图19的步骤1901中对容器添加了序号的编号。编号按X方向的位置小的顺序设定,按2104、2105、2106、2107、2108、2109、2110、2111的顺序设定编号。这里,当按下链接设定工具按钮2113时,设定链接。图21B的2114~2117表示所设定的X方向的链接,对各容器的X方向,在位于最小距离的容器之间设定链接。
另外,在图21A和图21B的流程图中,记载了对各容器的X方向,在位于最小距离的容器之间设定链接,但关于不限于最小距离时的处理流程记载在图68中。另外,基本的处理流程与上述图16大致相同,所以,只记载不同点。
首先,图68的S6801~S6804是相同的处理,因此,省略说明。布局编辑应用程序121,在通过鼠标等进行某特定的指示时(例如右击等),在显示装置144上显示图69所示的链接设定UI(S6805)。图69是用于选择链接设定模式的UI图,在链接设定UI6901中,如图所示,记载着作为第1设定模式的“向与基准容器最短的容器设定链接”、作为第2设定模式的“向与基准容器在X方向或Y方向上相交的容器设定”,通过识别用户选择了哪个链接设定方法,进入下一步骤。“向与基准容器最短的容器设定链接”是指上述的链接设定方法,所以,记载选择了“向与基准容器在X方向或Y方向上相交的容器设定”时的处理。这里,关于“向与基准容器在X方向或Y方向上相交的容器设定”,将用图72具体地说明。当为上述的“向与基准容器最短的容器设定链接”时,在图72中容器7201~7203为链接设定对象,当以容器7201为基准生成链接时,容器7203不位于与容器7201的最短距离上,所以,无法设定链接7205,但在选择了“向与基准容器在X方向或Y方向上相交的容器设定”时,向与容器7201在Y方向上相交的容器7202设定链接7204,向7203设定链接7205。
布局编辑应用程序121,在图69的链接设定UI中选择设定方法,当识别出“OK”按钮被按下时,在该被选择出的容器之间设定链接(S6806)。另外,关于S6806~S6809,因为与图16的S1605~S1606的处理相同,所以省略说明。
关于链接的统一生成和容器的位置信息获得的细节,与上述图17和图18的处理相同,所以在此省略。接下来,用图70A和图70B说明“向与基准容器在X方向或Y方向上相交的容器设定”中的链接生成流程。另外,因为S7001~S7005是与S1901~S1903和S1905~S1906相同的处理,所以省略细节。
布局编辑应用程序121,在S7005中,在判断为第i容器与第n容器的Y方向的位置重叠时,判断在第n容器和第i容器之间是否存在其它容器(S7006)。具体而言,因为通过图18的处理将各容器的位置信息存储在存储装置139或存储单元136中,所以,布局编辑应用程序121可以通过参照来判断。
当S7006的判断结果为判断出在第n容器和第i容器之间没有其它容器时,为了使用链接与第n容器建立关联而进入S7008。但是,当S7006的判断结果为判断出在其间存在其它容器时,布局编辑应用程序121,判断布局编辑应用程序121是否可以对第i容器和第n容器直接设定链接(S7007)。具体而言,因为各容器尺寸的信息通过图18的处理将各容器的位置信息存储在存储装置139或存储单元136中,所以,布局编辑应用程序121可以通过参照来判断。S7007是指,当第n容器和第i容器不通过其它容器就可以直接地设定链接时,进入S7008,具体而言,在图71中,可以判断为第5容器和第8容器的Y方向的位置重叠,但在第5容器和第8容器之间存在第7容器,从第5容器到第8容器,只可以通过第7容器间接地设定链接。这时,无法从第5容器对第8容器设定链接。此外,第4容器和第8容器的Y方向的位置重叠,其间存在第7容器。但是,第8容器的Y方向,对第7容器在垂直方向上延伸,可以对从第4容器到第8容器直接地设定链接,而不通过位于其间的第7容器,因此,生成链接7102。
另外,S7008~S7013的处理与图19的S1910~S1913的处理相同,所以,省略细节,由于图70B的S7011的处理与说明图19B的S1914的图20的处理流程相同,所以,在此省略细节。
图71是说明X方向的链接设定的图。另外,由于图71与图21B基本相同,所以,只记载不同点。在图21B中,只对第5容器和位于X方向的最短距离的第6容器设定链接2116,但在图71中,第5容器和第7容器不位于X方向的最短距离,但设定链接7101。这是因为通过图69的链接设定UI选择了“向与基准容器在X方向或Y方向上相交的容器设定”,所以,通过第7容器与基准容器(第5容器)的Y方向相交来设定链接7101。在图21B中,因为第4容器和第8容器不位于X方向的最短距离,所以不设定链接,但是,在图71中,设定链接7202。这是因为虽然在两者之间存在第7容器,但是,第8容器与成为基准的容器(第4容器)在Y方向上相交,并且,将第7容器的Y方向的位置在Y方向上延伸,所以,可以直接对从第4容器到第8容器设定链接。因此,设定链接7102。
图22A和图22B表示Y方向的链接的生成流程。对于各步骤,只是方向发生变化,与X方向的处理(图19A、图19B)是大致相同的。
首先,布局编辑应用程序121,按照对Y方向的位置小的序号,对设定序号的容器设定用于生成Y方向的链接的序号(S2201)。这时,当存在相同的Y方向的位置的容器时,将X方向的距离小的容器设定为靠前的序号。接着,将1代入n(S2202)。然后,布局编辑应用程序121,准备存储在Y方向上相邻的容器的编号(在步骤S2201设定的序号)的ContY[],用0对其进行初始化(S2203)。此外,准备存储Y方向的距离的最小值的DistY_Min,将页面宽度代入初始值(S2204)。接着,将n+1代入用于检查相邻的容器的变量I(2205)。
接着,将处理转移到图22B的步骤S2206,布局编辑应用程序121,检查第n容器和第i容器的X方向的位置是否重叠(S2206)。当在步骤2206判断为重叠时(S2206-是),布局编辑应用程序121,计算第n容器和第i容器的Y方向的位置的差,并将其结果代入DistY(2207)。
然后,布局编辑应用程序121,比较在前面的步骤中计算出的DistY和存储最小距离的DistY_Min(S2208)。如果DistY小于最小值,则使处理进入步骤S2209,布局编辑应用程序121用0对ContY[]进行初始化,将0代入变量k。然后,将距离最小的容器的编号代入ContY[k](2210)。
另一方面,在步骤S2208中DistY不小于最小值时(S2208-否),使处理进入步骤S2211,布局编辑应用程序121继续进行比较,并判断DistY和DistY_Min是否一致(S2211)。如果一致(S2211-是),则布局编辑应用程序121将该容器编号代入ContY[k],在k上加1(S2210)。
在处理完步骤S2210之后,或者在步骤S2211中判断为DistY大于最小值时,或在步骤S2206中第i容器不在X方向上重叠时,布局编辑应用程序121,为了检查下一容器而增加i(S2212)。在步骤S2213中,布局编辑应用程序121,判断是否对所选择的全部容器进行了检查,首先,如果尚未对全部容器进行检查,则进入步骤S2206反复进行处理。当对全部容器检查结束时,布局编辑应用程序121,进行向所检测出的相邻的容器设定链接的处理(S2214)。该处理将在后面描述。
然后,如果Y方向的链接设定的处理结束,则在步骤S2215中增加变量n。然后,判断是否对选择出的全部容器进行了此前的处理,如果尚未进行,则进入步骤S2203反复进行处理(S2216)。如果对全部容器处理结束,则结束整体的处理。
图23是说明图22B的步骤S2214中的设定Y方向的链接的处理流程的流程图。首先,在步骤S2301中,布局编辑应用程序121,判断ContY[0]是否为0。如果为0(S2301-是),则意味着未检测到相邻的容器,因此,不进行链接的设定处理就结束。另一方面,当不为0时(S2301-否),布局编辑应用程序121,将0代入变量k(S2302)。然后,在第n容器和第ContY[k]容器之间设定Y方向的链接。如果设定了链接,则布局编辑应用程序121就增加变量k(S2304),检查ContY[k],对所存储的全部容器进行链接的设定,直到ContY[k]变为0(S2303)。如果ContY[k]变为0(S2305-是),则结束链接的设定处理。
图24A和图24B是表示代表链接生成的状态的UI画面例的图。在图24A中,2401表示指定多个容器的选择的矩形区域,2402~2409表示所选择的容器,2110表示鼠标指针。容器内的编号是在图22的步骤2201中对容器添加了序号的编号。从(1)的容器观察,按Y方向的距离小的顺序设定其它容器((2)~(8))的序号,按2402、2403、2404、2405、2406、2407、2408、2409的顺序设定编号。这里,如图24B的2415所示,当按下链接设定工具按钮时,设定链接。2411~2113表示所生成的Y方向的链接,对各容器的Y方向,在位于最小距离的容器之间设定链接。此外,像2113那样,从容器(1)到容器(4)、容器(5)之间设定2个链接,这是因为在Y方向的最小距离上存在2个容器。另外,在Y方向上统一设定链接时,也与在上述X方向上统一设定链接时相同,通过基于图69的链接设定UI的选择,也可以对不位于最小距离的容器设定链接。
(用于计算容器的优先级的设定)
当对容器统一设定链接时,可以设定用于指定计算容器的序号的优先方向。参照图51、图52、图53说明该处理。这里,图52是表示由链接的统一设定生成的链接和其容器的图。在左右表示的5301表示页面宽度,5302表示进行了链接的统一设定的容器,5303表示链接。所设定的优先级,指定X方向和Y方向的哪个方向,从所指定的方向对容器设定优先级。方向的指定,在图53的对话框中进行,由用户指定。5304是对话框,由用户界面模块103显示控制。5305表示进行方向指定的单选按钮,5306表示取消设定的按钮,5307表示OK按钮。通过指定方向并按下OK按钮,自动地设定优先级。
图51是说明优先级的设定流的流程的流程图。首先,在步骤S5101中,判断由上述图53的对话框指定的优先方向。这里,如果指定了X方向,则布局编辑应用程序121,对容器的左边的X坐标的位置按照小的顺序设定容器的序号(S5102)。如果在相同的X坐标上布置了多个容器时,布局编辑应用程序121,按照这些容器的上边的Y坐标小的顺序设定序号。
另一方面,如果将Y方向指定为优先方向,则布局编辑应用程序121,对容器的上边的Y坐标,按照小的顺序设定容器的序号(S5103)。如果在相同的Y坐标上布置了多个容器时,布局编辑应用程序121,按照这些容器的上边的X坐标小的顺序设定序号。如果序号的设定结束了,则按照该序号设定优先级(S5104)。通过该优先方向的指定,可以设定关于容器的计算的优先级。
图54A和图54B是使X方向优先并对容器设定优先级的处理的例子的图,图54A表示设定优先级前的容器和链接。这里,左右的5401表示页面宽度,5402表示容器。而且,5403表示全部容器的左边的X坐标。容器的优先级,设定为X坐标小(从页面上的左边开始)的序号。图54B表示设定了优先级之后的容器和链接。各容器内的数字表示优先级。因为按照X坐标小的顺序设定,所以,按照5404、5405、5406、5407、5408、5409、5410、5411的顺序设定容器的优先级。
同样,图55A和图55B是表示使Y方向优先并对容器设定优先级的处理的例子的图,图55A表示设定优先级前的容器和链接。这里,左右的5501表示页面宽度,5502表示容器。而且,5504表示全部容器的上边的Y坐标。容器的优先级,设定为Y坐标小(从页面上的上边开始)的序号。图55B表示设定了优先级之后的容器和链接。各容器内的数字表示优先级。因为按照Y坐标小的顺序设定,所以,按照5504、5505、5506、5507、5508、5508、5510、5511的顺序设定优先级。
(链接设定的修改)
关于统一设定的容器之间的链接,用户可以通过例如键盘132或鼠标133的指示输入单元指定修改。这时,关于所指定的链接,可以取消链接的属性(可变、固定)的改变、链接的设定。该改变和设定的取消,可以在用户界面模块103、处理单元135的控制下执行。此外,通过分别指定容器,可以个别地指定链接的设定。由此,用户除了统一设定链接,还可以进行重新追加的链接的设定。
(关于容器的设定的自动改变(锁住位于页面上的最外侧的边))
对图17的步骤1705中的、改变容器的锚点的设定的处理加以说明。这里进行的处理是当生成链接的边与位于页面内布置的容器的最外侧的边为相同位置时,自动锁住(固定)该边的位置。当在相同的容器中,横向的边和与它相交的纵向的边锁住时,自动在由该边形成的转角处设定锚点。
图25是说明对于锚点的设定的全体处理流程的流程图。在步骤S2501中,把容器的左边锁住,在步骤S2502中,把容器的右边锁住。在步骤S2503、步骤S2504中,把容器的上边、下边锁住。根据图26、图28、图30、图32的流程图,来说明锁住各边的详细处理流程。
(左边的锁住)
图26是具体说明图25的步骤S2501的锁住容器的左边的处理流程的流程图。首先,在步骤S2601中,布局编辑应用程序121获得布局的全部容器的左边的最小X坐标。然后把获得的最小X坐标代入到Min_X中(S2602)。接着,在步骤S2603中,把1代入到变量i中,在步骤S2604中,把0代入到变量k中。
布局编辑应用程序121准备Lock_Cont[],用0进行初始化(S2605)。这里,变量i表示容器的编号,变量k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。
接着在步骤S2606中,布局编辑应用程序121检查第i容器的X坐标和Min_X是否相等。如果相等,处理就进入步骤S2607,把i代入Lock_Cont[k]中。然后,增加k和i(S2608、S2609)。
当在步骤S2606中不相等时(S2606-否),不代入Lock_Cont中,增加i(S2609)。然后确认对于全部容器,处理是否结束(S2610),如果未结束,就进入步骤S2606,反复进行处理。如果结束,处理就进入步骤S2611,把0代入到k。然后,处理就进入步骤S2612,检查Lock_Cont[k]的值。如果值为0,就不设定锁住,结束该处理。如果值不为0,就锁住第Lock_Cont[k]容器的左边(S2613)。然后把变量k增加(S2614)。该处理反复进行步骤S2613和2614,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,锁住在页面内位于最左的边。当发现多个边时,把发现的多个边全部锁住。
图27是表示容器的左边的锁住状态的图,2701是指定多个容器的选择的矩形,2702、2703、2704表示链接,2705表示锁住的边,2706表示最小的X坐标。如该图所示,如果进行图26的处理,则锁住位于最小的X坐标的容器的左边。
(右边的锁住)
图28是具体说明图25的步骤S2502的锁住右边的处理流程的流程图。首先,在步骤S2801中,布局编辑应用程序121获得布局的全部容器的右边的最大X坐标。然后在步骤S2802中,把获得的最大X坐标代入Max_X中。接着,在步骤S2803中,把1代入到变量i中,此外在步骤S2804中,把0代入到变量k中。此外,在步骤S2805中,准备Lock_Cont[],用0进行初始化。这里,变量i表示容器的编号,k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。
接着在步骤S2806中,布局编辑应用程序121检查第i容器的X坐标和Max_X是否相等。如果相等(S2806-是),处理就进入步骤S2807,把i代入Lock_Cont[k]中。然后,把变量k和变量i增加(S2808、S2809)。当在步骤S2806中不相等时(S2806-否),不代入Lock_Cont中,处理就进入步骤S2809,增加i。
然后确认对于全部容器,是否结束(S2810),如果未结束(S2810-否),就进入步骤S2806,反复进行处理。如果结束(S2810-是),处理就进入步骤S2811,把0代入到k中。
然后,处理就进入步骤S2812,布局编辑应用程序121检查Lock_Cont[k]的值。如果值为0,就不设定锁住,结束该处理。而如果值不为0(S2812-否),处理就进入步骤S2813,锁住第Lock_Cont[k]容器的右边(S2813)。
然后在步骤S2814中,把变量k增加,反复进行步骤S2613和2614的处理,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,锁住在页面内位于最右的边。当发现多个边时,把发现的多个边全部锁住。
图27是表示容器的右边的锁住状态的图,在图27中,2901是指定多个容器的选择的矩形,2902、2903表示链接,2904表示锁住,2905表示最大的X坐标。如图29所示,如果进行图28的处理,则锁住位于最大的X坐标的容器的右边。
(上边的锁住)
图30是具体说明图25的步骤S2503的锁住左边的处理流程的流程图。首先,在步骤S3001中,布局编辑应用程序121获得布局的全部容器的上边的最小Y坐标。然后在步骤S3002中把获得的最小Y坐标代入Min_Y中。接着,在步骤S3003中,把1代入到变量i中,在步骤S3004中,把0代入到变量k中。在步骤S3005中,布局编辑应用程序121准备Lock_Cont[],用0进行初始化。这里,变量i表示容器的编号,变量k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。
接着在步骤S3006中,布局编辑应用程序121检查第i容器的Y坐标和Min_Y是否相等。如果相等(S3006-是),处理就进入步骤S3007,把变量i代入Lock_Cont[k]中。然后,增加k和i(S3008、S3009)。
当在步骤S3006中不相等时(S3006-否),布局编辑应用程序121不代入Lock_Cont中,把变量i增加(S3009)。然后,处理进入步骤S3010,确认对于全部容器,处理是否结束,如果未结束(S3010-否),就进入步骤S3006,反复进行处理。如果处理结束(S3010-是),处理就进入步骤S3011,把0代入到变量k中。然后,处理就进入步骤S3012,布局编辑应用程序121检查Lock_Cont[k]的值。如果值为0(S3012-是),就不设定锁住,结束该处理。如果值不为0(S3012-否),就锁住第Lock_Cont[k]容器的上边。然后处理就进入步骤S3014,把变量k增加(S3014),反复进行步骤S3013和3014,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,锁住在页面内位于最上的边。当发现多个边时,把发现的多个边全部锁住。
图31是表示容器的上边的锁住状态的图,在图31中,3101是指定多个容器的选择的矩形,3102、3103表示链接,3104表示最小的Y坐标。如该图所示,如果进行图30的处理,则锁住位于最小的Y坐标的容器的上边。
(下边的锁住)
图32是具体说明图25的步骤S2504的锁住下边的处理流程的流程图。首先,在步骤S3201中,布局编辑应用程序121获得布局的全部容器的上边的最大Y坐标。然后在步骤S3202中把获得的最大Y坐标代入Max_Y中。接着,在步骤S3203中,把1代入到变量i中,在步骤S3204中,把0代入到变量k中。在步骤S3205中,准备Lock_Cont[],用0进行初始化。这里,i表示容器的编号,k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。
接着在步骤S3206中,布局编辑应用程序121检查第i容器的下边的Y坐标和Max_Y是否相等。如果相等,处理就进入步骤S3207,把变量i代入Lock_Cont[k]中。然后,在步骤S3208中,把变量k和变量i增加(S3208、S3209)。
当在步骤S3206中不相等时(S3206-否),不代入Lock_Cont中,把变量i增加(S3209)。然后,确认对于全部容器,处理是否结束(S3210),如果未结束(S3210-否),就进入步骤S3206,反复进行处理。如果处理结束(S3210-是),处理就进入步骤S3211,把0代入变量k。然后,处理就进入步骤S3212,布局编辑应用程序121检查Lock_Cont[k]的值。如果值为0(S3212-是),就不设定锁住,结束该处理。如果值不为0(S3212-否),就锁住第Lock_Cont[k]容器的下边。然后处理就进入步骤S3214,把变量k增加,反复进行步骤S3213和3214,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,锁住在页面内位于最下的边。当发现多个边时,把发现的多个边全部锁住。
图33是表示容器的下边的锁住状态的图,在图33中,3301是指定多个容器的选择的矩形,3302、3303表示链接,3304表示最大的Y坐标。如该图所示,如果进行图32的处理,则锁住位于最大的Y坐标的容器的下边。
图34是表示锚点的设定状态的图。这里3401表示页面端,3402表示容器,3403、3404表示链接,3405、3506、3407表示锁住的边。在上述的处理中,当锁住位于页面内的外侧的边3407时,锁住相同的容器的纵和横的边,容器的角变为固定时,如3408所示,就自动设定锚点。
(柔性链接的设定)
图35、图36是在上述的链接的统一生成处理中,生成的链接不是固定长度,而是用于设定为具有最大和最小值的柔性链接的处理流程的流程图。这里,选择设定链接的容器的操作与上述的内容相同,为了避免重复,这里省略说明,但是柔性链接的最大、最小值的设定处理与图20以及图23的流程有变化,所以这里只说明该变化的方面。
图35是说明在图20所示的X方向的链接的生成的流程图中,用于柔性地设定生成的链接长度的处理流程的流程图。首先,在步骤S3501中,布局编辑应用程序121在变量k中代入0。然后在步骤S3502中,检查ContX[k]的值。如果值是0,(S3502-是),链接的生成处理结束。而如果值不是0(S3502-否),处理就进入步骤S3503,在第n容器和第ContX[k]之间设定X方向的链接。然后在步骤S3504中,把生成的链接的长度代入Link_Dist中。在步骤S3505中,把Link_Dist乘以系数1.2,把该值设定为生成的链接的最大值。然后,把Link_Dist乘以系数0.8,该值设定为生成的链接的最小值(S3506)。在步骤S3507中,把变量k增加,只要存在设定链接的容器,就继续进行步骤S3503~S3506的处理。
同样,图36是说明在图23所示的Y方向的链接生成的程序流程中,用于柔性设定生成的链接长度的处理流程的流程图。首先,在步骤S3601中,在变量k中代入0。然后在步骤S3602中,检查ContY[k]的值。如果值是0,链接的生成处理结束。而如果值不是0(S3502-否),处理就进入步骤S3603,在第n容器和第ContY[k]之间设定Y方向的链接。然后在步骤S3604中,把生成的链接的长度代入Link_Dist中。在步骤S3605中,把Link_Dist乘以系数1.2,把该值设定为生成的链接的最大值。然后,把Link_Dist乘以系数0.8,该值设定为生成的链接的最小值(S3606)。在步骤S3607中,把变量k增加,只要存在设定链接的容器,就继续进行步骤S3603~S3606的处理。
通过以上说明的图35、图36的处理,可以把生成的链接的长度的120%设定为最大值,把80%设定为最小值。但是,链接的长度最大值、最小值并不局限于上述的系数,例如能够通过图48的UI画面,由用户任意指定。
(关于容器的设定的自动改变(锁住位于用户指定的范围内的边))
下面,说明作为关于容器的设定的自动改变的、锁住位于由用户输入的范围中内的边的处理。
图37是说明本锁住处理的全体处理流程的流程图。首先,在步骤S3701中,布局编辑应用程序121把由基于用户的定点设备(132、133)的输入指定的X、Y方向的范围代入作为指定范围信息而保持的变量“Value_X、Value_Y”中。这里的范围是确定将从页面内的最外侧的边的坐标到内侧的某处为止作为锁住的对象的值。而且,通过步骤S3702~S3705的处理,来锁住容器的各边。以下具体说明各边的锁住。
(左边的锁住)
图38是具体说明图37的步骤S3702的锁住容器的左边的处理流程的流程图。首先,在步骤S3801中,布局编辑应用程序121获得布局的全部容器的左边的最小X坐标。然后把获得的最小X坐标代入到Min_X中(S3802)。接着,在步骤S3803中,把1代入到变量i中,在步骤S3804中,把0代入到变量k中。
布局编辑应用程序121准备Lock_Cont[],用0进行初始化(S3805)。这里,变量i表示容器的编号,变量k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。
接着,在步骤S3806中,布局编辑应用程序121从第i容器的左边的X坐标减去Min_X,检查该值是否为指定范围信息的X坐标即小于等于Value_X。如果是小于等于Value_X(S3806-是),则第i容器在作为锁住对象而指定的范围内,因此把变量i代入到Lock_Cont[k]中(S3807)。然后,增加k和i(S3808、S3809)。
在步骤S3806中,在大于Value_X的情况下(S3806-否),不代入到Lock_Cont中,把变量i增加(S3809)。然后确认对于全部容器,处理是否结束(S3810),如果未结束(S3810-否),就进入步骤S3806,反复进行处理。如果结束,处理就进入步骤S3811,把0代入到k。然后,处理就进入步骤S3812,检查Lock_Cont[k]的值。如果值为0,就不设定锁住,结束该处理。如果值不为0(S3812-否),就锁住第Lock_Cont[k]容器的左边(S3813)。然后进入步骤S3814,把变量k增加,反复进行步骤S3813和S3814的处理,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,在页面内位于从最左到用户指定的范围内的容器的左边全部被锁住。
图39是表示容器的左边的锁住状态的图,3901是指定多个容器的选择的矩形,3902、3903、3904表示链接,3905表示锁住的容器的边,3906表示最小的X坐标,3907表示成为锁住对象的指定范围的边界线,3908表示Value_X的间距。如该图所示,如果进行图38的处理,则锁住位于从最小X坐标3906到由Value_X3908指定的范围内的容器的左边(S3905)。这时,在符合多个边的情况下,符合的多个边全部被锁住。
(右边的锁住)
图40是具体说明图37的步骤S3703的锁住容器的右边的处理流程的流程图。首先,在步骤S4001中,布局编辑应用程序121获得布局的全部容器的右边的最大X坐标。然后把获得的最大X坐标代入到Max_X中(S4002)。接着,在步骤S4003中,把1代入到变量i,在步骤S4004中,把0代入到变量k。
准备Lock_Cont[],用0进行初始化(S4005)。这里,变量i表示容器的编号,变量k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。接着在步骤S4006中,从Max_X减去第i容器的右边的X坐标,检查该值是否为指定范围信息的X坐标即小于等于Value_X。如果小于等于Value_X(S4006-是),则第i容器在作为锁住对象而指定的范围内,因此把变量i代入到Lock_Cont[k]中(S4007)。然后,增加变量k和变量i(S4008、S4009)。
在步骤S4006中,在大于Value_X的情况下(S4006-否),不代入到Lock_Cont中,把变量i增加(S3809)。然后确认对于全部容器,处理是否结束(S4010),如果未结束(S4010-否),就进入步骤S4006,反复进行处理。如果结束,处理就进入步骤S4011,把0代入到变量k。然后,处理就进入步骤S4012,检查Lock_Cont[k]的值。如果值为0,就不设定锁住,结束该处理。如果值不为0(S4012-否),处理就进入步骤S4013,就锁住第Lock_Cont[k]容器的右边。然后进入步骤S4014,把变量k增加,反复进行步骤S4013和4014的处理,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,在页面内位于从最右到用户指定的范围内的容器的右边全部被锁住。
图41是表示容器的右边的锁住状态的图,4101是指定多个容器的选择的矩形,4102、4103、4104表示链接,4105表示锁住的边,4106表示最小的X坐标,4107表示最大X坐标,4106表示成为锁住对象的指定范围的边界线,4108表示Value_X的间距。如该图所示,如果进行图40的处理,则锁住位于从最大X坐标到由Value_X4108指定的范围内的容器的右边(S4105)。这时,在符合多个边的情况下,符合的多个边全部被锁住。
(上边的锁住)
图42是具体说明图37的步骤S3704的锁住容器的上边的处理流程的流程图。首先,在步骤S4201中,获得布局的全部容器的左边的最小Y坐标。然后把获得的最小Y坐标代入到Min_Y中(S4202)。接着,在步骤S4203中,把1代入到变量i中,在步骤S4204中,把0代入变量k中。
准备Lock_Cont[],用0进行初始化(S4205)。这里,变量i表示容器的编号,变量k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。接着在步骤S4206中,从第i容器的上边的Y坐标减去Min_X,检查该值是否小于等于Value_Y。如果小于等于Value_Y(S4206-是),则第i容器在作为锁住对象而指定的范围内,因此把变量i代入Lock_Cont[k]中(S4207)。然后,增加k和i(S4208、S4209)。
在步骤S4206中,在大于Value_Y的情况下(S4206-否),不代入到Lock_Cont中,而把变量i增加(S4209)。然后确认对于全部容器,处理是否结束(S4210),如果未结束(S4210-否),就进入步骤S4206,反复进行处理。如果结束(S4210-是),处理就进入步骤S4211,把0代入到变量k。然后,处理就进入步骤S4212,检查Lock_Cont[k]的值。如果值为0,就不设定锁住,结束该处理。如果值不为0(S4212-否),就处理就进入步骤S4213,锁住第Lock_Cont[k]容器的上边。然后进入步骤S4214,把变量k增加,反复进行步骤S4213和S4214的处理,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,在页面内位于从最上到用户指定的范围内的容器的上边全部被锁住。
图43是表示容器的上边的锁住状态的图,4301是指定多个容器的选择的矩形,4302、4303表示链接,4304表示最小的Y坐标,4305表示成为锁住对象的指定范围的边界线,4308表示Value_Y的间距。如该图所示,如果进行图42的处理,则锁住位于从最小Y坐标到由Value_Y4308指定的范围内的容器的上边(4306)。这时,在符合多个边的情况下,符合的多个边全部被锁住。
(下边的锁住)
图44是具体说明图37的步骤S3705的锁住容器的下边的处理流程的流程图。首先,在步骤S4401中,获得布局的全部容器的下边的最大Y坐标。然后把获得的最大Y坐标代入Max_Y中(S4402)。接着,在步骤S4403中,把1代入到变量i中,在步骤S4404中,把0代入到变量k中。
准备Lock_Cont[],用0进行初始化(S4405)。这里,变量i表示容器的编号,变量k是表示Lock_Cont[]的下标的变量,Lock_Cont[]是存储锁住对象的容器的编号的排列。接着在步骤S4406中,从Max_Y减去第i容器的下边的Y坐标,检查该值是否小于等于Value_Y。如果小于等于Value_Y(S4206-是),则第i容器在作为锁住对象而指定的范围内,所以把变量i代入到Lock_Cont[k]中(S4407)。然后,增加变量k和变量i(S4408、S4409)。
在步骤S4406中,在大于Value_Y的情况下(S4406-否),不代入到Lock_Cont中,把变量i增加(S4409)。然后确认对于全部容器,处理是否结束(S4409),如果未结束(S4410-否),就进入步骤S4406,反复进行处理。如果结束(S4410-是),就进入步骤S4411,把0代入到变量k。然后,处理就进入步骤S4412,检查Lock_Cont[k]的值。如果值为0,就不设定锁住,结束该处理。如果值不为0(S4412-否),处理就进入步骤S4413,就锁住第Lock_Cont[k]容器的下边。然后进入步骤S4414,把变量k增加,反复进行步骤S4413和4414的处理,直到Lock_Cont[k]的值变为0。通过该处理,在设定链接的容器的边中,在页面内位于从最下到用户指定的范围内的容器的下边全部被锁住。这时,在符合多个边的情况下,符合的多个边全部被锁住。
图45是表示容器的下边的锁住状态的图,4501是指定多个容器的选择的矩形,4502、4503表示链接,4504表示最大的Y坐标,4505表示成为锁住对象的指定范围的边界线,4508表示Value_Y的间距。如该图所示,如果进行图44的处理,则锁住位于从最大Y坐标到由Value_Y指定的范围内的容器的下边,但是,在此,在选择的范围内没有锁住对象的容器,因此不锁住。
如上所述,根据本实施方式,对于多个容器之间,可以用一个操作统一设定链接,可以实现高效率的操作。
(其它实施方式)
不言而喻,通过对系统或装置供给记录了实现上述实施方式的功能的软件的程序代码的存储介质,该系统或装置的计算机(或CPU和MPU)读出存储在存储介质中的程序代码,由此也可以实现本发明的目的。
在这种情况下,从存储介质读出的程序代码自身实现上述实施方式的功能,存储该程序代码的存储介质就构成本发明。
作为用于供给程序代码的存储介质,例如,可以使用软盘、硬盘、光盘、光磁盘、CD-ROM、CD-R、磁带、非易失性存储卡、ROM等。
此外,不言而喻,也包括以下情况:通过执行计算机读出的程序代码,不仅实现上述实施方式的功能,按照程序代码的指示,在计算机上运行的OS(操作系统)等进行实际处理的一部分或全部,通过该处理来实现上述实施方式的功能。
不言而喻,也包括以下情况:从存储介质读出的程序代码写入插入到计算机的功能扩展板或连接在计算机上的功能扩展单元上具有的存储器后,按照程序代码的指示,功能扩展板或功能扩展单元上具有的CPU进行实际的处理的一部分或全部,通过该处理来实现上述实施方式的功能。
在不脱离本发明的精神和范围的前提下,可以有许多明显不同的实施方式,因此,可以理解为,本发明不限于上述具体实施方式,而是用下面的权利要求中来限定。

Claims (22)

1.一种布局控制方法,在局部显示区域之间设定使该局部显示区域相互连结的链接,并根据分配给该局部显示区域的数据,调整该局部显示区域的位置,其中所述局部显示区域容纳被分配的数据,将该数据在页面上进行布局,所述布局控制方法包括:
指示步骤,用于对上述多个局部显示区域设定多个链接;
指定步骤,指定多个上述局部显示区域;
位置信息获得步骤,获得上述指定的上述局部显示区域的位置信息;以及
设定步骤,当由上述指示步骤指示了多个链接的设定时,根据上述获得的位置信息,对于由上述指定步骤所指定的多个局部显示区域,设定多个链接。
2.根据权利要求1所述的布局控制方法,其特征在于,
还具有用于控制上述局部显示区域的上述页面上的布局的布局控制步骤,
其中,在为了容纳上述分配的数据而改变上述局部显示区域的尺寸时,上述布局控制步骤使该局部显示区域和利用上述链接而连接的上述其它局部显示区域连动,控制该局部显示区域和该其它局部显示区域的尺寸的变化。
3.根据权利要求2所述的布局控制方法,其特征在于,
上述布局控制步骤,根据上述局部显示区域的尺寸的变化,可变地控制上述链接的长度。
4.根据权利要求1所述的布局控制方法,其特征在于,
上述设定步骤特别指定成为基准的局部显示区域,对于布局在该特别指定的局部显示区域附近位置的局部显示区域,设定上述链接。
5.根据权利要求2所述的布局控制方法,其特征在于,
上述布局控制步骤判断上述局部显示区域的尺寸改变后的布局位置在上述页面上是否位于布局受到限制的位置,当位于上述受到限制的位置时,再次设定上述局部显示区域的尺寸,以便不违反该限制。
6.根据权利要求5所述的布局控制方法,其特征在于,
上述布局控制步骤进行固定,使得不能进行再次设定了上述尺寸的上述局部显示区域的边的移动。
7.根据权利要求1所述的布局控制方法,其特征在于,
还具有控制用于布局控制的输入输出的接口控制步骤,
其中,上述接口控制步骤将上述所指定的多个上述局部显示区域中的链接的设定结果显示在显示装置上来使其可视化。
8.根据权利要求7所述的布局控制方法,其特征在于,
上述接口控制步骤对于通过输入装置指定了修改的单个链接,改变上述链接的设定。
9.根据权利要求1所述的布局控制方法,其特征在于,
上述设定步骤特别指定成为基准的局部显示区域,对于位于最接近该特别指定的局部显示区域的局部显示区域,设定链接,或从该特别指定的局部显示区域直接对可以设定链接的局部显示区域设定链接。
10.根据权利要求1所述的布局控制方法,其特征在于,
上述设定步骤对水平方向或垂直方向设定多个链接。
11.根据权利要求1所述的布局控制方法,其特征在于,
上述设定步骤对水平方向和垂直方向设定多个链接。
12.一种布局控制装置,在局部显示区域之间设定使该局部显示区域相互连结的链接,并根据分配给该局部显示区域的数据,调整该局部显示区域的位置,其中所述局部显示区域容纳被分配的数据,将该数据在页面上进行布局,所述布局控制装置,包括:
指示装置,对上述多个局部显示区域设定多个链接;
指定装置,指定多个上述局部显示区域;
位置信息获得装置,获得上述指定的上述局部显示区域的位置信息;
设定装置,当由上述指示单元指示了多个链接的设定时,根据上述获得的位置信息,对于由上述指定装置所指定的多个局部显示区域,设定多个链接。
13.根据权利要求12所述的布局控制装置,其特征在于,
还具有用于控制上述局部显示区域的上述页面上的布局的布局控制装置,
其中,在为了容纳上述分配的数据而改变上述局部显示区域的尺寸时,上述布局控制装置使该局部显示区域和利用上述链接而连接的上述其它局部显示区域连动,控制该局部显示区域和该其它局部显示区域的尺寸的变化。
14.根据权利要求13所述的布局控制装置,其特征在于,
上述布局控制装置,根据上述局部显示区域的尺寸的变化,可变地控制上述链接的长度。
15.根据权利要求12所述的布局控制装置,其特征在于,
上述设定装置特别指定成为基准的局部显示区域,对于布局在该特别指定的局部显示区域附近位置的局部显示区域,设定上述链接。
16.根据权利要求13所述的布局控制装置,其特征在于,
上述布局控制装置判断上述局部显示区域的尺寸变化后的布局位置在上述页面上是否位于布局受到限制的位置,当位于该受到限制的位置时,再次设定该局部显示区域的尺寸,以便不违反该限制。
17.根据权利要求16所述的布局控制装置,其特征在于,
上述布局控制装置进行固定,使得不能再次进行设定上述尺寸的上述局部显示区域的边的移动。
18.根据权利要求12所述的布局控制装置,其特征在于,
还具有控制用于布局控制的输入输出的接口控制装置;
该接口控制装置将上述指定的多个上述局部显示区域中的链接的设定结果显示在显示装置上来使其可视化。
19.根据权利要求18所述的布局控制装置,其特征在于,
上述接口控制装置对于通过输入装置指定了修改的单个链接,改变上述链接的设定。
20.根据权利要求12所述的布局控制装置,其特征在于,
上述设定装置特别指定成为基准的局部显示区域,对于位于最接近该特别指定的局部显示区域的局部显示区域,设定链接,或从该特别指定的局部显示区域直接对可以设定链接的局部显示区域设定链接。
21.根据权利要求12所述的布局控制装置,其特征在于,
上述设定装置对水平方向或垂直方向设定多个链接。
22.根据权利要求12所述的布局控制装置,其特征在于,
上述设定装置对水平方向和垂直方向设定多个链接。
CNB2005100051023A 2004-01-30 2005-01-28 布局控制方法和布局控制装置 Expired - Fee Related CN1313916C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2004024589 2004-01-30
JP024589/2004 2004-01-30
JP2004371886A JP4165888B2 (ja) 2004-01-30 2004-12-22 レイアウト制御方法、レイアウト制御装置及びレイアウト制御プログラム
JP371886/2004 2004-12-22

Publications (2)

Publication Number Publication Date
CN1648847A true CN1648847A (zh) 2005-08-03
CN1313916C CN1313916C (zh) 2007-05-02

Family

ID=34656296

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100051023A Expired - Fee Related CN1313916C (zh) 2004-01-30 2005-01-28 布局控制方法和布局控制装置

Country Status (5)

Country Link
US (1) US7735004B2 (zh)
EP (1) EP1560127A3 (zh)
JP (1) JP4165888B2 (zh)
KR (1) KR100721496B1 (zh)
CN (1) CN1313916C (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007041924A1 (fr) * 2005-10-14 2007-04-19 Huawei Technologies Co., Ltd. Dispositif de mise en oeuvre d'une présentation de page flexible et procédé correspondant
CN101894168A (zh) * 2010-06-30 2010-11-24 优视科技有限公司 移动终端网页页面的排版显示方法及系统
WO2011057428A1 (en) * 2009-11-13 2011-05-19 Google Inc. Aligning user interface elements
CN102193795A (zh) * 2010-03-12 2011-09-21 国际商业机器公司 布局变换装置、布局变换程序以及布局变换方法
CN103314368A (zh) * 2011-01-25 2013-09-18 惠普发展公司,有限责任合伙企业 文件设计捕获和重复使用系统
CN103914285A (zh) * 2012-12-31 2014-07-09 北京新媒传信科技有限公司 一种用户界面布局的方法、装置及终端设备
CN106886526A (zh) * 2015-12-16 2017-06-23 北京奇虎科技有限公司 推广链接的布局方法及布局装置
CN107145344A (zh) * 2014-09-02 2017-09-08 起元科技有限公司 在基于图的程序中指定组件
CN107545062A (zh) * 2017-09-05 2018-01-05 北京小度信息科技有限公司 入口召回方法、装置、存储介质和电子设备
US11301445B2 (en) 2014-09-02 2022-04-12 Ab Initio Technology Llc Compiling graph-based program specifications

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7272258B2 (en) 2003-01-29 2007-09-18 Ricoh Co., Ltd. Reformatting documents using document analysis information
JP4095592B2 (ja) * 2004-08-06 2008-06-04 キヤノン株式会社 情報処理装置、情報処理方法ならびにプログラム
JP4047308B2 (ja) * 2004-08-06 2008-02-13 キヤノン株式会社 レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP4111519B2 (ja) * 2004-08-31 2008-07-02 キヤノン株式会社 レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP4332480B2 (ja) * 2004-08-31 2009-09-16 キヤノン株式会社 レイアウト調整方法及び装置並びにプログラム
GB2421106A (en) * 2004-12-07 2006-06-14 Hewlett Packard Development Co A method and apparatus for preparing variable-data documents for publishing
JP2006277727A (ja) * 2005-03-04 2006-10-12 Canon Inc レイアウト処理方法、情報処理装置及びコンピュータプログラム
JP4241647B2 (ja) * 2005-03-04 2009-03-18 キヤノン株式会社 レイアウト制御装置、レイアウト制御方法及びレイアウト制御プログラム
US20060236230A1 (en) * 2005-04-15 2006-10-19 Xiaofan Lin Automatic layout adjustment for documents containing text
US20060248071A1 (en) * 2005-04-28 2006-11-02 Xerox Corporation Automated document localization and layout method
JP4732029B2 (ja) * 2005-06-29 2011-07-27 キヤノン株式会社 レイアウト決定方法および情報処理装置およびレイアウト決定プログラム
US9164741B2 (en) 2005-07-29 2015-10-20 Adobe Systems Incorporated Enhanced design guides
US7779362B1 (en) * 2005-09-02 2010-08-17 Adobe Systems Inc. Methods and apparatus for selecting objects by state
GB2430060A (en) * 2005-09-08 2007-03-14 Hewlett Packard Development Co Flows for variable data printing
KR100736077B1 (ko) * 2005-10-24 2007-07-06 삼성전자주식회사 데이터 방송의 텍스트를 제어하는 장치 및 그 방법
JP4393444B2 (ja) * 2005-11-02 2010-01-06 キヤノン株式会社 情報処理方法およびその装置
US7761789B2 (en) 2006-01-13 2010-07-20 Ricoh Company, Ltd. Methods for computing a navigation path
JP2007241661A (ja) * 2006-03-08 2007-09-20 Canon Inc 画像形成装置およびその制御方法
JP2007334510A (ja) * 2006-06-13 2007-12-27 Canon Inc 自動レイアウトシステム及び方法
US8943397B2 (en) * 2006-10-13 2015-01-27 International Business Machines Corporation Configurable column display of information at a web client
JP4956202B2 (ja) * 2007-01-16 2012-06-20 キヤノン株式会社 情報処理装置及び情報処理方法及びプログラム
US8584042B2 (en) 2007-03-21 2013-11-12 Ricoh Co., Ltd. Methods for scanning, printing, and copying multimedia thumbnails
US8812969B2 (en) 2007-03-21 2014-08-19 Ricoh Co., Ltd. Methods for authoring and interacting with multimedia representations of documents
US8583637B2 (en) 2007-03-21 2013-11-12 Ricoh Co., Ltd. Coarse-to-fine navigation through paginated documents retrieved by a text search engine
AU2007201627B2 (en) * 2007-04-13 2010-11-25 Canon Kabushiki Kaisha Gluing layout containers
KR100844071B1 (ko) * 2007-05-09 2008-07-07 엘지전자 주식회사 웹페이지 표시가 가능한 이동통신 단말기 및 그 제어방법
US20090006451A1 (en) 2007-06-29 2009-01-01 Microsoft Corporation Web Page-Container Interactions
US8838729B2 (en) 2007-06-29 2014-09-16 Microsoft Corporation Gathering statistics based on container exchange
US8626771B2 (en) 2007-06-29 2014-01-07 Microsoft Corporation Container reputation
JP5322421B2 (ja) * 2007-10-02 2013-10-23 キヤノン株式会社 情報処理装置およびその方法
US8738659B1 (en) * 2007-10-22 2014-05-27 Data Recognition Corporation Method and apparatus for managing priority in standardized test and survey imaging
US8649601B1 (en) 2007-10-22 2014-02-11 Data Recognition Corporation Method and apparatus for verifying answer document images
US8488220B1 (en) 2007-10-22 2013-07-16 Data Recognition Corporation Method and apparatus for calibrating imaging equipment
US8526055B1 (en) 2007-10-22 2013-09-03 Data Recognition Corporation Standardized test and survey imaging system
TWI423163B (zh) * 2008-06-13 2014-01-11 Hon Hai Prec Ind Co Ltd 聚合實體圖層轉換系統及方法
US10114875B2 (en) * 2008-06-27 2018-10-30 Microsoft Technology Licensing, Llc Dashboard controls to manipulate visual data
US20100218090A1 (en) * 2009-02-26 2010-08-26 Universal - Ad Ltd. Sub-page-based page layout system and method thereof
JP5391873B2 (ja) * 2009-06-30 2014-01-15 コニカミノルタ株式会社 画像形成装置
US9811511B1 (en) * 2009-11-11 2017-11-07 West Corporation Method and apparatus of creating customized computer-based user dashboard interfaces
US10713666B2 (en) * 2009-12-24 2020-07-14 Outbrain Inc. Systems and methods for curating content
US9417787B2 (en) * 2010-02-12 2016-08-16 Microsoft Technology Licensing, Llc Distortion effects to indicate location in a movable data collection
US8479117B2 (en) * 2010-06-04 2013-07-02 Lenovo (Singapore) Pte. Ltd. Intelligent window sizing for graphical user interfaces
CN101998167B (zh) * 2010-08-16 2014-11-05 中兴通讯股份有限公司 电子节目菜单展示管理方法及系统
JP5277230B2 (ja) * 2010-11-11 2013-08-28 株式会社バッファロー タグ情報管理装置、タグ情報管理システム、タグ情報管理プログラム、タグ情報管理方法
US8863039B2 (en) 2011-04-18 2014-10-14 Microsoft Corporation Multi-dimensional boundary effects
KR20120123197A (ko) * 2011-04-19 2012-11-08 삼성전자주식회사 오브젝트 배치 장치 및 방법
US10061860B2 (en) * 2011-07-29 2018-08-28 Oath Inc. Method and system for personalizing web page layout
KR101999182B1 (ko) * 2012-04-08 2019-07-11 삼성전자주식회사 사용자 단말 장치 및 그의 제어 방법
CN103902170B (zh) * 2012-12-27 2017-03-22 深圳市金蝶天燕中间件股份有限公司 网页内容定位方法和装置
CN104794116B (zh) * 2014-01-16 2019-03-19 阿里巴巴集团控股有限公司 一种页面中元素的布局方法和装置
CN106033387B (zh) * 2015-03-11 2018-09-11 广州市动景计算机科技有限公司 测试flash内部控件的方法和装置
JP6464862B2 (ja) * 2015-03-24 2019-02-06 富士通株式会社 表示プログラム、表示方法及び表示装置
US10217254B2 (en) * 2015-09-24 2019-02-26 Oracle International Corporation Graphical editing of memory layout rules for software programs
US9959257B2 (en) * 2016-01-08 2018-05-01 Adobe Systems Incorporated Populating visual designs with web content
JP2017151768A (ja) * 2016-02-25 2017-08-31 富士ゼロックス株式会社 翻訳プログラム及び情報処理装置
JP6812170B2 (ja) * 2016-08-29 2021-01-13 キヤノン株式会社 情報処理装置、その制御方法、および制御プログラム
US10402786B2 (en) 2016-12-30 2019-09-03 Dropbox, Inc. Managing projects in a content management system
US10409895B2 (en) * 2017-10-17 2019-09-10 Qualtrics, Llc Optimizing a document based on dynamically updating content
US10697757B2 (en) * 2017-12-22 2020-06-30 Symbol Technologies, Llc Container auto-dimensioning
CN110262938B (zh) * 2019-05-07 2023-10-27 创新先进技术有限公司 一种内容监控方法和装置

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5214756A (en) * 1989-03-10 1993-05-25 International Business Machines Corporation Direct manipulation of icons via conversational linking
US5214755A (en) * 1989-04-25 1993-05-25 Microsoft Corporation Document processing method and system
US6678864B1 (en) * 1992-02-25 2004-01-13 Irving Tsai Method and apparatus for linking designated portions of a received document image with an electronic address
US5437008A (en) * 1992-06-23 1995-07-25 Adobe Systems Incorporated Method of establishing constraints and links in a distribution frame between graphical elements and resolving the constaints
AU1522095A (en) * 1994-01-05 1995-08-01 Peter J. Covey Dynamic-state, multi-dimensional, multi-media database
US5845303A (en) * 1994-12-06 1998-12-01 Netpodium, Inc. Document processing using frame-based templates with hierarchical tagging
US5900002A (en) * 1995-01-09 1999-05-04 Josten, Inc. Method and apparatus for manipulating page layouts in a desktop publishing system
JP3922396B2 (ja) 1995-03-16 2007-05-30 ソニー株式会社 レイアウト装置および表示装置
US5953733A (en) * 1995-06-22 1999-09-14 Cybergraphic Systems Ltd. Electronic publishing system
US5796401A (en) * 1996-08-09 1998-08-18 Winer; Peter W. System for designing dynamic layouts adaptable to various display screen sizes and resolutions
US6596032B2 (en) * 1996-10-15 2003-07-22 Fujitsu Limited Document processing apparatus storing and modifying data using effect data
KR100213890B1 (ko) * 1997-03-26 1999-08-02 윤종용 객체 관리 콘테이너 및 방법
US7278098B1 (en) * 1997-04-09 2007-10-02 Adobe Systems Incorporated Method and apparatus for implementing web pages having smart tables
JPH11316792A (ja) 1998-02-27 1999-11-16 Mantaro Yajima 情報処理装置及び帳表作成方法
US6323879B1 (en) * 1998-05-14 2001-11-27 Autodesk, Inc. Method and system for determining the spacing of objects
US6232983B1 (en) * 1998-06-01 2001-05-15 Autodesk, Inc. Positioning and alignment aids for shape objects having authorable behaviors and appearances
JP2000207396A (ja) 1999-01-08 2000-07-28 Dainippon Screen Mfg Co Ltd 文書レイアウト装置
US6486898B1 (en) * 1999-03-31 2002-11-26 Koninklijke Philips Electronics N.V. Device and method for a lattice display
US6931591B1 (en) * 1999-10-15 2005-08-16 Saepio Technologies, Inc. Publishing layout wizard
US6826727B1 (en) * 1999-11-24 2004-11-30 Bitstream Inc. Apparatus, methods, programming for automatically laying out documents
US7194680B1 (en) * 1999-12-07 2007-03-20 Adobe Systems Incorporated Formatting content by example
JP2001184346A (ja) * 1999-12-24 2001-07-06 Matsushita Electric Ind Co Ltd 文書編集装置および文書編集プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2001216292A (ja) * 2000-01-31 2001-08-10 Toshiba Corp レイアウト画像編集装置及びレイアウト画像編集方法
WO2001071549A1 (fr) 2000-03-17 2001-09-27 Fujitsu Limited Support enregistre lisible par ordinateur sur lequel est enregistre un programme de creation de documents, et systeme et procede de creation de documents
US7093196B1 (en) * 2000-06-10 2006-08-15 Oracle International Corporation Method and apparatus for aligning items relatively within an electronic document
US7028255B1 (en) * 2000-08-14 2006-04-11 Adobe Systems Incorporated Self-sizing object placement
US7051276B1 (en) * 2000-09-27 2006-05-23 Microsoft Corporation View templates for HTML source documents
JP3835193B2 (ja) * 2001-03-30 2006-10-18 セイコーエプソン株式会社 ディジタルコンテンツ作成システム及びディジタルコンテンツ作成プログラム
US7216298B1 (en) * 2001-06-07 2007-05-08 Oracle International Corporation System and method for automatic generation of HTML based interfaces including alternative layout modes
US7487444B2 (en) * 2002-03-19 2009-02-03 Aol Llc Reformatting columns of content for display
JP3870834B2 (ja) 2002-05-08 2007-01-24 セイコーエプソン株式会社 画像自動レイアウト装置及び同装置におけるレイアウト枠決定方法、並びに自動レイアウトプログラム
US7415452B1 (en) * 2002-06-21 2008-08-19 Adobe Systems Incorporated Traversing a hierarchical layout template
US7487445B2 (en) * 2002-07-23 2009-02-03 Xerox Corporation Constraint-optimization system and method for document component layout generation
US7243303B2 (en) * 2002-07-23 2007-07-10 Xerox Corporation Constraint-optimization system and method for document component layout generation
US7107525B2 (en) * 2002-07-23 2006-09-12 Xerox Corporation Method for constraint-based document generation
US7454699B2 (en) * 2003-03-24 2008-11-18 Microsoft Corporation Smart content insertion
US7246311B2 (en) * 2003-07-17 2007-07-17 Microsoft Corporation System and methods for facilitating adaptive grid-based document layout
US7395510B2 (en) * 2003-12-16 2008-07-01 Hewlett-Packard Development Company, L.P. Method of, and system for, adjusting a document configuration
JP4250540B2 (ja) * 2004-01-30 2009-04-08 キヤノン株式会社 レイアウト調整方法および装置およびレイアウト調整プログラム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007041924A1 (fr) * 2005-10-14 2007-04-19 Huawei Technologies Co., Ltd. Dispositif de mise en oeuvre d'une présentation de page flexible et procédé correspondant
US9135023B2 (en) 2009-11-13 2015-09-15 Google Inc. Aligning user interface elements
WO2011057428A1 (en) * 2009-11-13 2011-05-19 Google Inc. Aligning user interface elements
US8694897B2 (en) 2010-03-12 2014-04-08 International Business Machines Corporation Layout converter, layout conversion program, and layout conversion method
CN102193795A (zh) * 2010-03-12 2011-09-21 国际商业机器公司 布局变换装置、布局变换程序以及布局变换方法
CN102193795B (zh) * 2010-03-12 2015-10-28 国际商业机器公司 布局变换装置以及布局变换方法
CN101894168B (zh) * 2010-06-30 2013-02-06 优视科技有限公司 移动终端网页页面的排版显示方法及系统
CN101894168A (zh) * 2010-06-30 2010-11-24 优视科技有限公司 移动终端网页页面的排版显示方法及系统
CN103314368A (zh) * 2011-01-25 2013-09-18 惠普发展公司,有限责任合伙企业 文件设计捕获和重复使用系统
CN103314368B (zh) * 2011-01-25 2016-01-06 惠普发展公司,有限责任合伙企业 文件设计捕获和重复使用系统
CN103914285A (zh) * 2012-12-31 2014-07-09 北京新媒传信科技有限公司 一种用户界面布局的方法、装置及终端设备
CN107145344A (zh) * 2014-09-02 2017-09-08 起元科技有限公司 在基于图的程序中指定组件
US11301445B2 (en) 2014-09-02 2022-04-12 Ab Initio Technology Llc Compiling graph-based program specifications
CN106886526A (zh) * 2015-12-16 2017-06-23 北京奇虎科技有限公司 推广链接的布局方法及布局装置
CN107545062A (zh) * 2017-09-05 2018-01-05 北京小度信息科技有限公司 入口召回方法、装置、存储介质和电子设备

Also Published As

Publication number Publication date
JP4165888B2 (ja) 2008-10-15
KR100721496B1 (ko) 2007-05-23
EP1560127A2 (en) 2005-08-03
US20050172226A1 (en) 2005-08-04
JP2005242992A (ja) 2005-09-08
CN1313916C (zh) 2007-05-02
EP1560127A3 (en) 2006-09-13
KR20060042891A (ko) 2006-05-15
US7735004B2 (en) 2010-06-08

Similar Documents

Publication Publication Date Title
CN1313916C (zh) 布局控制方法和布局控制装置
CN100337187C (zh) 布局调整方法、布局调整装置及程序
CN1731391A (zh) 布局处理方法、信息处理装置
CN1828516A (zh) 布局控制装置和布局控制方法
CN1731399A (zh) 信息处理装置及其控制方法
CN1110745C (zh) 具有面向目标的打印接口的操作系统
CN1912825A (zh) 信息处理装置及其控制方法
CN1731397A (zh) 信息处理装置及其控制方法
CN1828517A (zh) 文档处理装置和文档处理方法
CN1811691A (zh) 信息处理装置及其控制方法
CN1648846A (zh) 文件处理装置和文件处理方法
CN1126025C (zh) 窗口显示装置
CN1163837C (zh) 网络访问管理系统和方法
CN100351770C (zh) 布局调整方法和装置
CN100337188C (zh) 布局处理方法和信息处理装置
CN1842126A (zh) 信息处理装置、图像处理装置和方法及为此的存储介质
CN101046729A (zh) 信息处理设备和其控制方法
CN101046728A (zh) 信息处理设备和其控制方法
CN1940912A (zh) 文件作成系统、文件作成方法、程序以及存储介质
CN1673896A (zh) 输出信息提供方法和提供系统及文档输出方法和输出系统
CN1648849A (zh) 布局调整方法和装置
CN1530855A (zh) 布局系统和布局程序以及布局方法
CN1605081A (zh) Xml打印机系统
CN1815435A (zh) 文档处理装置和文档处理方法
CN1684062A (zh) 文档处理装置及其控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070502

Termination date: 20160128

EXPY Termination of patent right or utility model