1 package be
.nikiroo
.fanfix
.output
;
4 import java
.io
.FileWriter
;
5 import java
.io
.IOException
;
7 import be
.nikiroo
.fanfix
.data
.MetaData
;
8 import be
.nikiroo
.fanfix
.data
.Paragraph
;
9 import be
.nikiroo
.fanfix
.data
.Story
;
10 import be
.nikiroo
.utils
.IOUtils
;
12 class Cbz
extends BasicOutput
{
16 public File
process(Story story
, File targetDir
, String targetName
)
18 String targetNameOrig
= targetName
;
19 targetName
+= getDefaultExtension();
21 File target
= new File(targetDir
, targetName
);
23 dir
= File
.createTempFile("fanfic-reader-cbz-dir", ".wip");
27 // will also save the images!
28 new InfoText().process(story
, dir
, targetNameOrig
);
29 IOUtils
.writeSmallFile(dir
, "version", "3.0");
32 super.process(story
, targetDir
, targetNameOrig
);
36 IOUtils
.zip(dir
, target
, true);
43 protected String
getDefaultExtension() {
48 protected void writeStoryHeader(Story story
) throws IOException
{
49 MetaData meta
= story
.getMeta();
51 StringBuilder builder
= new StringBuilder();
52 if (meta
!= null && meta
.getResume() != null) {
53 for (Paragraph para
: story
.getMeta().getResume()) {
54 builder
.append(para
.getContent());
59 FileWriter writer
= new FileWriter(new File(dir
, "URL"));
62 writer
.write(meta
.getUuid());
65 writer
.write(builder
.toString());
70 writer
= new FileWriter(new File(dir
, "SUMMARY"));
73 if (meta
!= null && meta
.getTitle() != null) {
74 title
= meta
.getTitle();
78 if (meta
!= null && meta
.getAuthor() != null) {
80 writer
.write(meta
.getAuthor());
83 writer
.write(builder
.toString());