public void ImportImageThumbnail(string path) { if (!DoesLibraryContain(currentBookTitle)) { Debug.Log("Cannot add thumbnail to non-existent book " + currentBookTitle + ". Import book first."); return; } BookInfo bookInfo = BookInfoMapper.DeserializeInfo(currentBookTitle); bookInfo.thumbnailPath = path; string[] pathParts = path.Split('.'); if (pathParts.Length < 2) { throw new InvalidBookFormatException("Invalid image format. Must include extension"); } string ext = pathParts[pathParts.Length - 1]; CopyOriginal(path, Config.Instance.BookLibraryPath + "/" + Config.Instance.ApplicationName + "/" + currentBookTitle + "/" + currentBookTitle + "-thumb." + ext); string outputPath = Config.Instance.BookLibraryPath + "/" + Config.Instance.ApplicationName + "/" + bookInfo.title + "/info.yaml"; BookInfoMapper.SerializeInfo(outputPath, bookInfo); }
public void InitBook(string title) { if (books == null) { LoadLibrary(); } if (!books.Contains(title)) { // throw error } BookFormat bookType = BookInfoMapper.DeserializeInfo(title).format; switch (bookType) { case BookFormat.TXT: InitTxtBasedBook(title); break; default: Debug.Log("Invalid book format"); return; } }