package be.nikiroo.fanfix.output;
+import java.io.BufferedWriter;
import java.io.File;
-import java.io.FileWriter;
+import java.io.FileOutputStream;
import java.io.IOException;
+import java.io.OutputStreamWriter;
import be.nikiroo.fanfix.Instance;
import be.nikiroo.fanfix.bundles.Config;
import be.nikiroo.fanfix.bundles.StringId;
import be.nikiroo.fanfix.data.Chapter;
import be.nikiroo.fanfix.data.MetaData;
-import be.nikiroo.fanfix.data.Story;
import be.nikiroo.fanfix.data.Paragraph.ParagraphType;
+import be.nikiroo.fanfix.data.Story;
class LaTeX extends BasicOutput {
- protected FileWriter writer;
+ protected BufferedWriter writer;
private boolean lastWasQuote = false;
// quote chars
- private char openQuote = Instance.getTrans().getChar(
- StringId.OPEN_SINGLE_QUOTE);
- private char closeQuote = Instance.getTrans().getChar(
- StringId.CLOSE_SINGLE_QUOTE);
- private char openDoubleQuote = Instance.getTrans().getChar(
- StringId.OPEN_DOUBLE_QUOTE);
- private char closeDoubleQuote = Instance.getTrans().getChar(
- StringId.CLOSE_DOUBLE_QUOTE);
+ private char openQuote = Instance.getInstance().getTrans().getCharacter(StringId.OPEN_SINGLE_QUOTE);
+ private char closeQuote = Instance.getInstance().getTrans().getCharacter(StringId.CLOSE_SINGLE_QUOTE);
+ private char openDoubleQuote = Instance.getInstance().getTrans().getCharacter(StringId.OPEN_DOUBLE_QUOTE);
+ private char closeDoubleQuote = Instance.getInstance().getTrans().getCharacter(StringId.CLOSE_DOUBLE_QUOTE);
@Override
public File process(Story story, File targetDir, String targetName)
throws IOException {
String targetNameOrig = targetName;
- targetName += getDefaultExtension();
+ targetName += getDefaultExtension(false);
File target = new File(targetDir, targetName);
- writer = new FileWriter(target);
+ writer = new BufferedWriter(new OutputStreamWriter(
+ new FileOutputStream(target), "UTF-8"));
try {
super.process(story, targetDir, targetNameOrig);
} finally {
}
@Override
- public String getDefaultExtension() {
+ public String getDefaultExtension(boolean readerTarget) {
return ".tex";
}
author = "\\author{" + latexEncode(meta.getAuthor()) + "}";
lang = meta.getLang().toLowerCase();
if (lang != null && !lang.isEmpty()) {
- lang = Instance.getConfig().getStringX(Config.LATEX_LANG, lang);
+ lang = Instance.getInstance().getConfig().getStringX(Config.CONF_LATEX_LANG, lang);
if (lang == null) {
- System.err.println(Instance.getTrans().getString(
- StringId.LATEX_LANG_UNKNOWN, lang));
+ System.err.println(Instance.getInstance().getTrans().getString(StringId.LATEX_LANG_UNKNOWN, lang));
}
}
}
lastWasQuote = true;
break;
case IMAGE:
- // TODO
+ // TODO what about images in LaTeX?
break;
}
}