X-Git-Url: http://git.nikiroo.be/?p=fanfix.git;a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Ffanfix%2Foutput%2FHtml.java;fp=src%2Fbe%2Fnikiroo%2Ffanfix%2Foutput%2FHtml.java;h=0000000000000000000000000000000000000000;hp=ca802a50b60770c73d1ceef3388037a2222c1482;hb=0fc81e6465aa9c1f1dfc19b532082220d609768a;hpb=505be508ae7d3fb48122be548b310a238cfb91eb diff --git a/src/be/nikiroo/fanfix/output/Html.java b/src/be/nikiroo/fanfix/output/Html.java deleted file mode 100644 index ca802a5..0000000 --- a/src/be/nikiroo/fanfix/output/Html.java +++ /dev/null @@ -1,265 +0,0 @@ -package be.nikiroo.fanfix.output; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStreamWriter; - -import be.nikiroo.fanfix.Instance; -import be.nikiroo.fanfix.bundles.Config; -import be.nikiroo.fanfix.data.Chapter; -import be.nikiroo.fanfix.data.MetaData; -import be.nikiroo.fanfix.data.Paragraph; -import be.nikiroo.fanfix.data.Paragraph.ParagraphType; -import be.nikiroo.fanfix.data.Story; -import be.nikiroo.utils.IOUtils; -import be.nikiroo.utils.StringUtils; - -class Html extends BasicOutput { - private File dir; - protected BufferedWriter writer; - private boolean inDialogue = false; - private boolean inNormal = false; - - @Override - public File process(Story story, File targetDir, String targetName) - throws IOException { - String targetNameOrig = targetName; - - File target = new File(targetDir, targetName); - target.mkdir(); - dir = target; - - target = new File(targetDir, targetName + getDefaultExtension(true)); - - writer = new BufferedWriter(new OutputStreamWriter( - new FileOutputStream(target), "UTF-8")); - try { - super.process(story, targetDir, targetNameOrig); - } finally { - writer.close(); - writer = null; - } - - // write a copy of the originals inside - InfoCover.writeInfo(dir, targetName, story.getMeta()); - InfoCover.writeCover(dir, targetName, story.getMeta()); - BasicOutput.getOutput(OutputType.TEXT, isWriteInfo(), isWriteCover()) - .process(story, dir, targetNameOrig); - - if (story.getMeta().getCover() != null) { - Instance.getCache().saveAsImage(story.getMeta().getCover(), - new File(dir, "cover"), true); - } - - return target; - } - - @Override - public String getDefaultExtension(boolean readerTarget) { - if (readerTarget) { - return File.separator + "index.html"; - } - - return ""; - } - - @Override - protected void writeStoryHeader(Story story) throws IOException { - String title = ""; - String tags = ""; - String author = ""; - Chapter resume = null; - if (story.getMeta() != null) { - MetaData meta = story.getMeta(); - title = meta.getTitle(); - resume = meta.getResume(); - if (meta.getTags() != null) { - for (String tag : meta.getTags()) { - if (!tags.isEmpty()) { - tags += ", "; - } - tags += tag; - } - - if (!tags.isEmpty()) { - tags = "(" + tags + ")"; - } - } - author = meta.getAuthor(); - } - - String format = Instance.getConfig() - .getString(Config.FILE_FORMAT_IMAGE_FORMAT_COVER).toLowerCase(); - - InputStream inStyle = getClass().getResourceAsStream("html.style.css"); - if (inStyle == null) { - throw new IOException("Cannot find style.css resource"); - } - try { - IOUtils.write(inStyle, new File(dir, "style.css")); - } finally { - inStyle.close(); - } - - writer.write(""); - writer.write("\n"); - writer.write("\n"); - writer.write("\n "); - writer.write("\n "); - writer.write("\n "); - writer.write("\n " + StringUtils.xmlEscape(title) + ""); - writer.write("\n"); - writer.write("\n\n"); - - writer.write("\n
"); - writer.write("\n

" + StringUtils.xmlEscape(title) + "

"); - writer.write("\n
" + StringUtils.xmlEscape(tags) - + "
"); - writer.write("\n
"); - writer.write("\n "); - writer.write("\n
"); - writer.write("\n
" - + StringUtils.xmlEscape(author) + "
"); - writer.write("\n
"); - - writer.write("\n

"); - - if (resume != null) { - for (Paragraph para : resume) { - writeParagraph(para); - } - if (inDialogue) { - writer.write(" \n"); - inDialogue = false; - } - if (inNormal) { - writer.write(" \n"); - inNormal = false; - } - } - - writer.write("\n
"); - } - - @Override - protected void writeStoryFooter(Story story) throws IOException { - writer.write("\n"); - } - - @Override - protected void writeChapterHeader(Chapter chap) throws IOException { - String nameOrNumber; - if (chap.getName() != null && !chap.getName().isEmpty()) { - nameOrNumber = chap.getName(); - } else { - nameOrNumber = Integer.toString(chap.getNumber()); - } - - writer.write("\n

"); - writer.write("\n Chapter " - + chap.getNumber() + ": "); - writer.write("\n " - + StringUtils.xmlEscape(nameOrNumber) + ""); - writer.write("\n

"); - writer.write("\n "); - writer.write("\n
\n"); - - inDialogue = false; - inNormal = false; - } - - @Override - protected void writeChapterFooter(Chapter chap) throws IOException { - if (inDialogue) { - writer.write("
\n"); - inDialogue = false; - } - if (inNormal) { - writer.write(" \n"); - inNormal = false; - } - - writer.write("\n "); - } - - @Override - protected void writeParagraphHeader(Paragraph para) throws IOException { - if (para.getType() == ParagraphType.QUOTE && !inDialogue) { - writer.write("
\n"); - inDialogue = true; - } else if (para.getType() != ParagraphType.QUOTE && inDialogue) { - writer.write("
\n"); - inDialogue = false; - } - - if (para.getType() == ParagraphType.NORMAL && !inNormal) { - writer.write("
\n"); - inNormal = true; - } else if (para.getType() != ParagraphType.NORMAL && inNormal) { - writer.write("
\n"); - inNormal = false; - } - - switch (para.getType()) { - case BLANK: - writer.write("
"); - break; - case BREAK: - writer.write("
"); - break; - case NORMAL: - writer.write(" "); - break; - case QUOTE: - writer.write("
— "); - break; - case IMAGE: - // TODO - writer.write("" - + StringUtils.xmlEscape(para.getContent()) + ""); - break; - } - } - - @Override - protected void writeParagraphFooter(Paragraph para) throws IOException { - switch (para.getType()) { - case NORMAL: - writer.write("\n"); - break; - case QUOTE: - writer.write("
\n"); - break; - default: - writer.write("\n"); - break; - } - } - - @Override - protected void writeTextLine(ParagraphType type, String line) - throws IOException { - switch (type) { - case QUOTE: - case NORMAL: - writer.write(decorateText(StringUtils.xmlEscape(line))); - break; - default: - break; - } - } - - @Override - protected String enbold(String word) { - return "" + word + ""; - } - - @Override - protected String italize(String word) { - return "" + word + ""; - } -}