Patents by Inventor Paul J. Kwiatkowski

Paul J. Kwiatkowski has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20200372208
    Abstract: Techniques are presented for enhanced erasing of digital ink. The ink erasing feature of a content creation application can preserve the complex shapes that can result from partial erasure of ink strokes. The ink erasing feature can receive ink stroke data from an ink stroke and display the ink stroke. The ink erasing feature can then receive and display an eraser stroke that contacts the ink stroke. Once the eraser stroke is received, the ink erasing feature can determine whether any eraser segment of the eraser stroke contacts the ink stroke. If an eraser segment does not contact the ink stroke, the ink erasing feature discards the eraser segment. If an eraser segment does contact the ink stroke, the ink erasing feature can update the ink stroke data based on amount of overlap and location of contact between the eraser stroke and the ink stroke.
    Type: Application
    Filed: August 14, 2020
    Publication date: November 26, 2020
    Inventors: Joshua M. Smithrud, Taylor S. Williams, Craig A. Macomber, Paul J. Kwiatkowski, Marcel Lugosan, Travis P. Dorschel, Simon J. Schaffer, Shane J. Clifford, Nicholas J. Wilson
  • Patent number: 10783322
    Abstract: Techniques are presented for enhanced erasing of digital ink. The ink erasing feature of a content creation application can preserve the complex shapes that can result from partial erasure of ink strokes. The ink erasing feature can receive ink stroke data from an ink stroke and display the ink stroke. The ink erasing feature can then receive and display an eraser stroke that contacts the ink stroke. Once the eraser stroke is received, the ink erasing feature can determine whether any eraser segment of the eraser stroke contacts the ink stroke. If an eraser segment does not contact the ink stroke, the ink erasing feature discards the eraser segment. If an eraser segment does contact the ink stroke, the ink erasing feature can update the ink stroke data based on amount of overlap and location of contact between the eraser stroke and the ink stroke.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: September 22, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Joshua M. Smithrud, Taylor S. Williams, Craig A. Macomber, Paul J. Kwiatkowski, Marcel Lugosan, Travis P. Dorschel, Simon J. Schaffer, Shane J. Clifford, Nicholas J. Wilson
  • Patent number: 10430500
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Grant
    Filed: July 15, 2015
    Date of Patent: October 1, 2019
    Assignee: INTENTIONAL SOFTWARE CORPORATION
    Inventors: Paul J. Kwiatkowski, Andras Nagy, Jeremy M. Price
  • Patent number: 10402478
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Grant
    Filed: July 15, 2015
    Date of Patent: September 3, 2019
    Assignee: Intentional Software Corporation
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price, Andras Nagy, Nicholas J. Wilson, Alexander K. Horton
  • Patent number: 10387547
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Grant
    Filed: July 15, 2015
    Date of Patent: August 20, 2019
    Assignee: INTENTIONAL SOFTWARE CORPORATION
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price, Andras Nagy, Nicholas J. Wilson, Alexander K. Horton
  • Patent number: 10387540
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Grant
    Filed: July 15, 2015
    Date of Patent: August 20, 2019
    Assignee: INTENTIONAL SOFTWARE CORPORATION
    Inventors: Charles Simonyi, Pontus E. Andersson, Paul J. Kwiatkowski, Jeremy M. Price
  • Patent number: 10353566
    Abstract: Semantic zoom techniques are described. In one or more implementations, techniques are described that may be utilized by a user to navigate to content of interest. These techniques may also include a variety of different features, such as to support semantic swaps and zooming “in” and “out.” These techniques may also include a variety of different input features, such as to support gestures, cursor-control device, and keyboard inputs. A variety of other features are also supported as further described in the detailed description and figures.
    Type: Grant
    Filed: September 9, 2011
    Date of Patent: July 16, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Theresa B. Pittappilly, Rebecca Deutsch, Orry W. Soegiono, Nicholas R. Waggoner, Holger Kuehnle, William D. Carr, Ross N. Luengen, Paul J. Kwiatkowski, Jan-Kristian Markiewicz, Gerrit H. Hofmeester, Robert Disano
  • Patent number: 10353991
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Grant
    Filed: July 15, 2015
    Date of Patent: July 16, 2019
    Assignee: INTENTIONAL SOFTWARE CORPORATION
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price
  • Patent number: 10325398
    Abstract: Techniques and systems for applying an ink effect to the drawing of an ink stroke can include absolute age for a digital ink stroke. A digital ink system can identify a reference time from which to represent a current time. The system can generate an absolute age of each ink point of the ink stroke based on the reference time. Then the ink effect can be applied to the ink stroke with a rhythm derived from when the ink stroke was originally drawn by using the absolute age of each ink point. In some cases, the rhythm can be the same rhythm as when the ink stroke was originally drawn. In other cases, the rhythm can be modified based on the rhythm the ink stroke was originally drawn. For example, the original rhythm may be accelerating, decelerating, skewed, compressed, affine, or non-affine.
    Type: Grant
    Filed: January 15, 2018
    Date of Patent: June 18, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Paul J. Kwiatkowski, Travis P. Dorschel, Andras Nagy, Taylor S. Williams, Simon J. Schaffer, Craig A. Macomber, Christine M. Johnson, Michael Tang, Joshua M. Smithrud
  • Patent number: 10275910
    Abstract: Techniques and systems for managing visual layouts of ink strokes are described. In particular, an ink space coordinate system for a digital ink stroke is provided. A digital ink system can receive ink stroke data of an ink stroke. The system can define an ink space coordinate system along the ink stroke. Defining the ink space coordinate system can include assigning a reference line of the ink stroke and an origin point on the reference line, as well as creating ink space coordinates. Creating the ink space coordinates can include defining ink space x-coordinate values representing a distance along the reference line relative to the origin point and defining ink space y-coordinate values representing a distance along an axis perpendicular to the reference line of the ink stroke. Then the system can perform a warping to create curvature in the ink space coordinate system.
    Type: Grant
    Filed: January 15, 2018
    Date of Patent: April 30, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Simon J. Schaffer, Christine M. Johnson, Travis P. Dorschel, Craig A. Macomber, Joshua M. Smithrud, Michael Tang, Paul J. Kwiatkowski, Taylor S. Williams, James Robert Olyha
  • Publication number: 20190102079
    Abstract: Techniques are presented for enhanced erasing of digital ink. The ink erasing feature of a content creation application can preserve the complex shapes that can result from partial erasure of ink strokes. The ink erasing feature can receive ink stroke data from an ink stroke and display the ink stroke. The ink erasing feature can then receive and display an eraser stroke that contacts the ink stroke. Once the eraser stroke is received, the ink erasing feature can determine whether any eraser segment of the eraser stroke contacts the ink stroke. If an eraser segment does not contact the ink stroke, the ink erasing feature discards the eraser segment. If an eraser segment does contact the ink stroke, the ink erasing feature can update the ink stroke data based on amount of overlap and location of contact between the eraser stroke and the ink stroke.
    Type: Application
    Filed: September 29, 2017
    Publication date: April 4, 2019
    Inventors: Joshua M. Smithrud, Taylor S. Williams, Craig A. Macomber, Paul J. Kwiatkowski, Marcel Lugosan, Travis P. Dorschel, Simon J. Schaffer, Shane J. Clifford, Nicholas J. Wilson
  • Publication number: 20190096114
    Abstract: Techniques and systems for applying an ink effect to the drawing of an ink stroke can include absolute age for a digital ink stroke. A digital ink system can identify a reference time from which to represent a current time. The system can generate an absolute age of each ink point of the ink stroke based on the reference time. Then the ink effect can be applied to the ink stroke with a rhythm derived from when the ink stroke was originally drawn by using the absolute age of each ink point. In some cases, the rhythm can be the same rhythm as when the ink stroke was originally drawn. In other cases, the rhythm can be modified based on the rhythm the ink stroke was originally drawn. For example, the original rhythm may be accelerating, decelerating, skewed, compressed, affine, or non-affine.
    Type: Application
    Filed: January 15, 2018
    Publication date: March 28, 2019
    Inventors: Paul J. Kwiatkowski, Travis P. Dorschel, Andras Nagy, Taylor S. Williams, Simon J. Schaffer, Craig A. Macomber, Christine M. Johnson, Michael Tang, Joshua M. Smithrud
  • Publication number: 20190096100
    Abstract: Techniques and systems for managing visual layouts of ink strokes are described. In particular, an ink space coordinate system for a digital ink stroke is provided. A digital ink system can receive ink stroke data of an ink stroke. The system can define an ink space coordinate system along the ink stroke. Defining the ink space coordinate system can include assigning a reference line of the ink stroke and an origin point on the reference line, as well as creating ink space coordinates. Creating the ink space coordinates can include defining ink space x-coordinate values representing a distance along the reference line relative to the origin point and defining ink space y-coordinate values representing a distance along an axis perpendicular to the reference line of the ink stroke. Then the system can perform a warping to create curvature in the ink space coordinate system.
    Type: Application
    Filed: January 15, 2018
    Publication date: March 28, 2019
    Inventors: Simon J. Schaffer, Christine M. Johnson, Travis P. Dorschel, Craig A. Macomber, Joshua M. Smithrud, Michael Tang, Paul J. Kwiatkowski, Taylor S. Williams, James Robert Olyha
  • Publication number: 20180267686
    Abstract: Semantic zoom techniques are described. In one or more implementations, techniques are described that may be utilized by a user to navigate to content of interest. These techniques may also include a variety of different features, such as to support semantic swaps and zooming “in” and “out.” These techniques may also include a variety of different input features, such as to support gestures, cursor-control device, and keyboard inputs. A variety of other features are also supported as further described in the detailed description and figures.
    Type: Application
    Filed: May 22, 2018
    Publication date: September 20, 2018
    Inventors: Theresa B. PITTAPPILLY, Rebecca DEUTSCH, Orry W. SOEGIONO, Nicholas R. WAGGONER, Holger KUEHNLE, William D. CARR, Ross N. LUENGEN, Paul J. KWIATKOWSKI, Jan-Kristian MARKIEWICZ, Gerrit H. HOFMEESTER, Robert DISANO
  • Publication number: 20180011817
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Application
    Filed: July 15, 2015
    Publication date: January 11, 2018
    Inventors: Charles Simonyi, Pontus E. Andersson, Paul J. Kwiatkowski, Jeremy M. Price
  • Publication number: 20170371851
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Application
    Filed: July 15, 2015
    Publication date: December 28, 2017
    Inventors: Paul J. Kwiatkowski, Andras Nagy, Jeremy M. Price
  • Publication number: 20170364482
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Application
    Filed: July 15, 2015
    Publication date: December 21, 2017
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price, Andras Nagy, Nicholas J. Wilson, Alexander K. Horton
  • Publication number: 20170364489
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Application
    Filed: July 15, 2015
    Publication date: December 21, 2017
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price, Andras Nagy, Nicholas J. Wilson, Alexander K. Horton
  • Publication number: 20170364491
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Application
    Filed: July 15, 2015
    Publication date: December 21, 2017
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price, Andras Nagy, Nicholas J. Wilson, Alexander K. Horton
  • Publication number: 20170364490
    Abstract: A layout engine generates a visual layout tree for a visual description tree of a document whose content is to be rendered in one or more display areas. A visual description tree describes the content of a document along with formatting and logical arrangement the content. Visual description nodes of a visual description tree represent the organization of the constituent elements a document hierarchically. A visual layout tree defines the layout of a document within one or more display areas. Visual layout nodes of a visual layout tree represent the layout of the content of a document hierarchically. The layout engine receives as input a visual description tree and generates the corresponding visual layout tree. A rendering engine then inputs the visual layout tree and generates a graphics buffer containing the pixels representing the layout of the document as defined by the visual layout tree.
    Type: Application
    Filed: July 15, 2015
    Publication date: December 21, 2017
    Inventors: Charles Simonyi, Paul J. Kwiatkowski, Jeremy M. Price