Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
29. september 2008 - 20:54
#1
29. september 2008 - 20:54
#2
- venlig hilsen, deres private Google-betjener ;D
29. september 2008 - 20:55
#3
Ups ... sorry, jeg troede, jeg var et andet sted, riversen ;D
30. september 2008 - 04:05
#4
Jeg kan heller ikke finde nogle gode libs til en generel HTML->RTF konvertering. Men hvis det er meget simpel HTML så kunne du måske lave din egen parser og generere RTF med iText lib'et.
30. september 2008 - 04:05
#5
demo kode: import java.io.FileOutputStream; import java.io.IOException; import java.util.regex.Matcher; import java.util.regex.Pattern; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.Font; import com.lowagie.text.rtf.RtfWriter2; public class HTML2RTF { private static Pattern re = Pattern.compile("([^<>]+)|((<[^>]+>)([^<>]+)(</[^>]+>))"); public static void write(String html, String fnm) throws IOException, DocumentException { Document doc = new Document(); RtfWriter2.getInstance(doc, new FileOutputStream(fnm)); doc.open(); Matcher m = re.matcher(html); while(m.find()) { if(m.group(1) != null) { Chunk ch = new Chunk(m.group(1)); ch.setFont(new Font(Font.TIMES_ROMAN, 12.0f, Font.NORMAL)); doc.add(ch); } if(m.group(4) != null) { if(m.group(3).toLowerCase().startsWith("<b")) { Chunk ch = new Chunk(m.group(4)); ch.setFont(new Font(Font.TIMES_ROMAN, 12.0f, Font.BOLD)); doc.add(ch); } else if(m.group(3).toLowerCase().startsWith("<i")) { Chunk ch = new Chunk(m.group(4)); ch.setFont(new Font(Font.TIMES_ROMAN, 12.0f, Font.ITALIC)); doc.add(ch); } } } doc.close(); } public static void main(String[] args) throws Exception { write("foo <b>bar</b> bla <i>bla</i> etc.", "C:\\z.rtf"); } }
30. september 2008 - 06:19
#6
ole: signeret, uforbeholden undskyldning for upassende kækhed afventes med posten ;) arne: prøver lige at lege med det.
28. oktober 2008 - 23:37
#7
Kommet videre ?
29. oktober 2008 - 06:01
#8
ikke endnu... satser på at prøve det af i løbet af weekenden.
15. december 2008 - 19:47
#9
jeg har ikke kunnet finde noget helt godt endnu, så jeg har tænkt mig at prøve med dll'en, jeg linker til i spørgsmålet. Kan jeg kalde funktionerne vha. JNI? Jeg har prøvet følgende: public class Test { static { System.loadLibrary( "SautinSoft.HtmlToRtf" ); } public static void main( String[] args ) throws Exception { String s = "hej<br /><b>med dig</b><br><hr /><div align=\"right\">din javatosse</div>"; Test t= new Test(); System.out.println( t.ConvertString( s ) ); } public native String ConvertString( String text ); men får java.lang.UnsatisfiedLinkError: ConvertString
15. december 2008 - 20:18
#10
Det der kraever at SautinSoft.HtmlToRtf.dll er en Win32 DLL beregnet til brug via JNI, da JNI laver om paa baade navne og antal parametre.
15. december 2008 - 20:39
#11
ja, så dutter den ikke.
15. december 2008 - 20:57
#12
Problemet loeses nogen gange med en af: Java---(JNI)---Win32 DLL i C---(normal kald)---Win32 DLL Java---(JNI)---Win32 DLL i C++---(COM kald)---COM DLL
16. december 2008 - 06:19
#13
Det er nok nemmere, hvis du lige laver en komplet html-to-rtf klasse istedet. Giver du lige besked når den er klar
20. december 2008 - 21:48
#14
Det var vel en joke ...
20. december 2008 - 21:51
#15
Men nu hentede jeg lige det du linkede til. De har lavet alt arbejdet for dig. Put htmltortf.jar i classpath og kod som: using com.sautinsoft.HtmlToRtf; ... HtmlToRtf cvt = new HtmLToRtf(); String html = "..."; String rtf = cvt.convertHtmlToRtf(html); (de to DLL filer skal nok være i PATH for at det virker)
21. december 2008 - 05:50
#16
hva' f..... havde slet ikke set den .jar fil.
21. december 2008 - 06:18
#17
smid et svar så får du point for det :)
21. december 2008 - 15:18
#18
svar
Kurser inden for grundlæggende programmering