473,386 Members | 1,757 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,386 software developers and data experts.

XSL stylesheet for export of outline from OOImpressu to HTML?

Hello,

does anybody have %subj%? I would like to generate some very simple HTML
(XHTML?) file from OOImpress, so that I can send it to the friend for
review and not bother her with all images, layouts, and the other junk
(moreover, she probably never heard about OO.o). Powerpoint of the cursed
memory used to have export of outline to RTF. Is there something similar
for OOImpress (certainly, I do not care about RTF, OOWriter or HTML would
be more than enough).

I tried the template from
http://www.xml.com/pub/a/2004/02/04/tr-xml.html, but even though I tried to
install it into OOImpress (with Tools/XML Filter Settings), but the result
is highly unnice (see original at
http://www.ceplovi.cz/matej/tmp/gene...-testimony.sxi and the
result is
http://www.ceplovi.cz/matej/tmp/gene...ony.xhtml.bz2).

Any thoughts?

Thanks for any reply,

Matěj

--
Matej Cepl, http://www.ceplovi.cz/matej
GPG Finger: 89EF 4BC6 288A BF43 1BAB 25C3 E09F EF25 D964 84AC
138 Highland Ave. #10, Somerville, Ma 02143, (617) 623-1488

Q: Is vi an easy editor to learn, is it intuitive?
A: Yes, some of us think so. But most people think that we are
crazy.
-- vi FAQ
Jul 20 '05 #1
8 1752
Hi,
does anybody have %subj%? I would like to generate some very simple HTML
(XHTML?) file from OOImpress, so that I can send it to the friend for
review and not bother her with all images, layouts, and the other junk Well, in the first place, you could consider not to make presentations full of junk:)
(moreover, she probably never heard about OO.o). Then let her know it exists;-)
Powerpoint of the cursed
memory used to have export of outline to RTF. Is there something similar
for OOImpress (certainly, I do not care about RTF, OOWriter or HTML would
be more than enough).
OOImpress has export filters to PDF, flash and html. You can probably use one of them.
File->Export...
I tried the template from
http://www.xml.com/pub/a/2004/02/04/tr-xml.html, but even though I tried to
install it into OOImpress (with Tools/XML Filter Settings), but the result
is highly unnice (see original at
http://www.ceplovi.cz/matej/tmp/gene...-testimony.sxi and the
result is
http://www.ceplovi.cz/matej/tmp/gene...ony.xhtml.bz2).


If that stylesheet doesn't satisfy you, why not improve it yourself? http://books.evc-cit.info/book.php is a good place to learn the file format of OpenOffice.

regards,
--
Joris Gillis (http://www.ticalc.org/cgi-bin/acct-v...i?userid=38041)
Ceterum censeo XML omnibus esse utendum
Jul 20 '05 #2
Joris Gillis wrote:
Well, in the first place, you could consider not to make presentations
full of junk:)
I meant pictures and such stuff.
(moreover, she probably never heard about OO.o).

OOImpress has export filters to PDF, flash and html. You can probably use
one of them. File->Export...


Unfortunately, the export to HTML is of no use for me -- it exports every
slide into one page with all images attached as graphics files. What would
I need is just text in form of outline on one page.
If that stylesheet doesn't satisfy you, why not improve it yourself?
http://books.evc-cit.info/book.php is a good place to learn the file
format of OpenOffice.


That's helpful. Thanks!

Matej

--
Matej Cepl, http://www.ceplovi.cz/matej
GPG Finger: 89EF 4BC6 288A BF43 1BAB 25C3 E09F EF25 D964 84AC
138 Highland Ave. #10, Somerville, Ma 02143, (617) 623-1488

As with the Christian religion, the worst advertisement for
Socialism is its adherents.
-- George Orwell
Jul 20 '05 #3
Joris Gillis wrote:
If that stylesheet doesn't satisfy you, why not improve it yourself?
http://books.evc-cit.info/book.php is a good place to learn the file
format of OpenOffice.


I tried to develop my own style, but there are some things in XPath, which I
do not know how to express. If I understand correctly then the unordered
list in OOImpress is like this:

<text:unordered-list text:style-name="L2">
<text:list-item>
<text:unordered-list>
<text:list-item>
<text:p text:style-name="P3">Presentation for Living Waters</text:p>
</text:list-item>
</text:unordered-list>
</text:list-item>
</text:unordered-list>
<text:unordered-list text:style-name="L2">
<text:list-item>
<text:unordered-list>
<text:list-item>
<text:p text:style-name="P3">Monday, December 5th</text:p>
</text:list-item>
</text:unordered-list>
</text:list-item>
</text:unordered-list>

The problem is that I would need to condens all elements
<text:unordered-list text:style-name="L2"> into one <ul> element. Do you
have idea how to do it with XSLT, please?

Thanks a lot,

Matej

--
Matej Cepl, http://www.ceplovi.cz/matej
GPG Finger: 89EF 4BC6 288A BF43 1BAB 25C3 E09F EF25 D964 84AC
138 Highland Ave. #10, Somerville, Ma 02143, (617) 623-1488

Scouts are saving aluminum cans, bottles and other items to be
recycled. Proceeds will be used to cripple children.
-- from a church bulletin

------------------------------
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns="http://www.w3.org/1999/xhtml"
xmlns:style="http://openoffice.org/2000/style"
xmlns:text="http://openoffice.org/2000/text"
xmlns:office="http://openoffice.org/2000/office"
xmlns:table="http://openoffice.org/2000/table"
xmlns:draw="http://openoffice.org/2000/drawing"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="http://openoffice.org/2000/meta"
xmlns:number="http://openoffice.org/2000/datastyle"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:chart="http://openoffice.org/2000/chart"
xmlns:dr3d="http://openoffice.org/2000/dr3d"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="http://openoffice.org/2000/form"
xmlns:script="http://openoffice.org/2000/script"
xmlns:config="http://openoffice.org/2001/config"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:presentation="http://openoffice.org/2000/presentation"
office:class="text"
exclude-result-prefixes="office meta table number dc fo xlink chart math
script xsl draw svg dr3d form config text style">

<xsl:output indent="yes"
method="xml"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
encoding="utf-8"
/>

<xsl:template match="draw:page">
<h1><xsl:number/>.
<xsl:value-of select="draw:text-box[1]/text:p[1]"/></h1>
<!-- xsl:apply-templates select="presentation:notes"/ -->
<xsl:apply-templates/>
</xsl:template>

<xsl:template match="text:p">
<p><xsl:apply-templates/></p>
</xsl:template>

<xsl:template match="/">
<html>
<head>
<title>Speaker Notes</title>
<xsl:element name="meta">
<xsl:attribute name="name">DC.date</xsl:attribute>
<xsl:attribute name="content">
<xsl:value-of select="/dc:date"/>
</xsl:attribute>
</xsl:element>
<style>
<xsl:comment>
p {font-size: 10pt}
h1 {font-family: arial; font-size: 12pt; font-weight:
bold}
</xsl:comment>
</style>
</head>
<xsl:apply-templates/>
</html>
</xsl:template>

<xsl:template match="office:body">
<body>
<xsl:apply-templates />
</body>
</xsl:template>

<xsl:template match="text:unordered-list[@text:style-name='L2']">
<ul>
<xsl:apply-templates />
</ul>
</xsl:template>

<xsl:template match="text:ordered-list">
<ol>
<xsl:apply-templates />
</ol>
</xsl:template>

<xsl:template match="text:list-item[not(text:unordered-list)]">
<li><xsl:apply-templates /></li>
</xsl:template>

<xsl:template match="text:span[@text:style-name='T1']">
<em><xsl:apply-templates/></em>
</xsl:template>

<!-- sections of the OO format we don't need at present -->
<xsl:template match="office:automatic-styles" />
<xsl:template match="office:font-decls" />
<xsl:template match="office:meta" />
<xsl:template match="office:script" />
<xsl:template match="office:settings" />
<xsl:template match="office:styles" />
<xsl:template match="style:*" />
<xsl:template match="dc:*">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="meta:creation-date">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="meta:editing-cycles" />
<xsl:template match="meta:editing-duration" />
<xsl:template match="meta:generator" />
<xsl:template match="meta:user-defined" />
<!--
<xsl:template match="text()">
<xsl:apply-templates select="normalize-space(.)"/>
</xsl:template>
-->
</xsl:stylesheet>
Jul 20 '05 #4
On Sun, 05 Dec 2004 17:03:53 -0500, Matej Cepl <ce**@surfbest.net>
wrote:
<text:unordered-list text:style-name="L2">
<text:list-item>
<text:unordered-list>
<text:list-item>
<text:p text:style-name="P3">Presentation for Living Waters</text:p>
</text:list-item>
</text:unordered-list>
</text:list-item>
</text:unordered-list>
<text:unordered-list text:style-name="L2">
<text:list-item>
<text:unordered-list>
<text:list-item>
<text:p text:style-name="P3">Monday, December 5th</text:p>
</text:list-item>
</text:unordered-list>
</text:list-item>
</text:unordered-list>

The problem is that I would need to condens all elements
<text:unordered-list text:style-name="L2"> into one <ul> element. Do you
have idea how to do it with XSLT, please?


In some template:
<ul>
<xsl:apply-templates
select="text:unordered-list[@text:style-name="'L2'"]/>
</ul>

and then
....

<xsl:template match="text:unordered-list">
<xsl:value-of select="."/>
</xsl:template>

Or, alternately:

<ul>
<xsl:for-each select="text:unordered-list[@text:style-name="'L2'"]>
<xsl:value-of select="."/>
</xsl:for-each>
</ul>

--
Morris M. Keesan -- ke****@alum.bu.edu

Jul 20 '05 #5
Morris M. Keesan wrote:
The problem is that I would need to condens all elements
<text:unordered-list text:style-name="L2"> into one <ul> element. Do you
have idea how to do it with XSLT, please?


In some template:
<ul>
<xsl:apply-templates
select="text:unordered-list[@text:style-name="'L2'"]/>
</ul>

and then
...

<xsl:template match="text:unordered-list">
<xsl:value-of select="."/>
</xsl:template>


I tried this one, but it doesn't seem to work. See
http://www.ceplovi.cz/matej/tmp/gene...timony.xml.bz2
(FlatXML from OpenOffice) and
http://www.ceplovi.cz/matej/tmp/ooimpress-to-html.xsl, which produces
http://www.ceplovi.cz/matej/tmp/gene...estimony.xhtml --
certainly not what I hoped for.

Any thoughts?

Matej Cepl

--
Matej Cepl, http://www.ceplovi.cz/matej
GPG Finger: 89EF 4BC6 288A BF43 1BAB 25C3 E09F EF25 D964 84AC
138 Highland Ave. #10, Somerville, Ma 02143, (617) 623-1488

In order to avoid being called a flirt, she always yielded
easily.
-- Charles, Count Talleyrand
Jul 20 '05 #6
Hi,

You are extremely close to the solution; try this:
Nice stylesheet of yours, by the way.

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns="http://www.w3.org/1999/xhtml"
xmlns:style="http://openoffice.org/2000/style"
xmlns:text="http://openoffice.org/2000/text"
xmlns:office="http://openoffice.org/2000/office"
xmlns:table="http://openoffice.org/2000/table"
xmlns:draw="http://openoffice.org/2000/drawing"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:meta="http://openoffice.org/2000/meta"
xmlns:number="http://openoffice.org/2000/datastyle"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:chart="http://openoffice.org/2000/chart"
xmlns:dr3d="http://openoffice.org/2000/dr3d"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="http://openoffice.org/2000/form"
xmlns:script="http://openoffice.org/2000/script"
xmlns:config="http://openoffice.org/2001/config"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
xmlns:presentation="http://openoffice.org/2000/presentation"
office:class="text"
exclude-result-prefixes="office meta table number dc fo xlink chart math script xsl draw svg dr3d form config text style">

<xsl:output indent="yes"
method="xml"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
encoding="utf-8"
/>

<xsl:template match="/">
<html>
<head>
<title>Speaker Notes</title>
<xsl:element name="meta">
<xsl:attribute name="name">DC.date</xsl:attribute>
<xsl:attribute name="content">
<xsl:value-of select="/dc:date" />
</xsl:attribute>
</xsl:element>
<style>
<xsl:comment>
p {font-size: 10pt}
h1 {font-family: arial; font-size: 12pt; font-weight:
bold}
</xsl:comment>
</style>
</head>
<xsl:apply-templates/>
</html>
</xsl:template>

<xsl:template match="office:body">
<body>
<xsl:apply-templates />
</body>
</xsl:template>

<xsl:template match="draw:page">
<h1><xsl:number/>.
<xsl:value-of select="draw:text-box[1]/text:p[1]"/></h1>

<xsl:apply-templates />

</xsl:template>
<xsl:template match="text:p">
<p><xsl:apply-templates/></p>
</xsl:template>

<xsl:template match="text:unordered-list">
<ul><xsl:apply-templates /></ul>
</xsl:template>

<xsl:template match="text:list-item">
<li><xsl:apply-templates /></li>
</xsl:template>

<xsl:template match="text:span[@text:style-name='T1']">
<em><xsl:apply-templates/></em>
</xsl:template>

<!-- sections of the OO format we don't need at present -->
<xsl:template match="office:automatic-styles" />
<xsl:template match="office:font-decls" />
<xsl:template match="office:meta" />
<xsl:template match="office:script" />
<xsl:template match="office:settings" />
<xsl:template match="office:styles" />
<xsl:template match="style:*" />
<xsl:template match="dc:*">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="meta:creation-date">
<xsl:apply-templates />
</xsl:template>
<xsl:template match="meta:editing-cycles" />
<xsl:template match="meta:editing-duration" />
<xsl:template match="meta:generator" />
<xsl:template match="meta:user-defined" />

<!-- xsl:template match="text()">
<xsl:apply-templates select="normalize-space(.)"/>
</xsl:template -->

</xsl:stylesheet>

regards,
--
Joris Gillis (http://www.ticalc.org/cgi-bin/acct-v...i?userid=38041)
Ceterum censeo XML omnibus esse utendum
Jul 20 '05 #7
> Joris Gillis wrote:
You are extremely close to the solution; try this:
Nice stylesheet of yours, by the way.
Thanks a lot, now it works!

I'm glad it works. Concerning the stylesheet for export of plain
Speaker notes from OOImpress, I was working on the top of
http://www.xml.com/pub/a/2004/02/04/tr-xml.html, and as a former lawyer I
learned a value of good intendation hard way :-).

The only problem I have (and it is really unimportant) -- is there a way how
to clean XML output of all the redundant empty spaces and empty lines?


Yes, just set indent to no:

<xsl:output indent="no"
method="xml"
doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
encoding="utf-8"
/>

and use:
<xsl:template match="draw:page">
<h1><xsl:number/><xsl:text>.</xsl:text>
<xsl:value-of select="draw:text-box[1]/text:p[1]"/></h1>
<xsl:apply-templates />

</xsl:template>
to get optimal whitespace compression.
btw: I you're going to analyze the XML of OOo files. It's handy to uncheck Tools->Options->Load/Save->General->'size optimization' for nice indentation. That's easier to read;)

regards,
--
Joris Gillis (http://www.ticalc.org/cgi-bin/acct-v...i?userid=38041)
Ceterum censeo XML omnibus esse utendum
Jul 20 '05 #8
Joris Gillis wrote:
btw: I you're going to analyze the XML of OOo files. It's handy to uncheck
Tools->Options->Load/Save->General->'size optimization' for nice
indentation. That's easier to read;)


Thanks,

Matej

--
Matej Cepl, http://www.ceplovi.cz/matej
GPG Finger: 89EF 4BC6 288A BF43 1BAB 25C3 E09F EF25 D964 84AC
138 Highland Ave. #10, Somerville, Ma 02143, (617) 623-1488

The state is the great fictitious entity by which everyone seeks
to live at the expense of everyone else.
-- Frederick Bastiat
Jul 20 '05 #9

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Jan Roland Eriksson | last post by:
Archive-name: www/stylesheets/authoring-faq Posting-Frequency: twice a week (Mondays and Thursdays) Last-modified: August 28, 2002 Version: 1.15 URL: http://css.nu/faq/ciwas-aFAQ.html...
0
by: Jan Roland Eriksson | last post by:
Archive-name: www/stylesheets/authoring-faq Posting-Frequency: twice a week (Mondays and Thursdays) Last-modified: April 10, 2003 Version: 1.16 URL: http://css.nu/faq/ciwas-aFAQ.html Maintainer:...
1
by: Ellen Manning | last post by:
I'm trying to export an Excel2K spreadsheet to A2K. Here is a sample of the Excel spreadsheet: LastName FirstName Hours Location HoursPercent Doe John ...
3
by: msnews.microsoft.com | last post by:
Anyone ever play with Outline views in VS.NET? I'm amazed I never discovered this. None of this was ever discussed in my training. It's a big help to use this with HTML view. View/Synchronize...
0
by: Anil.Narla | last post by:
Hi, I'm trying to Export DataGrid to Excel in ASP.NET,But the Stylesheet is not same when i compared to the normal datagrid.Customer wants same stylesheet need to be applied on excel so they don't...
8
by: Taffman | last post by:
I've searched this goup for an answer to this, there are many discussions that come close but non that I can find that actually addresses this particular problem. I'm exporting queries to Excel....
4
by: Rex | last post by:
Hi - I am new to VB.Net/2005, but not VB. I am trying to find an outline or tree - type control for VB.Net/2005 that provides the ability for the User to TYPE in one of the NODES of the outline......
0
by: 1001 Webs | last post by:
As I read at: http://webpages.charter.net/edreamleo/front.html Leo is... * A general data management environment. Leo shows user-created relationships among any kind of data: computer...
2
by: Paulson | last post by:
HI all I got a problem with my menu display.I am making a list as shown below in one of my aspx pages. And added a stylesheet in CSS for it. This is not working in IE but not in...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: aa123db | last post by:
Variable and constants Use var or let for variables and const fror constants. Var foo ='bar'; Let foo ='bar';const baz ='bar'; Functions function $name$ ($parameters$) { } ...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.