encoding issues fix
This commit is contained in:
@@ -10,6 +10,7 @@ import java.io.FileOutputStream;
|
|||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.Reader;
|
import java.io.Reader;
|
||||||
import java.io.StringReader;
|
import java.io.StringReader;
|
||||||
|
import java.nio.charset.Charset;
|
||||||
import java.text.NumberFormat;
|
import java.text.NumberFormat;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.util.Hashtable;
|
import java.util.Hashtable;
|
||||||
@@ -559,58 +560,80 @@ public class HTMLtoLaTeXBackEnd extends HTMLEditorKit.ParserCallback {
|
|||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// case 'æ':
|
// case 0xc38a:
|
||||||
case '¾':
|
case 0xc3a6:
|
||||||
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
if (Charset.defaultCharset().name().equals("UTF-8")) {
|
||||||
ret.append("\\ae\\ ");
|
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
||||||
i++;
|
ret.append("\\ae\\ ");
|
||||||
|
i++;
|
||||||
|
} else {
|
||||||
|
ret.append("\\ae ");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ret.append("\\ae ");
|
ret.append((char) c);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// case 'Æ':
|
case 0xc386:
|
||||||
case '®':
|
if (Charset.defaultCharset().name().equals("UTF-8")) {
|
||||||
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
||||||
ret.append("\\AE\\ ");
|
ret.append("\\AE\\ ");
|
||||||
i++;
|
i++;
|
||||||
|
} else {
|
||||||
|
ret.append("\\AE ");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ret.append("\\AE ");
|
ret.append((char) c);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// case 'å':
|
// case 0xc382:
|
||||||
case 'Œ':
|
case 0xc3a5:
|
||||||
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
if (Charset.defaultCharset().name().equals("UTF-8")) {
|
||||||
ret.append("\\aa\\ ");
|
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
||||||
i++;
|
ret.append("\\aa\\ ");
|
||||||
|
i++;
|
||||||
|
} else {
|
||||||
|
ret.append("\\aa ");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ret.append("\\aa ");
|
ret.append((char) c);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// case 'Å':
|
case 0xc385:
|
||||||
case '<27>':
|
if (Charset.defaultCharset().name().equals("UTF-8")) {
|
||||||
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
||||||
ret.append("\\AA\\ ");
|
ret.append("\\AA\\ ");
|
||||||
i++;
|
i++;
|
||||||
|
} else {
|
||||||
|
ret.append("\\AA ");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ret.append("\\AA ");
|
ret.append((char) c);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// case 'ø':
|
// case 0xc2af:
|
||||||
case '¿':
|
case 0xc3b8:
|
||||||
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
if (Charset.defaultCharset().name().equals("UTF-8")) {
|
||||||
ret.append("\\o\\ ");
|
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
||||||
i++;
|
ret.append("\\o\\ ");
|
||||||
|
i++;
|
||||||
|
} else {
|
||||||
|
ret.append("\\o ");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ret.append("\\o ");
|
ret.append((char) c);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
// case 'Ø':
|
// case 0xc3bf:
|
||||||
case '¯':
|
case 0xc398:
|
||||||
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
if (Charset.defaultCharset().name().equals("UTF-8")) {
|
||||||
ret.append("\\O\\ ");
|
if (i < str.length() - 1 && str.charAt(i + 1) == ' ') {
|
||||||
i++;
|
ret.append("\\O\\ ");
|
||||||
|
i++;
|
||||||
|
} else {
|
||||||
|
ret.append("\\O ");
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ret.append("\\O ");
|
ret.append((char) c);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case '^':
|
case '^':
|
||||||
|
|||||||
Reference in New Issue
Block a user