<?xml version="1.0" encoding="UTF-8"?>
<helpdocument version="1.0">
	
<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->


 
	
<meta>
      <topic id="textswriterguidepage_breakxml" indexer="include" status="PUBLISH">
         <title xml-lang="en-US" id="tit">Inserting and Deleting Page Breaks</title>
         <filename>/text/swriter/guide/page_break.xhp</filename>
      </topic>
   </meta>
   <body>
<bookmark xml-lang="en-US" branch="index" id="bm_id3155183"><bookmark_value>page breaks; inserting and deleting</bookmark_value>
      <bookmark_value>inserting; page breaks</bookmark_value>
      <bookmark_value>deleting;page breaks</bookmark_value>
      <bookmark_value>pages; inserting/deleting page breaks</bookmark_value>
      <bookmark_value>manual page breaks</bookmark_value>
      <bookmark_value>tables;deleting page breaks before</bookmark_value>
</bookmark><comment>MW added "tables;"</comment>
<paragraph xml-lang="en-US" id="hd_id3155183" role="heading" level="1" l10n="U" oldref="1"><variable id="page_break"><link href="text/swriter/guide/page_break.xhp" name="Inserting and Deleting Page Breaks">Inserting and Deleting Page Breaks</link>
</variable></paragraph>
      <paragraph xml-lang="en-US" id="hd_id3149833" role="heading" level="2" l10n="U" oldref="2">To Insert a Manual Page Break</paragraph>
      <list type="ordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3153402" role="listitem" l10n="U" oldref="3">Click in your document where you want the new page to begin.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3153119" role="listitem" l10n="U" oldref="4">Press Ctrl+Enter.</paragraph>
         </listitem>
      </list>
      <paragraph xml-lang="en-US" id="hd_id3153135" role="heading" level="2" l10n="U" oldref="6">To Delete a Manual Page Break</paragraph>
      <list type="ordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3149641" role="listitem" l10n="U" oldref="7">Click in front of the first character on the page that follows the manual page break.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3149608" role="listitem" l10n="U" oldref="8">Press Backspace.</paragraph>
         </listitem>
      </list>
      <paragraph xml-lang="en-US" id="hd_id3149624" role="heading" level="2" l10n="U"
                 oldref="10">To Delete a Manual Page Break That Occurs Before a Table</paragraph>
      <list type="ordered">
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3145111" role="listitem" l10n="U" oldref="11">Right-click in the table, and choose <emph>Table</emph>.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3156254" role="listitem" l10n="U" oldref="13">Click the <link href="text/swriter/01/05090300.xhp" name="Text Flow"><emph>Text Flow</emph></link> tab.</paragraph>
         </listitem>
         <listitem>
            <paragraph xml-lang="en-US" id="par_id3153380" role="listitem" l10n="U" oldref="14">Clear the <emph>Break</emph> check box.</paragraph>
         </listitem>
      </list>
      <embed href="text/shared/00/00000004.xhp#related"/>
      <embed href="text/swriter/guide/pagenumbers.xhp#pagenumbers"/>
      <paragraph xml-lang="en-US" id="par_id3154249" role="paragraph" l10n="U" oldref="15"><link href="text/swriter/01/04010000.xhp" name="Insert Break dialog">Insert Break dialog</link></paragraph>
   </body>
</helpdocument>