On Fri, Aug 25, 2000 at 11:28:51AM +1000, Martin Sevior wrote:
> HI Martin,
>         Sorry I'm confused. Please roll all the patches you've
> submitted in the last few days into one big patch and send it in. Just a
> patch for your new improved wv tree against the current wv tree. I forget
> which patch goes where.

---

OK... here is a SUMMARIZING PATCH replacing all my recent earlier 
submissions. Technical explanations in earlier mails.

Furthermore two files to be simply ADDED to CVS (in the root 
directory wv/):

wvCleanLaTeX.xml: Alternative to wvLaTeX.xml with less visual mark-up.
                  See earlier mails.

placeholder.eps:  embedded graphics placeholder for LaTeX.

These three items together should bring CVS up to what I have 
here locally.

---
 
> Are you interested in being the maintainer of wv?

One problem I see is that I don't know wv, don't know MS Word internals, 
and will not have easy access to a Windows box. I only know those few
parts of wv that I have played with.

On the other hand, this is important software and should be taken
care of by someone. Therefore: yes, conditionally:
- No one else volunteers (or objects)
- Caolan is happy with it.


> Cheers
> 
> Martin

Cheers

Martin

-- 
Martin Vermeer [EMAIL PROTECTED]   Phone +358 9 295 55 215   Fax +358 9 295 55 200
Finnish Geodetic Institute    Geodeetinrinne 2    FIN-02430 Masala FINLAND
:wq
Index: text.c
===================================================================
RCS file: /cvsroot/wv/text.c,v
retrieving revision 1.46
diff -u -r1.46 text.c
--- text.c      2000/08/23 02:19:38     1.46
+++ text.c      2000/08/25 07:55:53
@@ -135,7 +135,7 @@
                        return("CP1252");
                case 0x041b:    /*Slovak*/                    return("CP1250");
                case 0x041c:    /*Albanian*/                  return("CP1251");
-               case 0x041d:    /*Swedish*/                   return("CP1250");
+               case 0x041d:    /*Swedish*/                   return("CP1252");
                case 0x041e:    /*Thai*/                      return("CP874");
                case 0x041f:    /*Turkish*/                   return("CP1254");
                case 0x0420:    /*Urdu*/                      return("CP1256");
@@ -555,6 +555,9 @@
        switch(char16)
                {
                /* Fix up these as math characters: */
+               case 0xb1:
+                       printf("$\\pm$");
+                       return(1);
                case 0xb2:
                        printf("$\\mathtwosuperior$");
                        return(1);
Index: wvHtml.c
===================================================================
RCS file: /cvsroot/wv/wvHtml.c,v
retrieving revision 1.43
diff -u -r1.43 wvHtml.c
--- wvHtml.c    2000/06/06 00:55:16     1.43
+++ wvHtml.c    2000/08/25 07:55:54
@@ -26,6 +26,8 @@
 0 on success
 */
 
+char *config=NULL;
+
 int myelehandler(wvParseStruct *ps,wvTag tag, void *props, int dirty);
 int mydochandler(wvParseStruct *ps,wvTag tag);
 int myCharProc(wvParseStruct *ps,U16 eachchar,U8 chartype,U16 lid);
@@ -174,7 +176,6 @@
        {
        FILE *input;
        char *password=NULL;
-       char *config=NULL;
        char *dir=NULL;
        int ret;
        state_data myhandle;
@@ -484,7 +485,34 @@
     return(0);
     }
 
+void wvStrangeNoGraphicData(char *config, int graphicstype)
+       {
+       wvError(("Strange No Graphic Data in the 0x01 graphic\n"));
 
+       if (strcmp(config, "wvLaTeX.xml") == 0)
+               
+printf("\n\\resizebox*{\\baselineskip}{!}{\\includegraphics{placeholder.eps}}\
+                 \n-- %#.2x graphic: StrangeNoGraphicData --", 
+                       graphicstype);
+       else
+               printf("<img alt=\"%#.2x graphic\" src=\"%s\"><br>", graphicstype,
+                       "StrangeNoGraphicData");
+       return;
+       }
+
+void wvPrintGraphics(char *config, int graphicstype, int width, int height,
+               char* source)
+       {
+       if (strcmp(config, "wvLaTeX.xml") == 0)
+               printf("\n\\resizebox{%dpt}{%dpt}\
+                 {\\includegraphics{placeholder.eps}}\
+                 \n-- %#.2x graphic %s -- \n",
+                       width, height, graphicstype, source);
+       else
+               printf("<img width=\"%d\" height=\"%d\" alt=\"%#.2x graphic\" 
+src=\"%s\"><br>",
+               width, height, graphicstype, source);
+       return;
+       }
+
 int mySpecCharProc(wvParseStruct *ps,U16 eachchar,CHP *achp)
        {
        static int message,state;
@@ -552,14 +580,14 @@
                                {
                                wvTrace(("Here\n"));
                                name = wvHtmlGraphic(ps,&blip);
-                               printf("<img width=\"%d\" height=\"%d\" alt=\"0x01 
graphic\" 
src=\"%s\"><br>",(int)wvTwipsToHPixels(picf.dxaGoal),(int)wvTwipsToVPixels(picf.dyaGoal),name);
+                               wvPrintGraphics(config, 0x01, 
+                               (int)wvTwipsToHPixels(picf.dxaGoal),
+                               (int)wvTwipsToVPixels(picf.dyaGoal),
+                               name);
                                wvFree(name);
                                }
                        else
-                               {
-                               wvError(("Strange No Graphic Data in the 0x01 
graphic\n"));
-                               printf("<img alt=\"0x08 graphic\" 
src=\"%s\"><br>","StrangeNoGraphicData");
-                               }
+                               wvStrangeNoGraphicData(config, 0x01);
                        wvStream_goto(ps->data,p);
                        return(0);
                        }
@@ -577,16 +605,14 @@
                                                {
                                                wvTrace(("Here\n"));
                                                name = wvHtmlGraphic(ps,&blip);
-                                               printf("<img width=\"%d\" 
height=\"%d\" alt=\"0x08 graphic\" src=\"%s\"><br>",
-                                               
(int)wvTwipsToHPixels(fspa->xaRight-fspa->xaLeft),(int)wvTwipsToVPixels(fspa->yaBottom-fspa->yaTop),
+                                               wvPrintGraphics(config, 0x08,
+                                               
+(int)wvTwipsToHPixels(fspa->xaRight-fspa->xaLeft),
+                                               
+(int)wvTwipsToVPixels(fspa->yaBottom-fspa->yaTop),
                                                name);
                                                wvFree(name);
                                                }
                                        else
-                                               {
-                                               wvError(("Strange No Graphic Data in 
the 0x01 graphic\n"));
-                                               printf("<img alt=\"0x08 graphic\" 
src=\"%s\"><br>","StrangeNoGraphicData");
-                                               }
+                                               wvStrangeNoGraphicData(config, 0x08);
                                        }
                                else
                                        {
Index: wvLaTeX.xml
===================================================================
RCS file: /cvsroot/wv/wvLaTeX.xml,v
retrieving revision 1.7
diff -u -r1.7 wvLaTeX.xml
--- wvLaTeX.xml 2000/08/15 02:09:24     1.7
+++ wvLaTeX.xml 2000/08/25 07:55:55
@@ -345,8 +345,14 @@
 
 <text> 
 <begin>
-
-</begin><end></end>
+\vspace{<mmParaBefore/>}
+\setlength{\parindent}{<mmParaLeft1/>}
+\setlength{\leftskip}{<mmParaLeft/>}
+\setlength{\rightskip}{<mmParaRight/>}
+</begin>
+<end>
+\vspace{<mmParaAfter/>}
+</end>
 </text>
 
 <picture>
<main>
<charentity>
<begin>LaTeX</begin>
</charentity>

<document>
<begin>%Document generated by wvWare/<version/>
%wvWare written by [EMAIL PROTECTED]
%http://www.wvWare.com
%
\documentclass[10pt]{article}
\usepackage[dvips]{color}
\usepackage[dvips]{graphics}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
<!--
\usepackage{multirow}
-->
\usepackage[normalem]{ulem}
\usepackage{geometry}
\geometry{a4paper,lmargin=2cm,rmargin=2cm}
\newcommand\suppress[1]{}
\newcommand\deleted[1]{\xout{#1}}
\newcommand\revised[1]{\uline{#1}}
\newlength\textpercent
\setlength\textpercent{0.009\textwidth}

\newbox\strikebox
\def\strike#1{\setbox\strikebox \hbox{&lt;#1&gt;}\hbox{\raise0.5ex\hbox to 0pt{\vrule height 0.4pt width \wd\strikebox\hss}\copy\strikebox}}

\setlength\parindent{0pt}
\setlength{\parskip}{\smallskipamount}
\begin{document}
\sloppy
</begin>
<end>
\end{document}
</end>
</document>

<section>
<begin>
</begin>
<end>
</end>
</section>

<justification>
<left></left>
<right>\raggedleft</right>
<center>\centering</center>
<block></block>
<asian>&lt;!--Could Someone who sees this tag tell me what was is this type of justification, asian languages only i think--&gt;</asian>
</justification>

<numbering>
<Arabic>type=&quot;1&quot;</Arabic>
<UpperRoman>type=&quot;I&quot;</UpperRoman>
<LowerRoman>type=&quot;i&quot;</LowerRoman>
<UpperCaseN>type=&quot;A&quot;</UpperCaseN>
<LowerCaseN>type=&quot;a&quot;</LowerCaseN>
</numbering>

<border>
<noned>none</noned>
<singled>solid</singled>
<thickd>solid</thickd>
<doubled>double</doubled>
<number4d>double</number4d>
<hairlined>solid</hairlined>
<dotd>dotted</dotd>
<dashlargegapd>dashed</dashlargegapd>
<dotdashd>dotted</dotdashd>
<dotdotdashd>dotted</dotdotdashd>
<tripled>double</tripled>
<thin-thicksmallgapd>dashed</thin-thicksmallgapd>
<thick-thinsmallgapd>dashed</thick-thinsmallgapd>
<thin-thick-thinsmallgapd>dashed</thin-thick-thinsmallgapd>
<thin-thickmediumgapd>dashed</thin-thickmediumgapd>
<thick-thinmediumgapd>dashed</thick-thinmediumgapd>
<thin-thick-thinmediumgapd>dashed</thin-thick-thinmediumgapd>
<thin-thicklargegapd>dashed</thin-thicklargegapd>
<thick-thinlargegapd>dashed</thick-thinlargegapd>
<thin-thick-thinlargegapd>dashed</thin-thick-thinlargegapd>
<waved>solid</waved>
<doublewaved>double</doublewaved>
<dashsmallgapd>sashed</dashsmallgapd>
<dashdotstrokedd>dashed</dashdotstrokedd>
<emboss3Dd>ridge</emboss3Dd>
<engrave3Dd>groove</engrave3Dd>
<defaultd>ridge</defaultd>
</border>

<olist>
<begin>\begin{enumerate}
<!--
only for one-level lists
\setcounter{enumi}{<start/>}\addtocounter{enumi}{-1}
-->
</begin>
<end>\end{enumerate}</end>
</olist>

<ulist>
<begin>\begin{itemize}
</begin>
<end>\end{itemize}</end>
</ulist>

<entry>
<begin>\item</begin>
<end></end>
</entry>

<!--
this tableoverride option can be used to turn off handling of
certain tags in tables and other miscellaneous table 
behaviour, which I find is necessary for html in netscape
-->
<tableoverrides>
<!-- 
<ParaBefore>0</ParaBefore>
<ParaRight>0</ParaRight>
<ParaAfter>0</ParaAfter>
<ParaLeft>0</ParaLeft>
<ParaLeft1>0</ParaLeft1>
<VertMergedCells>0</VertMergedCells>
-->
</tableoverrides>

<table>
<begin>

\begin{tabular}{|*{<no_cols/>}{p{<cellrelpagewidth/>\textpercent}|}}
\hline
</begin>
<end>
\hline
\end{tabular}

</end>
</table>

<row>
<begin></begin>
<end>
</end>
</row>

<!--
<cell>
<begin>\multicolumn{<colspan/>}{|p{<cellrelpagewidth/>\textpercent}|}{\multirow{<rowspan/>}{<cellrelpagewidth/>\textpercent}{</begin>
<end>}}&amp;</end>
</cell>


<lastcell>
<begin></begin>
<end>\\</end>
</lastcell>
-->

<cell>
<begin>
\multicolumn{<colspan/>}{c}{\parbox{<cellrelpagewidth/>\textpercent}{\raggedright
</begin>
<end>}}&amp;
</end>
</cell>

<lastcell>
<begin>
\multicolumn{<colspan/>}{c}{\parbox{<cellrelpagewidth/>\textpercent}{\raggedright
</begin>
<end>}}\\</end>
</lastcell>

<paragraph>
<begin><table.end/><table.begin/><row.begin/><lastcell.begin/><cell.begin/><olist.end/><olist.begin/><ulist.end/><ulist.begin/><entry.begin/><text.begin/></begin>
<end><text.end/><entry.end/><olist.end/><ulist.end/><lastcell.end/><cell.end/><row.end/></end>
</paragraph>

<!-- these are all the character properties that can show up in word -->
<bold><begin>\textbf{</begin><end>}</end></bold>
<italic><begin>\textit{</begin><end>}</end></italic>

<!--
text that has been deleted and will be displayed with strikethrough when
revision marked text is to be displayed
--> 
<RMarkDel><begin>\deleted{</begin><end>}\suppress{[Del-author=<ibstRMarkDel/> Author ID=<ibstRMarkDel/> at <dttmRMarkDel/>]}</end></RMarkDel>

<!-- I don't even know what outline means -->
<outline><begin></begin><end></end></outline>
<smallcaps><begin>\textsc{</begin><end>}</end></smallcaps>
<caps><begin>\MakeUppercase{</begin><end>}</end></caps>
<vanish><begin></begin><end></end></vanish>

<!--
Text that has been newly typed since the last time revision marks have been 
accepted and will be displayed with underline when revision marked text is to 
be displayed

use either this line...
-->
<RMark><begin>\suppress{[author=<ibstRMark/> Author ID=<ibstRMark/> at <dttmRMark/>]}\revised{</begin><end>}</end></RMark>

<!--
or uncomment below to make the underline dissappear
-->
<!--
<RMark><begin></begin><end></end></RMark>
-->

<strike><begin>\sout{</begin><end>}\\</end></strike>
<shadow><begin></begin><end></end></shadow>
<lowercase><begin></begin><end></end></lowercase>
<emboss><begin></begin><end></end></emboss>
<imprint><begin></begin><end></end></imprint>
<!--double strike-->
<dstrike><begin>\sout{</begin><end>}\\</end></dstrike>

<!--
ftc's
&
hps

keep them for font face and do that later.
-->

<super><begin>$^{</begin><end>}$</end></super>
<sub><begin>$_{</begin><end>}$</end></sub>

<singleu><begin>\uline{</begin><end>}</end></singleu>
<wordu><begin>\uline{</begin><end>}</end></wordu>
<doubleu><begin>\uline{</begin><end>}</end></doubleu>
<dottedu><begin>\uline{</begin><end>}</end></dottedu>
<hiddenu><begin>\uline{</begin><end>}</end></hiddenu>
<thicku><begin>\uline{</begin><end>}</end></thicku>
<dashu><begin>\uline{</begin><end>}</end></dashu>
<dotu><begin>\uline{</begin><end>}</end></dotu>
<dotdashu><begin>\uline{</begin><end>}</end></dotdashu>
<dotdotdashu><begin>\uline{</begin><end>}</end></dotdotdashu>
<waveu><begin>\uline{</begin><end>}</end></waveu>

<!--
text whose properties have been changed since the last time revision marks 
have been accepted and will be displayed with a note showing the change points.

use either this line (which admit it a bit scary looking, but harmless)...
--> 
<PropRMark><begin>\suppress{[Prop-author=<ibstPropRMark/> Author ID=<ibstPropRMark/> at <dttmPropRMark/>]}\revised{</begin><end>}</end></PropRMark>

<!--
or uncomment below to make the notes dissappear
-->
<!--
<PropRMark><begin></begin><end></end></PropRMark>
-->

<!--
<color>
-->
<Black><begin></begin><end></end></Black>
<Blue><begin>\textcolor{blue}{</begin><end>}</end></Blue>
<Cyan><begin>\textcolor{cyan}{</begin><end>}</end></Cyan>
<Green><begin>\textcolor{green}{</begin><end>}</end></Green>
<Magenta><begin>\textcolor{magenta}{</begin><end>}</end></Magenta>
<Red><begin>\textcolor{red}{</begin><end>}</end></Red>
<Yellow><begin>\textcolor{yellow}{</begin><end>}</end></Yellow>
<White><begin>\textcolor{white}{</begin><end>}</end></White>
<DkBlue><begin>\textcolor{blue}{</begin><end>}</end></DkBlue>
<DkCyan><begin>\textcolor{cyan}{</begin><end>}</end></DkCyan>
<DkGreen><begin>\textcolor{green}{</begin><end>}</end></DkGreen>
<DkMagenta><begin>\textcolor{magenta}{</begin><end>}</end></DkMagenta>
<DkRed><begin>\textcolor{red}{</begin><end>}</end></DkRed>
<DkYellow><begin>\textcolor[rgb]{0.54,0.54,0.54}{</begin><end>}</end></DkYellow>
<DkGray><begin>\textcolor{gray}{</begin><end>}</end></DkGray>
<LtGray><begin>\textcolor{gray}{</begin><end>}</end></LtGray>
<!--
</color>
-->

<!--
<animation>
-->
<LasVegas><begin>&lt;blink&gt;</begin><end>&lt;/blink&gt;</end></LasVegas>
<BackgroundBlink><begin>&lt;blink&gt;</begin><end>&lt;/blink&gt;</end></BackgroundBlink>
<SparkleText><begin>&lt;blink&gt;</begin><end>&lt;/blink&gt;</end></SparkleText>
<MarchingAnts><begin>&lt;blink&gt;</begin><end>&lt;/blink&gt;</end></MarchingAnts>
<MarchingRedAnts><begin>&lt;blink&gt;</begin><end>&lt;/blink&gt;</end></MarchingRedAnts>
<Shimmer><begin>&lt;blink&gt;</begin><end>&lt;/blink&gt;</end></Shimmer>
<!--
</animation>
-->

<!--
I dont understand what this one is, and ive never come across it
use this sample line (which admit it a bit scary looking, but harmless)...

MV: I suppose this is "Display Field Revision Mark".

C: Well whatdy'a know, I bet it is.
-->
<DispFldRMark><begin>\suppress{[DispFld-author=<ibstDispFldRMark/> Author ID=<ibstDispFldRMark/> at <dttmDispFldRMark/> (<xstDispFldRMark/>)]}\revised{</begin><end>}</end></DispFldRMark>

<!--
or uncomment below to ignore it, the previous might even crash wv ?
-->
<!--
<DispFldRMark><begin></begin><end></end></DispFldRMark>
-->

<animation>
<begin><LasVegas.begin/><BackgroundBlink.begin/><SparkleText.begin/><MarchingAnts.begin/><MarchingRedAnts.begin/><Shimmer.begin/></begin>
<end><Shimmer.end/><MarchingRedAnts.end/><MarchingAnts.end/><SparkleText.end/><BackgroundBlink.end/><LasVegas.end/></end>
</animation>

<fontstr>
<begin><black.begin/><blue.begin/><cyan.begin/><green.begin/><magenta.begin/><red.begin/><yellow.begin/><white.begin/><dkblue.begin/><dkcyan.begin/><dkgreen.begin/><dkmagenta.begin/><dkred.begin/><dkyellow.begin/><dkgray.begin/><ltgray.begin/></begin>
<end><ltgray.end/><dkgray.end/><dkyellow.end/><dkred.end/><dkmagenta.end/><dkgreen.end/><dkcyan.end/><dkblue.end/><white.end/><yellow.end/><red.end/><magenta.end/><green.end/><cyan.end/><blue.end/><black.end/></end>
</fontstr>

<comment>
<begin>{\suppress{[comment:<ibstAnno/></begin><end>comment:<ibstAnno/> Author=<xstUsrInitl/>]}</end>
</comment>

<style name="Normal">
<character>
<begin><PropRMark.begin/><DispFldRMark.begin/><fontstr.begin/><bold.begin/><italic.begin/><strike.begin/><RMarkDel.begin/><outline.begin/><smallcaps.begin/><caps.begin/><vanish.begin/><RMark.begin/><shadow.begin/><lowercase.begin/><emboss.begin/><imprint.begin/><dstrike.begin/><super.begin/><sub.begin/><singleu.begin/><wordu.begin/><doubleu.begin/><dottedu.begin/><hiddenu.begin/><thicku.begin/><dashu.begin/><dotu.begin/><dotdashu.begin/><dotdotdashu.begin/><waveu.begin/></begin>
<end><waveu.end/><dotdotdashu.end/><dotdashu.end/><dotu.end/><dashu.end/><thicku.end/><hiddenu.end/><dottedu.end/><doubleu.end/><wordu.end/><singleu.end/><sub.end/><super.end/><dstrike.end/><imprint.end/><emboss.end/><lowercase.end/><shadow.end/><RMark.end/><vanish.end/><caps.end/><smallcaps.end/><outline.end/><RMarkDel.end/><strike.end/><italic.end/><bold.end/><fontstr.end/><DispFldRMark.end/><PropRMark.end/></end>
</character>

<!-- Netscape does handle this correctly yet, here is how each different side of the border should work.
border-top: thin <bordertopstyle/> <bordertopcolor/>;
border-left: thin <borderleftstyle/> <borderleftcolor/>;
border-right: thin <borderrightstyle/> <borderrightcolor/>;
border-bottom: thin <borderbottomstyle/> <borderbottomcolor/>
-->


<margin>
<begin>margin: <mmParaBefore/> <mmParaRight/> <mmParaAfter/> <mmParaLeft/>;</begin>
</margin>

<text>	
<begin>

</begin><end></end>
</text>

<picture>
<begin>\includegraphics{placeholder.png}</begin>
</picture>

</style>
</main>

placeholder.eps

Reply via email to