<?xml version="1.0" encoding="UTF-8"?>


<!--***********************************************************
 * 
 * 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.
 * 
 ***********************************************************-->

<helpdocument version="1.0">
<meta>
<topic id="textschart0105020000xml" indexer="include" status="PUBLISH">
<title xml-lang="en-US" id="tit">Title</title>
<filename>/text/schart/01/05020000.xhp</filename>
</topic>
<history>
<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
<lastedited date="2003-10-31T00:00:00">converted from old format - fpe</lastedited>
</history>
</meta>
<body>
  
  
  <section id="titel">
  <bookmark branch="index" xml-lang="en-US" id="bm_id3150791"><bookmark_value>titles; formatting charts</bookmark_value><bookmark_value>formatting; chart titles</bookmark_value></bookmark><paragraph id="hd_id3150791" role="heading" level="1" oldref="1" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020000.xhp" name="Title">Title</link></paragraph>
  <paragraph xml-lang="en-US" role="paragraph" id="par_id3125863" l10n="U" oldref="2">The<emph> Title </emph>menu command opens a submenu for editing the properties of the titles in the chart.</paragraph>
  </section>
  <section id="howtoget">
  <embed href="text/schart/00/00000004.xhp#frtttl"/>
</section>
  <paragraph id="hd_id3155414" role="heading" level="2" oldref="3" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020100.xhp" name="Main title">Main title</link></paragraph>
  <embed href="text/schart/01/05020100.xhp#titel"/>
  <paragraph id="hd_id3156441" role="heading" level="2" oldref="4" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020100.xhp" name="Subtitle">Subtitle</link></paragraph>
  <embed href="text/schart/01/05020100.xhp#titel"/>
  <paragraph id="hd_id3151073" role="heading" level="2" oldref="5" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020100.xhp" name="X-axis title">X-axis title</link></paragraph>
  <embed href="text/schart/01/05020100.xhp#titel"/>
  <paragraph id="hd_id3154732" role="heading" level="2" oldref="6" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020200.xhp" name="Y-axis title">Y-axis title</link></paragraph>
  <embed href="text/schart/01/05020200.xhp#titel"/>
  <paragraph id="hd_id3154017" role="heading" level="2" oldref="7" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020100.xhp" name="Z-axis title">Z-axis title</link></paragraph>
  <embed href="text/schart/01/05020100.xhp#titel"/>
  <paragraph id="hd_id3153711" role="heading" level="2" oldref="8" l10n="U" xml-lang="en-US"><link href="text/schart/01/05020200.xhp" name="All titles">All titles</link></paragraph>
  <embed href="text/schart/01/05020200.xhp#titel"/>
 </body>
</helpdocument>
