JP7344632B2 - 自動レイアウトエンジン - Google Patents

自動レイアウトエンジン Download PDF

Info

Publication number
JP7344632B2
JP7344632B2 JP2018122782A JP2018122782A JP7344632B2 JP 7344632 B2 JP7344632 B2 JP 7344632B2 JP 2018122782 A JP2018122782 A JP 2018122782A JP 2018122782 A JP2018122782 A JP 2018122782A JP 7344632 B2 JP7344632 B2 JP 7344632B2
Authority
JP
Japan
Prior art keywords
layout
segment
segments
user interface
graphical user
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.)
Active
Application number
JP2018122782A
Other languages
English (en)
Other versions
JP2019016353A (ja
JP2019016353A5 (ja
Inventor
ハムリン ドリュー
チャン アンドリュー
ジョーゼフ フリン ザ サード ウィリアム
Original Assignee
セールスフォース インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by セールスフォース インコーポレイテッド filed Critical セールスフォース インコーポレイテッド
Publication of JP2019016353A publication Critical patent/JP2019016353A/ja
Publication of JP2019016353A5 publication Critical patent/JP2019016353A5/ja
Application granted granted Critical
Publication of JP7344632B2 publication Critical patent/JP7344632B2/ja
Active 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
    • 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
    • G06F40/106Display of layout of documents; Previewing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting

Landscapes

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

Description

ユーザーは、しばしば、様々な電子デバイス上で素晴らしく見えるスライドショーを迅速に作成したい。しかし、ユーザは、しばしば、従来のプレゼンテーションソフトウェアを使用して、様々な電子デバイス上で素晴らしく見えるスライドショーを迅速に作成することができない。これは、従来のプレゼンテーションソフトウェアが、しばしば、スライドに対してコンテンツを追加する以前にレイアウトテンプレートを選択することをユーザに要求するからである。レイアウトテンプレートは、コンテンツがスライド上でどのように表示されるかを定めることができる。例えば、レイアウトテンプレートは、ユーザが写真(pictures)、形状(shapes)、ビデオ、およびテキストといったオブジェクトを挿入することができる既定の場所を提供することができる。このことは、オブジェクトを場所のうち1つの中へ挿入し、かつ、オブジェクトのサイズと位置を調整するようにユーザに要求し得る。ユーザは、また、スライド上で他のオブジェクトを再配置する必要もあり得る。そのレイアウトテンプレートをユーザが好きではないと判断した場合に、ユーザは、異なるレイアウトテンプレートを選択し、かつ、オブジェクトを再構成する必要があり得る。このプロセスは退屈で、かつ、間違いが起こりやすい。ユーザーは、レイアウトテンプレートを繰り返し変更し、そして、スライド上のオブジェクトのサイズと位置を調整する必要があり得るからである。このプロセスは、また、素晴らしく見えず、かつ、貧弱なデザイン実践(design practices)に悩まされるスライドも、しばしば、結果として生じてしまう。
加えて、ユーザは、彼らのスライドショーが異なる電子デバイス上で素晴らしく見えることを確保するように望むことがある。例えば、ユーザは、大きなスクリーン上に投影される場合、および、スマートフォン上で表示される場合に、彼らのスライドショーが素晴らしく見えることを確保するように望むことがある。しかし、従来のプレゼンテーションソフトウェアは、各デバイスのユニークなディスプレイのサイズ、ディスプレイの向き、およびグラフィカルレンダリング機能(graphical rendering capabilities)について合わせて仕立てられたプレゼンテーションの異なるバージョンを作成するように、ユーザに要求し得る。このプロセスは退屈で、間違いが起こりやすく、そして、異なる電子デバイス上で不正確に又は一貫性なく表示されるプレゼンテーションを、しばしば、結果として生じてしまう。
このように、必要とされるものは、様々な異なる電子デバイス上で素晴らしく見えるスライドショーをユーザーが迅速に作成する方法である。
関連出願に対する相互参照
この出願は、同時係属である2017年6月29日出願の米国特許出願第15/637729号、タイトル”Presentation Collaboration with Various Electronic Devices”(代理人整理番号No.3462.0660000)、同時係属である2017年6月29日出願の米国特許出願第15/637096号、タイトル”Color Theme Maintenance For Presentation”(代理人整理番号No.3462.0630000)、同時係属である2017年6月29日出願の米国特許出願第15/637762号、タイトル”Permission Management Of Cloud-Based Documents”(代理人整理番号No.3462.0640000)、および、同時係属である2017年6月29日出願の米国特許出願第15/637077号、タイトル”Smart Defaults Based On Previous Settings For Presentation Slides”(代理人整理番号No.3462.0650000)に関し、これら全てが、全体における参照によりここにおいて包含されている。
添付の図面は、ここにおいて取り込まれ、かつ、本明細書の一部を形成している。
図1は、いくつかの実施形態に従った、自動レイアウトシステムのブロック図である。 図2は、いくつかの実施形態に従って、プレゼンテーションスライドについて複数のレイアウトセグメントを定義する、プレゼンテーションスライドの上部にあるグラフィカルユーザインターフェイスを示している。 図3Aは、いくつかの実施形態に従って、レイアウトセグメントの中へユーザがオブジェクトを挿入することに応じたレイアウト結果を示している。 図3Bは、いくつかの実施形態に従って、レイアウトセグメントの中へユーザがオブジェクトを挿入することに応じたレイアウト結果を示している。 図3Cは、いくつかの実施形態に従って、レイアウトセグメントの中へユーザがオブジェクトを挿入することに応じたレイアウト結果を示している。 図3Dは、いくつかの実施形態に従って、レイアウトセグメントの中へユーザがオブジェクトを挿入することに応じたレイアウト結果を示している。 図4は、いくつかの実施形態に従って、異なる電子デバイスにおけるディスプレイのためにレイアウト結果がどのようにアップデートされるかを示している。 図5は、いくつかの実施形態に従って、オブジェクトの自動レイアウトを実行するためのプロセスを説明するフローチャートである。 図6は、いくつかの実施形態に従って、様々な電子デバイスにわたりプレゼンテーションを表示するためのプロセスを説明するフローチャートである。 図7は、様々な実施形態を実装するために有用なコンピュータシステムの一例である。
図面において、同様な参照番号は、一般的に同一または類似のエレメントを示している。加えて、一般に、参照番号の一番左の桁は、その参照番号が最初に現れる図面を特定している。
ここにおいては、プレゼンテーションのスライド上でのオブジェクトの自動レイアウトのためのシステム、装置、デバイス、方法及び/又はコンピュータプログラム製品の実施形態、及び/又は、これらの組合せ及び部分的組合せが提供される。さらに、ここにおいて提供されるのは、異なるタイプの電子デバイスにおいてプレゼンテーションを表示するためのシステム、装置、デバイス、方法及び/又はコンピュータプログラム製品の実施形態、及び/又は、これらの組合せ及び部分的組合せである。
図1は、いくつかの実施形態に従った、自動レイアウトシステム100のブロック図である。自動レイアウトシステム100は、ユーザによってプレゼンテーションの中へ挿入されたオブジェクトを自動的に位置決めし、サイズ合わせして、そして、変換する。自動レイアウトシステム100は、また、特定のタイプの電子デバイスにおけるディスプレイのためにも、プレゼンテーションの中へ挿入されたオブジェクトを自動的に位置決めし、サイズ合わせして、そして、変換する。自動レイアウトシステム100は、レイアウトプラットフォーム102、プレゼンテーションスライド112、オブジェクト114、およびレイアウト結果116、を含んでいる。
いくつかの実施形態において、プレゼンテーションスライド112は、プレゼンテーションの中のスライドである。当業者によって理解されるように、プレゼンテーションスライド112に関してここにおいて説明される特徴は、また、デスクトップパブリッシング文書、フォトモンタージュ、パンフレット、配布資料、ポスター、または、様々な他のタイプの文書に対しても適用することができる。
いくつかの実施形態において、プレゼンテーションは、複数のプレゼンテーションスライド112を含んでよい。プレゼンテーションプログラムは、スライドショーとしてプレゼンテーションスライド112を表示することができる。
いくつかの実施形態において、プレゼンテーションスライド112は、1つまたはそれ以上のオブジェクト114を含んでよい。オブジェクト114は、当業者によって理解されるように、写真、形状、ビデオ、アニメーション、テキストブロック、または、種々の他のタイプのコンテンツであってよい。
いくつかの実施形態において、ユーザは、入力ジェスチャ(input gesture)を使用して、プレゼンテーションスライド112の中へオブジェクト114を挿入することができる。例えば、ユーザは、コンピュータマウスまたはタッチパッドを使用して、プレゼンテーションスライド112の上にオブジェクト114をドラッグアンドドロップする(dragging and dropping)ことによって、プレゼンテーションスライド112の中へオブジェクト114を挿入することができる。ユーザは、また、タッチジェスチャ(touch gesture)を使用して、プレゼンテーションスライド112の上にオブジェクト114をドラッグアンドドロップすることもできる。当業者によって理解されるように、ユーザは、様々な他のタイプの入力ジェスチャを使用して、プレゼンテーションスライド112の中へオブジェクト114を挿入することができる。
いくつかの実施形態において、レイアウトプラットフォーム102は、ユーザがプレゼンテーションスライド112の中へオブジェクトを挿入することに応じて、オブジェクト114を自動的に位置決めし、サイズ合わせし、そして、変換することができる。レイアウトプラットフォーム102は、また、ユーザがプレゼンテーションスライド112の中へオブジェクト114を挿入することに応じて、プレゼンテーションスライド112において1つまたはそれ以上の他のオブジェクト表示することができる。1つまたはそれ以上の他のオブジェクトを自動的に位置決めし、サイズ合わせし、そして、変換することもできる。レイアウトプラットフォーム102は、また、電子デバイスの1つまたはそれ以上のデバイス特性に基づいて、特定のタイプの電子デバイスにおけるディスプレイのために、オブジェクト114を自動的に位置決めし、サイズ合わせし、そして、変換することもできる。
いくつかの実施形態において、レイアウトプラットフォーム102は、ユーザがプレゼンテーションスライド112の中へオブジェクト114を挿入すること応じて、レイアウト結果116を生成する。レイアウト結果116は、レイアウトプラットフォーム102によるプレゼンテーションスライド112の変更を表すことができる。別の言葉で言えば、レイアウト結果116は、レイアウトプラットフォーム102によって変更されたオブジェクト114を含むプレゼンテーションスライド112であってよい。
いくつかの実施形態において、レイアウトプラットフォーム102は、当業者によって理解されるように、デスクトップコンピュータ、サーバコンピュータ、ラップトップ、タブレット、スマートフォン、または他の電子デバイスにおいて実装されてよい。いくつかの他の実施形態において、レイアウトプラットフォーム102は、クラウドコンピューティングプラットフォームにおいて実装されてよい。
いくつかの実施形態において、レイアウトプラットフォーム102は、レイアウトエンジン104、レイアウトルール106、オブジェクトアナライザ108、および、デバイスアナライザ110を含む。当業者によって理解されるように、レイアウトプラットフォーム102は、これらのエレメントの一部だけを含んでよい。例えば、レイアウトプラットフォーム102は、デバイスアナライザ110を含まなくてよい。
いくつかの実施形態において、レイアウトエンジン104は、ユーザがオブジェクト114をプレゼンテーションスライド112の中へ挿入することに応じて、オブジェクト114の1つまたはそれ以上のプロパティを変更することができる。例えば、レイアウトエンジン104は、ユーザが、入力ジェスチャを使用して、オブジェクト114をプレゼンテーションスライド112の中へ挿入することに応じて、オブジェクト114の1つまたはそれ以上のプロパティを変更することができる。当業者によって理解されるように、レイアウトエンジン104は、これらに限定されるわけではないが、オブジェクト114の位置、サイズ、向き、および色を含む、オブジェクト114の様々なタイプのプロパティを変更することができる。
いくつかの実施形態において、レイアウトエンジン104は、電子デバイスの1つまたはそれ以上のデバイス特性に基づいて、電子デバイスにおける表示のためにオブジェクト114の1つまたはそれ以上の特性を変更することができる。例えば、レイアウトエンジン104は、小さなポートレート指向スクリーン(portrait oriented screen)を有する電子デバイスに基づいて、電子デバイスにおける表示のためにオブジェクト114の1つまたはそれ以上の特性を変更することができる。例えば、レイアウトエンジン104は、ポートレート指向スクリーンを有するスマートフォンにおいて表示されているプレゼンテーションスライド112に応じて、オブジェクト114の向きをランドスケープ(landscape)からポートレートへ変えることができる。
いくつかの実施形態において、レイアウトエンジン104は、レイアウトルール106における1つまたはそれ以上のレイアウトルールに基づいてオブジェクト114を変更することができる。例えば、レイアウトエンジン104は、レイアウトルール106における1つまたはそれ以上のレイアウトルールに基づいて、オブジェクト114の位置、サイズ、向き、及び/又は、色を変更することができる。
いくつかの実施形態において、レイアウトルール106は、1つまたはそれ以上のレイアウトルールを定義するコンフィグレーションファイルであってよい。レイアウトルール106におけるレイアウトルールは、レイアウトエンジン104がオブジェクト114を変更するために使用するスタイルプリファレンスのセットを定義することができる。
いくつかの実施形態において、レイアウトルール106におけるレイアウトルールは、レイアウトエンジン104によってオブジェクト114について実行される1つまたはそれ以上のオペレーションとしてスタイルプリファレンスを指定することができる。例えば、レイアウトルール106におけるレイアウトルールは、1つまたはそれ以上のスケール(scale)、クロップ(crop)、及び/又は、回転(rotation)オペレーションを指定することができる。当業者によって理解されるように、レイアウトルールは、様々な他のタイプのオペレーションを指定することができる。さらに、当業者によって理解されるように、レイアウトルールは、複数のオブジェクト114に対する1つまたはそれ以上のオペレーションを指定することができる。
いくつかの実施形態において、レイアウトルール106におけるレイアウトルールは、また、レイアウトエンジン104によってオブジェクト114と関連付けられる1つまたはそれ以上のアクションとしてスタイルプリファレンスを指定することもできる。このことは、プレゼンテーションにおけるオブジェクトとユーザが直接的にインタラクションするための方法を提供しない従来のプレゼンテーションソフトウェアの問題を克服する。例えば、スマートフォンにおいて写真を含むプレゼンテーションを視聴しているユーザは、写真をタップしてその写真のフルスクリーン版を表示することができない。ここにおける実施形態は、この問題を解決する。例えば、レイアウトルール106におけるレイアウトルールは、プレゼンテーションスライド112が小さなスクリーン上に表示されているときに、オブジェクト114に関連するフルスクリーンアクションを指定することができる。従って、ユーザがプレゼンテーションスライド112の中のオブジェクト114をタップするとき、オブジェクト114がフルスクリーンで表示される。当業者によって理解されるように、レイアウトルールは、様々な他のタイプのオペレーションを指定することができる。
いくつかの実施形態において、レイアウトエンジン104は、オブジェクト114の1つまたはそれ以上のプロパティに基づいて、オブジェクト114に対して適用する1つまたはそれ以上のレイアウトルールを決定することができる。レイアウトエンジン104は、また、プレゼンテーションスライド112を表示する電子デバイスの1つまたはそれ以上のデバイス特性に基づいて、オブジェクト114に対して適用する1つまたはそれ以上のレイアウトルールを決定することもできる。レイアウトエンジン104は、また、オブジェクト114を含むレイアウトセグメントに基づいて、オブジェクト114に対して適用する1つまたはそれ以上のレイアウトルールを決定することもできる。当業者によって理解されるように、レイアウトエンジン104は、上記の組合せに基づいて、オブジェクト114に対して適用する1つまたはそれ以上のレイアウトルールを決定することができる。
いくつかの実施形態において、レイアウトルール106におけるレイアウトルールは、1つまたはそれ以上の条件(conditions)および関連するオペレーションを指定することができる。レイアウトエンジン104は、真(true)である1つまたはそれ以上の条件に応じて、関連するオペレーションを適用することができる。いくつかの実施形態において、条件は、オブジェクト114が特定のレイアウトセグメントの中に有るときに、関連するオペレーションをレイアウトエンジン104が適用することを指定することができる。いくつかの実施形態において、条件は、プレゼンテーションスライド112を表示している電子デバイスが1つまたはそれ以上のデバイス特性を有するときに、関連するオペレーションをレイアウトエンジン104が適用することを指定することができる。当業者によって理解されるように、条件は、上記の組合せに基づいて、関連するオペレーションをレイアウトエンジン104が適用することを指定することができる。
いくつかの実施形態において、レイアウトルール106におけるレイアウトルールは、コンフィギュレーションファイルの中で1つまたはそれ以上の条件および関連するオペレーションを指定することができる。いくつかの実施形態において、コンフィギュレーションファイルはテキストフォーマットファイルであってよい。例えば、コンフィギュレーションファイルは、JavaScript Object Notation(JSON)、Extensible Markup Language(XML)、または、様々な他のデータフォーマットを使用して、1つまたはそれ以上の条件および関連するオペレーションを指定することができる。
いくつかの実施形態において、レイアウトエンジン104は、オブジェクト114の1つまたはそれ以上のプロパティに基づいて、レイアウトルール106における1つまたはそれ以上のレイアウトルールを選択することができる。いくつかの実施形態において、オブジェクト114のプロパティは、オブジェクト114のタイプ、サイズ、向き、または色を含んでよい。当業者によって理解されるように、オブジェクト114は、様々な他のプロパティを含んでよい。
例えば、レイアウトエンジン104は、写真であるオブジェクト114に基づいて、オブジェクト114に対して適用する第1レイアウトルール、および、ビデオであるオブジェクト114に基づいて、オブジェクト114に対して適用する第2レイアウトルールを選択することができる。当業者によって理解されるように、レイアウトエンジン104は、オブジェクト114の様々な他のタイプのプロパティに基づいて、オブジェクト114に対して1つまたはそれ以上のレイアウトルールを適用することができる。
いくつかの実施形態において、レイアウトエンジン104は、オブジェクトアナライザ108を使用してオブジェクト114の1つまたはそれ以上のプロパティを決定することができる。オブジェクトアナライザ108は、プレゼンテーションスライド112の中へのオブジェクト114の挿入に応じて、オブジェクト114の1つまたはそれ以上のプロパティを決定することができる。例えば、オブジェクトアナライザ108は、オブジェクト114のタイプ、サイズ、及び/又は、向きを決定することができる。当業者によって理解されるように、オブジェクトアナライザ108は、オブジェクト114の他のタイプのプロパティを決定することができる。
いくつかの実施形態において、レイアウトエンジン104は、プレゼンテーションスライド112を表示する電子デバイスの1つまたはそれ以上のデバイス特性に基づいて、オブジェクト114に対して適用する1つまたはそれ以上のレイアウトルールを決定することができる。例えば、レイアウトエンジン104は、デスクトップコンピュータ上にプレゼンテーションスライド112を表示することに基づいて、オブジェクト114に対して適用する第1レイアウトルール、および、スマートフォン上にプレゼンテーションスライド112を表示することに基づいて、オブジェクト114に対して適用する第2レイアウトルールを選択することができる。当業者によって理解されるように、レイアウトエンジン104は、プレゼンテーションスライド112を表示する電子デバイスの様々なタイプのデバイス特性に基づいて、オブジェクト114に対して1つまたはそれ以上のレイアウトルールを適用することができる。例えば、レイアウトエンジン104は、プレゼンテーションスライド112を表示する電子デバイスに係るディスプレイスクリーンのサイズ、ディスプレイスクリーンの向き、グラフィカルレンダリング機能(graphical rendering capabilities)、ディスプレイスクリーン輝度、電力使用、色深度機能(color depth capability)、メモリサイズ、および入力機能に基づいて、1つまたはそれ以上のレイアウトルールを適用することができる。
いくつかの実施形態において、レイアウトエンジン104は、オブジェクト114を含むレイアウトセグメントに従ってプレゼンテーションスライド112を表示する電子デバイスの様々なタイプのデバイス特性に基づいて、オブジェクト114に対して1つまたはそれ以上のレイアウトルールを適用することができる。これにより、レイアウトエンジン104は、オブジェクト114を含むレイアウトセグメントと、プレゼンテーションスライド112を表示する電子デバイスのプロパティとの両方に関して、オブジェクト114を位置決めし、かつ、サイズ合わせすることができる。
いくつかの実施形態において、レイアウトエンジン104は、デバイスアナライザ110を使用してプレゼンテーションスライド112を表示する電子デバイスの1つまたはそれ以上のデバイス特性を決定することができる。デバイスアナライザ110は、電子デバイス上でのプレゼンテーションスライド112の表示の際に、電子デバイスの1つまたはそれ以上のデバイス特性を決定することができる。例えば、デバイスアナライザ110は、電子デバイスに係るディスプレイスクリーンのサイズ、ディスプレイスクリーンの向き、及び/又は、グラフィカルレンダリング機能を決定することができる。当業者によって理解されるように、デバイスアナライザ110は、電子デバイス上でのプレゼンテーションスライド112の表示の際に、電子デバイスの他のデバイス特性を決定することができる。
いくつかの実施形態において、レイアウトエンジン104は、オブジェクト114を含むレイアウトセグメントに基づいて、オブジェクト114に対して適用する1つまたはそれ以上のレイアウトルールを決定することができる。いくつかの実施形態において、レイアウトエンジン104は、プレゼンテーションスライド112を複数のレイアウトセグメントへと分割することができる。例えば、レイアウトエンジンは、プレゼンテーションスライド112の上部にグラフィカルユーザインターフェイスを実装することができる。いくつかの実施形態において、グラフィカルユーザインターフェイスは、プレゼンテーションスライド112を複数のレイアウトセグメントへと分割する一連の垂直グリッド線(vertical gridlines)を含んでよい。いくつかの他の実施形態において、グラフィカルユーザインターフェイスは、プレゼンテーションスライド112を複数のレイアウトセグメントへと分割する一連の水平グリッド線(horizontal gridlines)を含んでよい。当業者によって理解されるように、グラフィカルユーザインターフェイスは、プレゼンテーションスライド112を様々な数、サイズ、および形状のレイアウトセグメントへと分割することができる。
いくつかの実施形態において、レイアウトルール106における1つまたはそれ以上のレイアウトルールが、複数のレイアウトセグメントにおける1つのレイアウトセグメントと関連付けられてよい。例えば、ビジュアルデザイナ(visual designer)は、1つまたはそれ以上のレイアウトルールを、複数のレイアウトセグメントにおけるレイアウトセグメントと関連付けることができる。
図2は、1つの例示的な実施形態に従って、プレゼンテーションスライド112について複数のレイアウトセグメントを定義する、プレゼンテーションスライドの上部にあるグラフィカルユーザインターフェイスを示している。当業者によって理解されるように、グラフィカルユーザインターフェイス202は、これらに限定されるわけではないが、デスクトップパブリッシング文書、フォトモンタージュ、パンフレット、配布資料、またはポスターを含む、様々な他のタイプのコンテンツに対して適用されてよい。図2は、図1及び図3A-3Dに関して説明される。図3A-3Dは、例示的な実施形態に従って、グラフィカルユーザインターフェイス202によって定義された異なるレイアウトセグメントの中へオブジェクト114が挿入されたときに、レイアウトエンジン104によって出力される様々なレイアウト結果を示している。
図2において、レイアウトエンジン104は、プレゼンテーションスライド112のためのグラフィカルユーザインターフェイス202を表示している。レイアウトエンジン104は、プレゼンテーションスライド112の上部にグラフィカルオーバーレイ(graphical overlay)としてグラフィカルユーザインターフェイス202を表示することができる。グラフィカルユーザインターフェイス202は、レイアウトセグメント204、206、208、および210を含んでいる。いくつかの実施例において、レイアウトセグメント204、206、208、および210は、プレゼンテーションスライド112の中で1つまたはそれ以上のオブジェクト114の相対的な位置決めを提供する。レイアウトセグメント204、206、208、および210は、また、レイアウトルール106における1つまたはそれ以上のレイアウトルールと関連付けられてもよい。当業者によって理解されるように、グラフィカルユーザインターフェイス202は、レイアウトセグメントの様々な数、サイズ、および形状を定義することができる。
いくつかの実施形態において、グラフィカルユーザインターフェイス202は、垂直グリッド線を使用して、レイアウトセグメント204、206、208、および210を定義する。当業者によって理解されるように、グラフィカルユーザインターフェイス202は、他の分割メカニズムを使用して、レイアウトセグメントを定義することができる。
いくつかの実施形態において、レイアウトエンジン104は、オブジェクト114がプレゼンテーションスライド112の中へ挿入されているときに、グラフィカルユーザインターフェイス202を表示することができる。
いくつかの実施形態においては、レイアウトセグメント204、206、208、および210のうち所与のレイアウトセグメントの中へユーザがオブジェクト114を挿入することに応じて、レイアウトエンジン104は、オブジェクト114に対してレイアウトルール106から1つまたはそれ以上のレイアウトルールを適用する。これにより、レイアウトエンジン104は、レイアウト結果116を生成する。レイアウト結果116は、プレゼンテーションスライド112の中の1つまたはそれ以上のオブジェクト114に係るレイアウトの修正および変更を表している。レイアウトエンジン104は、レイアウトルール106における1つまたはそれ以上のレイアウトルールによって定義された1つまたはそれ以上のオペレーションをオブジェクト114に対して適用することによって、レイアウト結果116を出力することができる。レイアウトエンジン104は、また、レイアウトルール106における1つまたはそれ以上のレイアウトルールによって定義された1つまたはそれ以上のオペレーションをプレゼンテーションスライド112の中の他のオブジェクトに対して適用することもできる。
例えば、図3Aにおいて、レイアウトエンジン104は、ユーザがレイアウトセグメント204の中へオブジェクト114を挿入することに応じて、レイアウト結果306を出力する。レイアウトエンジン104は、レイアウト結果306に示されるように、オブジェクト114を再サイズ合わせし(resize)、かつ、再位置決めする(reposition)。レイアウトエンジン104は、また、レイアウトセグメント204の中へのオブジェクト114の挿入に応じて、プレゼンテーションスライド112の中の別のオブジェクト(例えば、オブジェクト302)も再サイズ合わせし、かつ、中心に置く(center)。
図3Bにおいて、レイアウトエンジン104は、ユーザがレイアウトセグメント206の中へオブジェクト114を挿入することに応じて、レイアウト結果307を出力する。レイアウトエンジン104は、レイアウト結果307に示されるように、オブジェクト114を再サイズ合わせし、かつ、再位置決めする。レイアウトエンジン104は、また、レイアウトセグメント206の中へのオブジェクト114の挿入に応じて、プレゼンテーションスライド112の中の別のオブジェクト(例えば、オブジェクト302)も再サイズ合わせし、かつ、中心に置く。
図3Cにおいて、レイアウトエンジン104は、ユーザがレイアウトセグメント208の中へオブジェクト114を挿入することに応じて、レイアウト結果308を出力する。レイアウトエンジン104は、レイアウト結果308に示されるように、オブジェクト114を再サイズ合わせし、かつ、再位置決めする。レイアウトエンジン104は、オブジェクト114を背景に置く。レイアウトエンジン104は、また、レイアウトセグメント208の中へのオブジェクト114の挿入に応じて、プレゼンテーションスライド112の中の別のオブジェクト(例えば、オブジェクト302)も再サイズ合わせし、かつ、中心に置く。
図3Dにおいて、レイアウトエンジン104は、ユーザがレイアウトセグメント210の中へオブジェクト114を挿入することに応じて、レイアウト結果309を出力する。レイアウトエンジン104は、レイアウト結果309に示されるように、オブジェクト114を再サイズ合わせし、かつ、再位置決めする。レイアウトエンジン104は、また、レイアウトセグメント210の中へのオブジェクト114の挿入に応じて、プレゼンテーションスライド112の中の別のオブジェクト(例えば、オブジェクト302)も再サイズ合わせし、かつ、再位置決めする。
図4は、例示的な実施形態に従って、異なる電子デバイスにおけるディスプレイのために図3Aにおけるレイアウト結果306がどのようにアップデートされるかを示している。図4は、図1、2、および3Aに関して説明される。
図4において、レイアウト結果306は、レイアウトセグメント204の中へのオブジェクト114の挿入に基づいて、オブジェクト114および302のサイズと位置を示している。レイアウト結果306は、プレゼンテーションスライド112が大きなディスプレイスクリーン上に投影されるときの、プレゼンテーションスライド112におけるオブジェクト114および302のレイアウトを表し得る。
図4において、レイアウトエンジン104は、スマートフォンといった小さなディスプレイスクリーンの電子デバイスにおいてプレゼンテーションスライド112が表示されていることに応じて、レイアウト結果402を出力する。例えば、デバイスアナライザ110は、プレゼンテーションスライド112を表示している電子デバイスが、小さいディスプレイスクリーンのサイズとポートレート指向のディスプレイスクリーンを有するものと判断する。レイアウトエンジン104は、プレゼンテーションスライド112を表示している電子デバイスが、小さいディスプレイスクリーンのサイズとポートレート指向のディスプレイスクリーンを有するものとの判断に応じて、レイアウトルール106から1つまたはそれ以上のレイアウトルールの異なるセットを適用する。別の言葉で言えば、レイアウトエンジン104は、レイアウトセグメント204の中に有るオブジェクト114に応じて、レイアウトルールの2つのセットを適用する。大きなスクリーンの電子デバイスのためのレイアウトルールの第1セット、および、小さなスクリーン(例えば、スマートフォン)電子デバイスのためのレイアウトルールの第2セットである。結果として、レイアウトエンジン402は、スマートフォンのディスプレイスクリーンがポートレート指向であるため、オブジェクト302の上部にオブジェクト114を表示する。
図5は、1つの実施形態に従って、オブジェクトの自動レイアウトを実行するための方法500に対するフローチャートである。方法500は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコード、等)、ソフトウェア(例えば、処理デバイス上で実行するインストラクション)、又はそれらの組合せを含み得る、処理ロジック(processing logic)によって実行することができる。ここにおいて提供される開示を実行するために必ずしも全てのステップを要しなくてよいことが正しく理解されよう。さらに、ステップのうちいくつかは、同時に実行されてよく、または、当業者によって理解されるように、図5に示されるのとは異なる順序で実行されてよい。
方法500は、図1を参照して説明される。しかしながら、方法500は、その例示的な実施形態に限定されるものではない。
502において、レイアウトプラットフォーム102は、入力ジェスチャを介して、ユーザからプレゼンテーションスライド112の中へ挿入されるオブジェクト114を受け取る。いくつかの実施形態において、レイアウトプラットフォーム102は、コンピュータマウス、タッチパッド、またはタッチジェスチャを使用して、プレゼンテーションスライド112の中へオブジェクト114をドラッグアンドドロップするユーザからオブジェクト114を受け取る。
504において、レイアウトエンジン104は、オブジェクト114が、プレゼンテーションスライド112における複数のレイアウトセグメントのうち1つのレイアウトセグメントの中に有るものと判断する。
506において、レイアウトエンジン104は、判断されたレイアウトセグメントと関連するレイアウトルール106におけるレイアウトルールを決定する。いくつかの実施形態において、レイアウトエンジン104は、オブジェクトアナライザ108を使用して、オブジェクト114の1つまたはそれ以上のプロパティを決定することができる。レイアウトエンジン104は、次いで、決定されたレイアウトセグメントおよびオブジェクト114の決定された1つまたはそれ以上のプロパティについて適用する、レイアウトルール106におけるレイアウトルールを決定する。
508において、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、オブジェクト114の1つまたはそれ以上のプロパティを変更する。いくつかの実施形態において、レイアウトエンジン104は、決定されたレイアウトルールの1つまたはそれ以上のオペレーションをオブジェクト114に対して適用する。例えば、レイアウトエンジン104は、オブジェクト114のサイズ、位置、及び/又は、向きを変更することができる。
いくつかの実施形態において、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、プレゼンテーションスライド112の中の他のオブジェクトの1つまたはそれ以上のプロパティを変更することができる。例えば、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、プレゼンテーションスライド112の中の他のオブジェクトのサイズ、位置、及び/又は、向きを変更することができる。
510において、レイアウトエンジン104は、オブジェクト114に対する1つまたはそれ以上の変更と共に、プレゼンテーションスライド112を表すレイアウト結果116を出力する。いくつかの実施形態において、レイアウト結果116は、オブジェクト114およびプレゼンテーションスライド112の中の1つまたはそれ以上の他のオブジェクトに対する1つまたはそれ以上の変更と共に、プレゼンテーションスライド112を表している。
図6は、1つの実施形態に従って、異なる電子デバイスにわたりプレゼンテーションを表示するための方法600を説明するフローチャートである。方法600は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコード、等)、ソフトウェア(例えば、処理デバイス上で実行するインストラクション)、又はそれらの組合せを含み得る、処理ロジックによって実行することができる。ここにおいて提供される開示を実行するために必ずしも全てのステップを要しなくてよいことが正しく理解されよう。さらに、ステップのうちいくつかは、同時に実行されてよく、または、当業者によって理解されるように、図6に示されるのとは異なる順序で実行されてよい。
方法600は、図1を参照して説明される。しかしながら、方法600は、その例示的な実施形態に限定されるものではない。
602において、レイアウトプラットフォーム102は、プレゼンテーションスライド112を受け取る。いくつかの実施形態において、プレゼンテーションスライド112は、オブジェクト114を含んでよい。いくつかの実施形態において、レイアウトプラットフォーム102は、インターネットといったネットワークによってプレゼンテーションスライド112を受け取ることができる。例えば、レイアウトプラットフォーム102は、インターネットによってプレゼンテーションスライド112を受け取り、そして、プレゼンテーションスライド112をクラウドコンピューティングプラットフォームにおいて保管することができる。
604において、デバイスアナライザ110は、プレゼンテーションスライド112を表示する電子デバイスについて1つまたはそれ以上のデバイス特性を決定する。いくつかの実施形態において、デバイスアナライザ110は、ディスプレイのサイズ、ディスプレイの向き、およびグラフィカルレンダリング機能、電力使用特性、及び/又は、電子デバイスの他のデバイス特性を決定する。
606において、レイアウトエンジン104は、オブジェクト114がプレゼンテーションスライド112における複数のレイアウトセグメントのうち1つのレイアウトセグメントの中に有ると判断する。
606において、レイアウトエンジン104は、電子デバイスの決定された1つまたはそれ以上のデバイス特性、決定されたレイアウトセグメント、および、オブジェクト114の1つまたはそれ以上の特性について適用するレイアウトルール106におけるレイアウトルールを決定する。いくつかの実施形態において、レイアウトエンジン104は、オブジェクトアナライザ108を使用して、オブジェクト114の1つまたはそれ以上のプロパティを決定することができる。例えば、オブジェクトアナライザ108は、オブジェクト114のサイズ、位置、及び/又は、大きさを決定することができる。
608において、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、オブジェクト114の1つまたはそれ以上のプロパティを変更する。いくつかの実施形態において、レイアウトエンジン104は、決定されたレイアウトルールの1つまたはそれ以上のオペレーションをオブジェクト114に対して適用する。例えば、レイアウトエンジン104は、オブジェクト114のサイズ、位置、及び/又は、向きを変更することができる。当業者によって理解されるように、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、オブジェクト114の他のプロパティを変更することができる。
いくつかの実施形態において、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、プレゼンテーションスライド112の中の他のオブジェクトの1つまたはそれ以上のプロパティを変更することができる。例えば、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、プレゼンテーションスライド112の中の他のオブジェクトのサイズ、位置、及び/又は、向きを変更することができる。
いくつかの他の実施形態において、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、1つまたはそれ以上のアクションをオブジェクト114と関連付けることができる。例えば、レイアウトエンジン104は、決定されたレイアウトルールに基づいて、オブジェクト114に対してフルスクリーンアクション(full screen action)を適用することができる。当業者によって理解されるように、決定されたレイアウトルールに基づいて、様々な他のタイプのアクションがオブジェクト114と関連付けられてよい。
610において、レイアウトエンジン104は、オブジェクト114に対する1つまたはそれ以上の変更と共に、プレゼンテーションスライド112を表すレイアウト結果116を出力する。いくつかの実施形態において、レイアウト結果116は、オブジェクト114およびプレゼンテーションスライド112の中の1つまたはそれ以上の他のオブジェクトに対する1つまたはそれ以上の変更と共に、プレゼンテーションスライド112を表している。
様々な実施形態は、例えば、図7に示されるコンピュータシステム700といった、1つまたはそれ以上のコンピュータシステムを使用して実施することができる。コンピュータシステム700は、例えば、図5の方法500を実施するために使用することができる。例えば、コンピュータシステム700は、オブジェクトの自動レイアウトを実行することができる。コンピュータシステム700は、さらに、いくつかの実施形態に従って、複数の電子デバイスにわたるプレゼンテーションを表示することができる。コンピュータシステム700は、ここにおいて説明される機能を実行することができる任意のコンピュータであってよい。
コンピュータシステム700は、ここにおいて説明される機能を実行することができる任意の周知のコンピュータであってよい。
コンピュータシステム700は、プロセッサ704といった、1つまたはそれ以上のプロセッサ(中央処理装置、またはCPUとも呼ばれるもの)を含む。プロセッサ704は、通信インフラストラクチャまたはバス706に対して接続されている。
1つまたはそれ以上のプロセッサ704は、それぞれグラフィックス処理ユニット(graphics processing unit、GPU)であってよい。1つの実施形態において、GPUは、数学的に集約的なアプリケーションを処理するようにデザインされた特殊用途の電子回路であるプロセッサである。GPUは、コンピュータグラフィックスアプリケーション、画像、ビデオ、等に共通する数学的に集約的なデータといった、データの大きなブロックの並列処理について効率的である並列構造を有してよい。
コンピュータシステム700は、また、ユーザ入力/出力インターフェイス702を通じて通信インフラストラクチャ706と通信する、モニタ、キーボード、ポインティングデバイス、等といった、ユーザ入力/出力デバイス703も含んでいる。
コンピュータシステム700は、また、ランダムアクセスメモリ(RAM)といった、メインまたは主メモリ708も含んでいる。主メモリ708は、キャッシュの1つまたはそれ以上のレベルを含んでよい。主メモリ708は、コントロールロジック(すなわち、コンピュータソフトウェア)、及び/又は、データをその中に保管している。
コンピュータシステム700は、また、1つまたはそれ以上の二次(secondary)ストレージデバイスまたはメモリ710も含んでよい。二次ストレージデバイス710は、例えば、ハードディスクドライブ712、及び/又は、リムーバブルストレージデバイスまたはドライブ714を含んでよい。リムーバブルストレージドライブ714は、フロッピー(登録商標)ディスクドライブ、磁気テープドライブ、コンパクトディスクドライブ、光ストレージデバイス、テープバックアップ装置、及び/又は、あらゆる他のストレージデバイス/ドライブであってよい。
リムーバブルストレージドライブ714は、リムーバブルストレージユニット718とインタラクションすることができる。リムーバブルストレージユニット718は、コンピュータソフトウェア(コントロール)及び/又はデータをその上に保管しているコンピュータで使用可能または読取り可能なストレージデバイスを含んでいる。リムーバブルストレージユニット718は、フロッピー(登録商標)ディスク、磁気テープ、コンパクトディスク、DVD、光ストレージディスク、及び/又は、あらゆる他のコンピュータデータストレージデバイスであってよい。リムーバブルストレージドライブ714は、周知の方法で、リムーバブルストレージユニット718から読出し、かつ/あるいは、リムーバブルストレージユニット718へ書込む。
1つの例示的な実施形態に従って、二次メモリ710は、コンピュータプログラム、及び/又は、他のインストラクション及び/又はデータがコンピュータシステム700によってアクセスされることを可能にするための他の手段、媒介(instrumentalities)、または他のアプローチを含むことができる。そうした手段、媒介、または他のアプローチは、例えば、リムーバブルストレージユニット722とインターフェイス720を含んでよい。リムーバブルストレージユニット722とインターフェイス720の例は、プログラムカートリッジとカートリッジインターフェイス(ビデオゲーム装置において見られるものなど)、リムーバブルメモリチップ(EPROMまたはPROMといったもの)とUSBポート、メモリカードと関連のメモリカードスロット、及び/又は、あらゆる他のリムーバブルストレージユニットと関連のインターフェイス、を含んでよい。
コンピュータシステム700は、さらに、通信またはネットワークインターフェイス724を含んでよい。通信インターフェイス724により、コンピュータシステム700は、リモートデバイス、リモートネットワーク、リモートエンティティ、等の任意の組合せ(個別的および集合的に参照番号728によって参照されるもの)と通信し、かつ、インタラクションすることができる。例えば、通信インターフェイス724により、コンピュータシステム700は、通信パス726を介してリモートデバイス728と通信することができる。通信パスは、有線及び/又は無線であってよく、かつ、LAN、WAN、インターネット等の任意の組合せを含んでよい。コントロールロジック及び/又はデータは、通信パス726を介してコンピュータシステム700に対して、および、コンピュータシステムから伝送され得る。
1つの実施形態において、コントロールロジック(ソフトウェア)が保管されている有形の、非一時的なコンピュータで使用可能または読取り可能な媒体を含む、有形の非一時的な装置または製品は、また、ここにおいてはコンピュータプログラム製品またはプログラムストレージデバイスとしても参照される。これは、これらに限定されるわけではないが、コンピュータシステム700、主メモリ708、二次メモリ710、および、リムーバブルストレージユニット718と722、並びに、前記のものの任意の組合せを具現化している有形の製品、を含んでいる。そうしたコントロールロジックは、(コンピュータシステム700といった)1つまたはそれ以上のデータ処理装置によって実行されるとき、そうしたデータ処理装置をここにおいて説明するように動作させる。
この開示に含まれる教示に基づいて、当業者にとっては、データ処理装置、コンピュータシステム、及び/又は、図7に示される以外のコンピュータアーキテクチャを使用して、この開示の実施形態をどのように作成および使用するのか明らかであろう。特に、実施形態は、ここにおいて記載されているもの以外のソフトウェア、ハードウェア、及び/又は、オペレーティングシステム実装を用いて動作することができる。
詳細な説明のセクションは、あらゆる他のセクションではなく、特許請求の範囲を解釈するために使用されるように意図されていることが正しく理解されるべきである。他のセクションは、発明者によって考えられたものとして1つまたはそれ以上であるが全てではない例示的な実施形態を明らかにすることができる。そして、従って、どのようにしても本開示または添付の特許請求の範囲を限定するように意図されたものではない。
この開示は、例示的な分野およびアプリケーションについて例示的な実施形態を説明しているが、本開示はそれに限定されないことが理解されるべきである。他の実施形態および変更が、可能であり、そして、それらは、この開示の範囲および精神の中に有る。例えば、そして、このパラグラフの一般性を制限することなく、実施形態は、図に示され、かつ/あるいは、ここにおいて説明されるソフトウェア、ハードウェア、ファームウェア、及び/又は、エンティティに限定されるものではない。さらに、実施形態(ここにおいて明示的に記載されているか否かにかかわらず)は、ここにおいて説明される実施例を超えた分野およびアプリケーションに対して顕著な功利性を有している。
特定の機能の実装およびその関係性を図示している機能的ビルディングブロックを用いて、実施形態がここにおいて説明されてきた。これらの機能的ビルディングブロックの境界は、説明の便宜のために、ここにおいて任意に定義されたものである。特定される機能および関係(または、それらの等価物)が適切に実行される限り、代替的な境界を定義することができる。また、代替的な実施形態は、ここにおいて説明されたものとは異なる順序を使用して、機能ブロック、ステップ、オペレーション、方法、等を実行することができる。
ここにおける「1つの実施形態(”one embodiment”)」、「実施形態(”an embodiment”)」、「例示的な実施形態(”an example embodiment”)」、または、類似のフレーズは、説明された実施形態が特定の特徴、構造、または、特性を含むことができるが、全ての実施形態が必ずしも特定の特徴、構造、または特性を含むこと要しないことを示している。その上、そうしたフレーズは、必ずしも同じ実施形態を参照することを要しない。さらに、特定の特徴、構造、または特性が1つの実施形態に関連して説明されている場合には、ここにおいて明示的に言及または説明されているか否かにかかわらず、そうした特徴、構造、または特性を他の実施形態の中へ組み込むことは、当業者の知識の範囲内であろう。加えて、いくつかの実施形態は、その派生語と併せて「結合された(”coupled”)」および「接続された(”connected”)」という表現を使用して説明することができる。これらの用語は、必ずしも相互に同義語として意図されているわけではない。例えば、いくつかの実施形態は、2つまたはそれ以上のエレメントが相互に直接的に物理的または電気的に接触していることを示すために、用語「接続された」及び/又は「結合された」を使用して説明することができる。しかしながら、用語「結合された」は、また、2つまたはそれ以上のエレメントが相互に直接的に接触していないが、依然として互いに協働またはインタラクションすることを意味することもできる。
この開示の幅および範囲は、上記の例示的な実施形態のいずれかによって限定されるべきではなく、以降の請求項およびそれらの等価物に従ってのみ規定されるべきものである。

Claims (15)

  1. コンピュータで実施される方法であって、
    少なくとも1つのプロセッサによって、プレゼンテーションスライドにおいて複数のレイアウトセグメントを有するグラフィカルユーザインターフェイスを実施するステップであり、
    前記複数のレイアウトセグメントのうち第1レイアウトセグメントは、前記第1レイアウトセグメントの中へ第1オブジェクトをインタラクティブに挿入することに応答して、第1レイアウト結果を自動的に生成するように構成された、第1レイアウトルールに関連付けられており、かつ、
    前記複数のレイアウトセグメントのうち第2レイアウトセグメントは、前記第2レイアウトセグメントの中へ前記第1オブジェクトをインタラクティブに挿入することに応答して、第2レイアウト結果を自動的に生成するように構成された、第2レイアウトルールに関連付けられている、
    ステップと、
    前記グラフィカルユーザインターフェイスの前記プレゼンテーションスライド上に第2オブジェクトを表示しながら、前記少なくとも1つのプロセッサによって、入力ジェスチャを介して前記グラフィカルユーザインターフェイスにおいて第1オブジェクトを挿入する要求を受信するステップと、
    前記少なくとも1つのプロセッサによって、前記挿入された第1オブジェクトが、前記複数のレイアウトセグメントのうち第1レイアウトセグメントに対応するか、または、前記複数のレイアウトセグメントのうち第2レイアウトセグメントに対応するか否か、を判断するステップと、
    前記挿入された第1オブジェクトが、前記複数のレイアウトセグメントのうち前記第1レイアウトセグメントに対応するか、または、前記複数のレイアウトセグメントのうち前記第2レイアウトセグメントに対応するかの判断に応答して、
    前記少なくとも1つのプロセッサによって、前記挿入された第1オブジェクトが前記第1レイアウトセグメントに対応するという判断に基づいて、前記第1レイアウトルールに従って、前記第2オブジェクトのサイズおよび位置のうち少なくとも1つを変更するステップと、
    前記少なくとも1つのプロセッサによって、前記挿入された第1オブジェクトが前記第2レイアウトセグメントに対応するという判断に基づいて、前記第2レイアウトルールに従って、前記第2オブジェクトのサイズおよび位置のうちの少なくとも1つを変更するステップと、
    前記少なくとも1つのプロセッサによって、前記プレゼンテーションスライドが表示される電子デバイスについて、デバイス特性を決定するステップであり、
    前記デバイス特性は、ディスプレイのサイズ、ディスプレイの向き、グラフィカルレンダリング機能のうち少なくとも1つを含むステップと、
    前記電子デバイスの前記デバイス特性の決定に応じて、前記少なくとも1つのプロセッサによって、前記第2オブジェクトのサイズ、位置、及び/又は、向きを変更するステップと、
    前記少なくとも1つのプロセッサによって、前記グラフィカルユーザインターフェイスの前記プレゼンテーションスライド上に、レイアウト結果として、前記挿入された第1オブジェクトおよび前記変更された第2オブジェクトを、同時に表示するステップと、
    を含み、
    追加的な電子デバイスの前記デバイス特性の決定に応じて、前記レイアウト結果とは異なる追加的なレイアウト結果を出力する、
    方法。
  2. 前記第2オブジェクトを変更するステップは、さらに、
    前記挿入された第1オブジェクトが第1レイアウトセグメントに対応するという判断に基づいて、前記第2オブジェクトの方向および前記第2オブジェクトの色のうち少なくとも1つを修正するステップ、
    を含む、請求項1に記載の方法。
  3. 前記第1オブジェクトは、写真、形状、ビデオ、アニメーション、または、テキストブロックである、
    請求項1に記載の方法。
  4. 前記グラフィカルユーザインターフェイスを実施するステップは、さらに、
    複数のグリッド線に基づいて、前記複数のレイアウトセグメントを定めるステップ、
    を含む、請求項1に記載の方法。
  5. 前記方法は、さらに、
    一式のスタイルプリファレンスに基づいて、コンフィグレーションファイルにおける前記第1レイアウトルールを定めるステップ、
    を含む、請求項1に記載の方法。
  6. メモリと、
    前記メモリに対して接続された少なくとも1つのプロセッサと、
    を含む、システムであって、
    前記少なくとも1つのプロセッサは、
    プレゼンテーションスライドにおいて複数のレイアウトセグメントを有するグラフィカルユーザインターフェイスを実施し、
    前記複数のレイアウトセグメントのうち第1レイアウトセグメントは、前記第1レイアウトセグメントの中へ第1オブジェクトをインタラクティブに挿入することに応答して、第1レイアウト結果を自動的に生成するように構成された、第1レイアウトルールに関連付けられており、かつ、
    前記複数のレイアウトセグメントのうち第2レイアウトセグメントは、前記第2レイアウトセグメントの中へ前記第1オブジェクトをインタラクティブに挿入することに応答して、第2レイアウト結果を自動的に生成するように構成された、第2レイアウトルールに関連付けられており、
    前記グラフィカルユーザインターフェイスの前記プレゼンテーションスライド上に第2オブジェクトを表示しながら、入力ジェスチャを介して前記グラフィカルユーザインターフェイスにおいて第1オブジェクトを挿入する要求を受信し、
    前記挿入された第1オブジェクトが、前記複数のレイアウトセグメントのうち第1レイアウトセグメントに対応するか、または、前記複数のレイアウトセグメントのうち第2レイアウトセグメントに対応するか否か、を判断し、
    前記挿入された第1オブジェクトが、前記複数のレイアウトセグメントのうち前記第1レイアウトセグメントに対応するか、または、前記複数のレイアウトセグメントのうち前記第2レイアウトセグメントに対応するかの判断に応答して、
    前記挿入された第1オブジェクトが前記第1レイアウトセグメントに対応するという判断に基づいて、前記第1レイアウトルールに従って、前記第2オブジェクトのサイズおよび位置のうち少なくとも1つを変更し、
    前記挿入された第1オブジェクトが前記第2レイアウトセグメントに対応するという判断に基づいて、前記第2レイアウトルールに従って、前記第2オブジェクトのサイズおよび位置のうちの少なくとも1つを変更し、
    前記プレゼンテーションスライドが表示される電子デバイスについて、デバイス特性を決定し、
    前記デバイス特性は、ディスプレイのサイズ、ディスプレイの向き、グラフィカルレンダリング機能のうち少なくとも1つを含み、
    前記電子デバイスの前記デバイス特性の決定に応じて、前記第2オブジェクトのサイズ、位置、及び/又は、向きを変更し、かつ、
    前記グラフィカルユーザインターフェイスの前記プレゼンテーションスライド上に、レイアウト結果として、前記挿入された第1オブジェクトおよび前記変更された第2オブジェクトを、同時に表示する、
    ように構成されており、さらに、
    追加的な電子デバイスの前記デバイス特性の決定に応じて、前記レイアウト結果とは異なる追加的なレイアウト結果を出力する、
    システム。
  7. 前記第2オブジェクトを変更するために、前記少なくとも1つのプロセッサは、さらに、
    前記挿入された第1オブジェクトが第1レイアウトセグメントに対応するという判断に基づいて、前記第2オブジェクトの方向および前記第2オブジェクトの色のうち少なくとも1つを修正する、
    ように構成されている、請求項6に記載のシステム。
  8. 前記第1オブジェクトは、写真、形状、ビデオ、アニメーション、または、テキストブロックである、
    請求項6に記載のシステム。
  9. 記グラフィカルユーザインターフェイスを実施するために、前記少なくとも1つのプロセッサは、さらに、
    複数のグリッド線に基づいて、前記複数のレイアウトセグメントを定める、
    ように構成されている、請求項6に記載のシステム。
  10. 前記少なくとも1つのプロセッサは、さらに、
    一式のスタイルプリファレンスに基づいて、コンフィグレーションファイルにおける前記第1レイアウトルールを定める、
    ように構成されている、請求項6に記載のシステム。
  11. コンピュータで読取り可能な非一時的なデバイスであって、少なくとも1つのコンピューティングデバイスによって実行されると、前記少なくとも1つのコンピューティングデバイスにオペレーションを実行させるインストラクションが保管されており、
    前記オペレーションは、
    プレゼンテーションスライドにおいて複数のレイアウトセグメントを有するグラフィカルユーザインターフェイスを実施するステップであり、
    前記複数のレイアウトセグメントのうち第1レイアウトセグメントは、前記第1レイアウトセグメントの中へ第1オブジェクトをインタラクティブに挿入することに応答して、第1レイアウト結果を自動的に生成するように構成された、第1レイアウトルールに関連付けられており、かつ、
    前記複数のレイアウトセグメントのうち第2レイアウトセグメントは、前記第2レイアウトセグメントの中へ前記第1オブジェクトをインタラクティブに挿入することに応答して、第2レイアウト結果を自動的に生成するように構成された、第2レイアウトルールに関連付けられている、
    ステップと、
    前記グラフィカルユーザインターフェイスの前記プレゼンテーションスライド上に第2オブジェクトを表示しながら、入力ジェスチャを介して前記グラフィカルユーザインターフェイスにおいて第1オブジェクトを挿入する要求を受信するステップと、
    前記挿入された第1オブジェクトが、前記複数のレイアウトセグメントのうち第1レイアウトセグメントに対応するか、または、前記複数のレイアウトセグメントのうち第2レイアウトセグメントに対応するか否か、を判断するステップと、
    前記挿入された第1オブジェクトが、前記複数のレイアウトセグメントのうち前記第1レイアウトセグメントに対応するか、または、前記複数のレイアウトセグメントのうち前記第2レイアウトセグメントに対応するかの判断に応答して、
    前記挿入された第1オブジェクトが前記第1レイアウトセグメントに対応するという判断に基づいて、前記第1レイアウトルールに従って、前記第2オブジェクトのサイズおよび位置のうち少なくとも1つを変更するステップと、
    前記挿入された第1オブジェクトが前記第2レイアウトセグメントに対応するという判断に基づいて、前記第2レイアウトルールに従って、前記第2オブジェクトのサイズおよび位置のうちの少なくとも1つを変更するステップと、
    前記プレゼンテーションスライドが表示される電子デバイスについて、デバイス特性を決定するステップであり、
    前記デバイス特性は、ディスプレイのサイズ、ディスプレイの向き、グラフィカルレンダリング機能のうち少なくとも1つを含むステップと、
    前記電子デバイスの前記デバイス特性の決定に応じて、前記第2オブジェクトのサイズ、位置、及び/又は、向きを変更するステップと、
    前記グラフィカルユーザインターフェイスの前記プレゼンテーションスライド上に、レイアウト結果として、前記挿入された第1オブジェクトおよび前記変更された第2オブジェクトを、同時に表示するステップと、
    を含み、
    追加的な電子デバイスの前記デバイス特性の決定に応じて、前記レイアウト結果とは異なる追加的なレイアウト結果を出力する、
    コンピュータで読取り可能な非一時的なデバイス。
  12. 前記第2オブジェクトを変更するステップは、さらに、
    前記挿入された第1オブジェクトが第1レイアウトセグメントに対応するという判断に基づいて、前記第2オブジェクトの方向および前記第2オブジェクトの色のうち少なくとも1つを修正するステップ、
    を含む、請求項11に記載のコンピュータで読取り可能な非一時的なデバイス。
  13. 前記第1オブジェクトは、写真、形状、ビデオ、アニメーション、または、テキストブロックである、
    請求項11に記載のコンピュータで読取り可能な非一時的なデバイス。
  14. 記オペレーションは、さらに、
    一式のスタイルプリファレンスに基づいて、コンフィグレーションファイルにおける前記第1レイアウトルールを定めるステップ、
    を含む、請求項11に記載のコンピュータで読取り可能な非一時的なデバイス。
  15. 前記複数のレイアウトセグメントは、前記プレゼンテーションスライドの視覚的分割に対応する、
    請求項1に記載の方法。
JP2018122782A 2017-06-29 2018-06-28 自動レイアウトエンジン Active JP7344632B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/637,717 2017-06-29
US15/637,717 US11036914B2 (en) 2017-06-29 2017-06-29 Automatic layout engine

Publications (3)

Publication Number Publication Date
JP2019016353A JP2019016353A (ja) 2019-01-31
JP2019016353A5 JP2019016353A5 (ja) 2021-08-05
JP7344632B2 true JP7344632B2 (ja) 2023-09-14

Family

ID=64738712

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018122782A Active JP7344632B2 (ja) 2017-06-29 2018-06-28 自動レイアウトエンジン

Country Status (4)

Country Link
US (1) US11036914B2 (ja)
JP (1) JP7344632B2 (ja)
CN (1) CN109213316B (ja)
CA (1) CA3009881A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019092506A1 (en) * 2017-11-13 2019-05-16 Wetransfer B.V. Semantic slide autolayouts
JP7247615B2 (ja) 2019-01-31 2023-03-29 株式会社リコー 面発光レーザモジュール、光学装置及び面発光レーザ基板
US20220374190A1 (en) * 2021-05-24 2022-11-24 Google Llc Overlaying an image of a conference call participant with a shared document
US11922156B2 (en) 2021-05-27 2024-03-05 Salesforce, Inc. Systems, methods, and devices for synchronization of content associated with computing platforms
WO2023004509A1 (en) * 2021-07-28 2023-02-02 11089161 Canada Inc. (Dba: Looksgoodai) Method and system for automatic formatting of presentation slides

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176520A (ja) 2009-01-30 2010-08-12 Canon Inc 文書編集装置、文書編集方法、および文書編集プログラム
WO2011122402A1 (ja) 2010-03-31 2011-10-06 株式会社 日立メディコ 検査情報表示装置及び方法
JP2013120414A (ja) 2011-12-06 2013-06-17 Canon Inc 情報処理装置、情報処理装置の制御方法、プログラム

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5860073A (en) * 1995-07-17 1999-01-12 Microsoft Corporation Style sheets for publishing system
US5956737A (en) * 1996-09-09 1999-09-21 Design Intelligence, Inc. Design engine for fitting content to a medium
US7188309B2 (en) * 2002-06-28 2007-03-06 Microsoft Corporation Resolving document object collisions
US8091036B1 (en) * 2006-04-27 2012-01-03 Oracle America, Inc. GUI builder tool for designing cross platform layout
US8812969B2 (en) * 2007-03-21 2014-08-19 Ricoh Co., Ltd. Methods for authoring and interacting with multimedia representations of documents
US8516365B2 (en) * 2007-06-15 2013-08-20 Microsoft Corporation Dynamically laying out images and associated text using pre-defined layouts
US8775918B2 (en) * 2008-10-07 2014-07-08 Visual Software Systems Ltd. System and method for automatic improvement of electronic presentations
US20100185949A1 (en) * 2008-12-09 2010-07-22 Denny Jaeger Method for using gesture objects for computer control
US8799775B2 (en) * 2009-09-25 2014-08-05 Apple Inc. Device, method, and graphical user interface for displaying emphasis animations for an electronic document in a presentation mode
US9069772B2 (en) * 2010-06-04 2015-06-30 International Business Machines Corporation Smart slide creation and presentation
US9679404B2 (en) * 2010-12-23 2017-06-13 Microsoft Technology Licensing, Llc Techniques for dynamic layout of presentation tiles on a grid
US8751924B2 (en) * 2011-04-27 2014-06-10 Microsoft Corporation Rule-based grid independent of content
US9304662B2 (en) * 2011-08-25 2016-04-05 Vmware, Inc. User interface virtualization techniques
US8434002B1 (en) * 2011-10-17 2013-04-30 Google Inc. Systems and methods for collaborative editing of elements in a presentation document
EP2584445A1 (en) * 2011-10-18 2013-04-24 Research In Motion Limited Method of animating a rearrangement of ui elements on a display screen of an eletronic device
JP2013120505A (ja) * 2011-12-08 2013-06-17 Sharp Corp 情報処理装置
JP5911168B2 (ja) * 2012-01-16 2016-04-27 シャープ株式会社 表示装置、表示方法及び表示プログラム
US9996566B2 (en) * 2012-02-20 2018-06-12 Wix.Com Ltd. Visual design system for generating a visual data structure associated with a semantic composition based on a hierarchy of components
US20130239030A1 (en) * 2012-03-06 2013-09-12 Apple Inc. Application for publishing journals
WO2013169843A1 (en) * 2012-05-09 2013-11-14 Yknots Industries Llc Device, method, and graphical user interface for manipulating framed graphical objects
US9009092B2 (en) * 2012-07-19 2015-04-14 Microsoft Technology Licensing, Llc Creating variations when transforming data into consumable content
US9460416B2 (en) * 2012-08-16 2016-10-04 Microsoft Technology Licensing, Llc Reading mode for interactive slide presentations with accompanying notes
US9239822B1 (en) * 2013-03-14 2016-01-19 TreeRing Corporation Incorporating media objects in yearbooks
US9772984B2 (en) * 2013-03-15 2017-09-26 Systemic Management Science Corporation Visualization interface for information object system
US9477380B2 (en) * 2013-03-15 2016-10-25 Afzal Amijee Systems and methods for creating and sharing nonlinear slide-based mutlimedia presentations and visual discussions comprising complex story paths and dynamic slide objects
US9251124B2 (en) * 2013-09-09 2016-02-02 Andrea STEINFL Modular responsive screen grid, authoring and displaying system
US9513763B1 (en) * 2014-03-20 2016-12-06 Amazon Technologies, Inc. Adaptive user interfaces
US9836203B2 (en) * 2014-07-25 2017-12-05 Axiom One Ltd. Grid-based visual design environment
US20160188125A1 (en) * 2014-08-24 2016-06-30 Lintelus, Inc. Method to include interactive objects in presentation
EP3213225A4 (en) * 2014-10-30 2017-10-25 Microsoft Technology Licensing, LLC Authoring tools for synthesizing hybrid slide-canvas presentations
US10877714B2 (en) 2015-03-10 2020-12-29 Zoho Corporation Private Limited Methods and apparatus for enhancing electronic presentations
US11481550B2 (en) * 2016-11-10 2022-10-25 Google Llc Generating presentation slides with distilled content
US10802664B2 (en) * 2017-03-01 2020-10-13 Adobe Inc. Dynamic layout design
US10444976B2 (en) * 2017-05-16 2019-10-15 Apple Inc. Drag and drop for touchscreen devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176520A (ja) 2009-01-30 2010-08-12 Canon Inc 文書編集装置、文書編集方法、および文書編集プログラム
WO2011122402A1 (ja) 2010-03-31 2011-10-06 株式会社 日立メディコ 検査情報表示装置及び方法
JP2013120414A (ja) 2011-12-06 2013-06-17 Canon Inc 情報処理装置、情報処理装置の制御方法、プログラム

Also Published As

Publication number Publication date
JP2019016353A (ja) 2019-01-31
US11036914B2 (en) 2021-06-15
CA3009881A1 (en) 2018-12-29
CN109213316A (zh) 2019-01-15
CN109213316B (zh) 2023-08-11
US20190004686A1 (en) 2019-01-03

Similar Documents

Publication Publication Date Title
JP7344632B2 (ja) 自動レイアウトエンジン
US10540744B2 (en) Flexible control in resizing of visual displays
US10229094B2 (en) Dynamic simulation of a responsive web page
US9720582B2 (en) Responsive image rendition authoring
US9697190B2 (en) Integrating image renditions and page layout
WO2016054549A1 (en) Application prototyping tool
US20150106751A1 (en) Systems And Methods For Creating And Serving Dynamically Adjustable Web Pages
US20170091152A1 (en) Generating grid layouts with mutable columns
AU2013359428A1 (en) Preserving layout of region of content during modification
US9548042B2 (en) Responsive document breakpoints systems and methods
JP2019016353A5 (ja)
US20200242298A1 (en) Semantic slide autolayouts
JP7114366B2 (ja) 様々な電子デバイスとのプレゼンテーションのコラボレーション
US20140325404A1 (en) Generating Screen Data
US11436404B2 (en) Techniques for automated resizing of text content responsive to layout changes
JP2016095501A (ja) 電子表示装置の文書配置
US10592087B1 (en) System and method for creating fluid design keyframes on graphical user interface
US10592597B2 (en) Smart defaults based on previous settings for presentation slides
US10831855B2 (en) Adaptive images
CN106249986A (zh) 一种数据显示方法及装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210625

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220621

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20221004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230202

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20230202

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20230216

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20230221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230411

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230706

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230904

R150 Certificate of patent or registration of utility model

Ref document number: 7344632

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150