Company
Interactive Demos
Hint: Please use \usepackage[utf8]{inputenc} instead of encodings like \usepackage[latin1]{inputenc}, or disable explicitly the UTF-8 checkbox! New: File upload with optional PNG/JPG to EPS conversion!
File upload
This menu allows you to upload up to 10 files. e.g images, which can be included in the LaTeX source.The uploaded files may sum up to 2 MB.
This checkbox converts JPG/JPEG/PNG files automatically in the EPS format.
No data available
program | user | kernel |
---|---|---|
compile LaTeX source | ||
execute OCHEM-Perl/M4-Scripts | ||
LaTeX 2. pass | ||
dvips (convert .DVI to .EPS) | ||
GhostScript (convert .EPS to .PNG) | ||
PDF2SWF (convert .PDF to .SWF | ||
estimated total time: ms |
Bei kommerzieller Nutzung wenden Sie sich bitte an office@sciencesoft.at. Weiters bitten wir
Sie, uns auch bei nicht-kommerzieller Nutzung dieser Schnittstelle über obige E-Mail-Adresse
zu benachrichtigen, damit wir Sie bei Änderung der Schnittstelle gegebenfalls informieren zu können.
CGI-Parameter:
URL
oder mit einem optionalen Dateinamen
http://sciencesoft.at/image/latexurl/image.png?...
Der POST-Request wird im Format UTF-8 erwartet.
src
dev
jpeggray|pnm|tiffgray|tiff12nc|tiff24nc|tiff32nc|tiffg3|tiffg4|psdrgb|swf
der Parameter papersize mit folgenden Werten zulässig:
dpi
ochem
error
zurückgegeben.
result
zurückgegeben: Status-Code OK & URL auf die generiere Grapfik
http://sciencesoft.at/image/latexurl/latex.png?hash=2129519513&ext=png
This is pdfeTeXk, Version 3.141592-1.30.3-2.2 (Web2c 7.5.5) (format=latex 2006.1.3) 23 SEP 2008 07:18
...
urlencoding
eines GET-Requests ausgwertet:
utf8:
http://sciencesoft.at/image/latexurl/img.png?template=textutf8&src=Test:%20%C3%B6
latin1:
http://sciencesoft.at/image/latexurl/img.png?template=textutf8&urlencoding=latin1&src=Test:%20%F6
template
bestehende Vorlage eingefügt wird. Der Default-Wert für diesen Parameter ist inlinemath
\documentclass[12pt]{article} \pagestyle{empty} \begin{document}\\begin{math} ... \end{math}\\end{document}
\documentclass[12pt]{article} \pagestyle{empty} \begin{document} ... \end{document}
\documentclass[12pt]{article} \pagestyle{empty} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \begin{document} ... \end{document}
\documentclass[12pt]{article} \pagestyle{empty} \begin{document} \begin{displaymath} ... \end{displaymath} \end{document}
\documentclass[12pt]{article} \usepackage{amssymb,amsmath} \pagestyle{empty} \begin{document} \begin{displaymath} ... \end{displaymath} \end{document}
\documentclass{article} \pagestyle{empty} \usepackage{ochem} \begin{document} \begin{chemspecial} include(`utils.inc') include(`natur.inc') require("bicyclib") \end{chemspecial} \begin{chemistry} ... \end{chemistry} \end{document}
Beispiel
Dieses Beispiel generiert über die CGI-Schnittstelle eine PDF-Datei im Papierformat A4
mit
der Schrödingergleichung als Inhalt.
Sie können dieses Beispiel inklusive aller notwendigen Libraries über
folgenden
Link herunterladen.
/* * LaTeXClient.java - LaTeX CGI access example * Author: Peter Sauer (peter.sauer@sciencesoft.at) * Date of last modification: 2008-09-25 * HTTPClient: http://hc.apache.org/httpclient-3.x/userguide.html */ package at.sciencesoft.test; import org.apache.commons.httpclient.*; import org.apache.commons.httpclient.methods.*; import java.io.*; public class LaTeXClient { private static String url = "http://sciencesoft.at/image/latexurl"; private static String schroedinger = "\\documentclass[12pt]{article}\n" + "\\pagestyle{empty}\n" + "\\begin{document}\n"+ "\\begin{displaymath}\n" + "\\bf\n" + "\\int H(x,x')\\psi(x')dx' = -\\frac{\\hbar^2}{2m}\\frac{d^2}{dx^2}\n" + "\\psi(x)+V(x)\\psi(x)\n" + "\\end{displaymath}\n" + "\\end{document}\n"; public static void main(String[] args) throws Exception { // Prepare HTTP post PostMethod post = new PostMethod(url); // Request content will be retrieved directly from the input stream NameValuePair[] postdata = { new NameValuePair("src", schroedinger), new NameValuePair("dev", "pdfwrite"), new NameValuePair("papersize", "a4"), new NameValuePair("template", "no") }; // Set charset to UTF-8 post.setRequestHeader("Content-Type", PostMethod.FORM_URL_ENCODED_CONTENT_TYPE + ";charset=utf-8"); post.setRequestBody(postdata); // Get HTTP client HttpClient httpclient = new HttpClient(); // Execute request try { int result = httpclient.executeMethod(post); // Display status code System.out.println("Response status code: " + result); if (result == 200) { FileOutputStream test = new FileOutputStream("test.pdf"); test.write(post.getResponseBody()); test.close(); System.out.println("Success!"); } } finally { // Release current connection to the connection pool once you are done post.releaseConnection(); } } }
unterstützt, angesprochen werden.
Bei kommerzieller Nutzung wenden Sie sich bitte an office@sciencesoft.at. Weiters bitten wir
Sie, uns auch bei nicht-kommerzieller Nutzung dieser Schnittstelle über obige E-Mail-Adresse
zu benachrichtigen, damit wir Sie bei Änderung der Schnittstelle gegebenfalls informieren zu können.
XML Request
XML-Request wird im UTF-8 Format erwartet.<?xml version="1.0" encoding="UTF-8"?> <latex ochem="false"> <dev dpi="120">png16m</dev> <src><![CDATA[\documentclass[12pt]{article} \pagestyle{empty} \begin{document} Hallo World! \end{document}]]> </src> <embeddedData>false</embeddedData> </latex>
URL
Unterstützt nur HTTP PUT!
latex
dev
jpeggray|pnm|tiffgray|tiff12nc|tiff24nc|tiff32nc|tiffg3|tiffg4|psdrgb|swf
Das optinale XML-Attribut dpi legt die Auslösung im Bereich von 60 - 600 dpi fest. Default-Wert: 120 dpi
Im Kontext mit dem Wert pdfwrite ist das XML-Attribut papersize mit folgenden Werten zulässig:
HEX-Format zulässig.
src
embeddedData
in die XML-Antwort eingebettet werden. Default-Wert: false
XML Response
<?xml version="1.0" encoding="UTF-8"?> <RESTlatexResult> <success>?</success> <error>?</error> <embeddedData>?</embeddedData> <url>?</url> <data>?</data> <fileExt>?</fileExt> <size>?</size> <width>?</width> <height>?</height> </RESTlatexResult>
succces
error
embeddedData
eingebettet. Ist der Wert hingegen false, so beinhaltet das Element url einen Link auf das Ergebnis.
url oder data
size
fileExt
width & height
Beispiel
Dieses Beispiel erzeugt über die REST-Schnittstelle eine Grafik und speichert diese.
Sie können dieses Beispiel inklusive aller notwenigen Libraries über folgenden
Link herunterladen.
package at.sciencesoft.test; import org.apache.commons.httpclient.*; import org.apache.commons.httpclient.methods.*; import sun.misc.BASE64Decoder; import java.io.*; /* * LaTeXRESTClient.java * LaTeX REST access example * Author: Peter Sauer (peter.sauer@sciencesoft.at) * Date of last modification: 2009-06-13 * HTTPClient: http://hc.apache.org/httpclient-3.x/userguide.html */ public class LaTeXRESTClient { private static String url = "http://sciencesoft.at/latex"; public static void writeByteStream(String fileName, byte[] stream) throws Exception { File file = new File(fileName); FileOutputStream writer = new FileOutputStream(file); writer.write(stream, 0, stream.length); writer.close(); } public static char[] readCharStream(String fileName) throws Exception { File file = new File(fileName); FileReader reader = new FileReader(file); int fileLength = (int) file.length(); char[] stream = new char[fileLength]; reader.read(stream, 0, fileLength); reader.close(); return stream; } public static void main(String[] args) throws Exception { String xml = new String(readCharStream(args[0])); // Prepare HTTP put PutMethod put = new PutMethod(url); // Request content will be retrieved directly // from the input stream put.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); put.setRequestEntity(new StringRequestEntity(xml, null, "utf-8")); // Get HTTP client HttpClient httpclient = new HttpClient(); // Execute request try { int result = httpclient.executeMethod(put); // Display status code System.out.println("Response status code: " + result); if (result == 200) { // fetching quick & dirty the binary data xml = put.getResponseBodyAsString(); if (xml.indexOf("<success>true</success>") >= 0) { int start = xml.indexOf("<data>"); int end = xml.indexOf("</data>"); if (start >= 0 && end >= 0) { start += "<data>".length(); writeByteStream(args[1], new BASE64Decoder().decodeBuffer(xml.substring(start, end))); } else { System.out.println(xml); } } else { System.out.println(xml); } } } catch (Exception e) { e.printStackTrace(); } finally { // Release current connection to the connection pool once you are done put.releaseConnection(); } } }
Bei kommerzieller Nutzung wenden Sie sich bitte an office@sciencesoft.at. Weiters bitten wir
Sie, uns auch bei nicht-kommerzieller Nutzung dieser Schnittstelle über obige E-Mail-Adresse
zu benachrichtigen, damit wir Sie bei Änderung der Schnittstelle gegebenfalls informieren zu können.
WDSL
SOAP-Request
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:def="http://DefaultNamespace"> <soapenv:Header/> <soapenv:Body> <def:compile> <def:source>?</def:source> <def:device>?</def:device> <def:deviceInfo>?</def:deviceInfo> <def:dpi>?</def:dpi> <def:utf8>?</def:utf8> <def:ochem>?</def:ochem> <def:embeddedData>?/def:embeddedData> </def:compile> </soapenv:Body> </soapenv:Envelope>
<def:source>
<def:device>
jpeggray|pnm|tiffgray|tiff12nc|tiff24nc|tiff32nc|tiffg3|tiffg4|psdrgb|swf
<def:deviceInfo>
Für device mit dem Wert pdfwrite sind folgenden Werte für deviceInfo zulässig:
<def:dpi>
<def:utf8>
<def:ochem>
OCHEM Unterstützung
<def:embeddedData>
eingebettet werden. false bewirkt, dass die SOAP-Antwort einen Link auf die erzeugte Grafik beihaltet.
SOAP-Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soap:Body> <ns1:compileResponse xmlns:ns1="http://DefaultNamespace"> <ns1:out> <success xmlns="http://DefaultNamespace">?</success> <error xsi:nil="true" xmlns="http://DefaultNamespace">?</error> <embeddedData xmlns="http://DefaultNamespace">false</embeddedData> <width xmlns="http://DefaultNamespace">?</width> <height xmlns="http://DefaultNamespace">?</height> <size xmlns="http://DefaultNamespace">?</size> <fileExt xmlns="http://DefaultNamespace">?</fileExt> <data xsi:nil="true" xmlns="http://DefaultNamespace">?</data> <url xmlns="http://DefaultNamespace">?</url> </ns1:out> </ns1:compileResponse> </soap:Body> </soap:Envelope>
succces
error
embeddedData
eingebettet. Ist der Wert hingegen false, so beinhaltet das Element url einen Link auf die berechnete Grafik.
url oder data
size
fileExt
width & height
Beispiel
Dieses Beispiel erzeugt über die SOAP-Schnittstelle eine PDF-Datei und speichert diese.
Sie können dieses Beispiel inklusive aller notwenigen Libraries über folgenden
Link herunterladen.
/* * LaTeXSOPAClient.java - LaTeX SOAP access example * Author: Peter Sauer (peter.sauer@sciencesoft.at) * Date of last modification: 2008-11-07 */ package at.sciencesoft.test; import at.sciencesoft.soap.latex.*; import java.io.*; public class LaTeXSOAPClient { private static String schroedinger = "\\documentclass[12pt]{article}\n" + "\\pagestyle{empty}\n" + "\\begin{document}\n" + "\\begin{displaymath}\n" + "\\bf\n" + "\\int H(x,x')\\psi(x')dx' = -\\frac{\\hbar^2}{2m}\\frac{d^2}{dx^2}\n" + "\\psi(x)+V(x)\\psi(x)\n" + "\\end{displaymath}\n" + "\\end{document}\n"; public static void writeByteStream(String fileName, byte[] stream) throws Exception { File file = new File(fileName); FileOutputStream writer = new FileOutputStream(file); writer.write(stream, 0, stream.length); writer.close(); } public static void main(String[] args) { try { Latex_Service serv = new Latex_Service(); Latex latex = serv.getLatexHttpPort(); SOAPlatexResult lr = latex.compile(schroedinger, "pdfwrite", "a4", 120, true,false, true); if (lr.isSuccess()) { System.out.println("Success!"); writeByteStream("test.pdf", lr.getData().getValue()); } else { System.out.println("Error:"); System.out.println(lr.getError().getValue()); } } catch (Exception e) { e.printStackTrace(); } } }
image dimension:
x pixel
Permanent link:
: dummy* SRC: dummy * The optional parameter resize makes it possible to control the size of the image in the range of values from 20 to 150 per cent. resize=150 represents the diagram 50% larger than the original. For transparent background images use the format pngalpha. Fehler: |
Handling
- The Start LaTeX button converts the source text in the input field into a graphical representation.
- The DPI(Dots Per Inch) input field indicates the resolution that is used to calculate the graphic representation (valid range: 60-600 DPI).
- This checkbox UTF-8 sets the encoding of the LaTeX source file. UTF-8 vs. Latin-1
- The Reset button clears the entire input field
- Templates or examples can be copied into the input field via the Load button and the pull-down-menu.
- The selection list Format enables the specification of the output format. In addition to the various image formats a PDF document can be produced with pdfwrite.