Register Guidelines E-Books Search Today's Posts Mark Forums Read

Go Back   MobileRead Forums > E-Book Readers > Barnes & Noble NOOK

Notices

Reply
 
Thread Tools Search this Thread
Old 02-26-2010, 10:57 AM   #1
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
Smile Font and epub, what works on sony, now works on Nook too!

I am a China Nook user and I want to read Chinese book in my nook. I understand Nook support embedded font in epub and pdf and this works for me well.

But I am a lazy person and don't like embedded font to the epub file everytime. There is a well known method in Sony ereader to use font file in reader to display book content, if you never know about it, you can find more information in below link:

http://www.mobileread.com/forums/showthread.php?t=36361

I spent half day and make the same thing happen in Nook and I'd like to share with you all here, below is the brief steps:

- put the font file you want to use in Nook (you can put it in internal storage or external miniSD card, it dpends on you), for example, I create a folder named "font" in sdcard and put font files "msyh.ttf" and "msyhbd.ttf" in it.

- In Calibre, choose Preference -> Conversion -> Extra CSS and put below scripts in it:

@font-face {
font-family: "MSYaHei";
font-weight: normal;
font-style: normal;
src: url(res:///sdcard/font/msyh.ttf);
}
@font-face {
font-family: "MSYaHei";
font-weight: bold;
font-style: normal;
src: url(res:///sdcard/font/msyhbd.ttf);
}

body { font-family: "MSYaHei", serif;}

of course, you can adjust it according your font file and folder

- the last step, convert the book to epub and upload it to your Nook, enjoy!


with this method in Nook, there are some hints should be noticed.

- for the src code above, if you use minisdcard to store font file, the format should be:

src: url(res:///sdcard/font/msyhbd.ttf);

if you use internal storage to store font file, the format should be:

src: url(res:///system/media/sdcard/<your font folder>);

- with my testing, not every font file works with Nook, for example, the msyh font file from XP not work, but the font file from WIN7 works fine.

Hope this is useful to you!
ctos is offline   Reply With Quote
Old 02-27-2010, 07:25 PM   #2
abjdiat
Enthusiast
abjdiat began at the beginning.
 
Posts: 32
Karma: 10
Join Date: Oct 2009
Device: Nook
thanx ctos for sharing , i will try this method with Arabic books, i hope it works as well
abjdiat is offline   Reply With Quote
 
Enthusiast
Old 02-28-2010, 10:43 AM   #3
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
after more testing, it seems above script not work for all situations. But the approach works.

In case you still see "?" for those non-western character in book, please try below workaround, it works for me.

- open the epub file with zip tool and find the .css file in it
- search all "font-family:" part and replace the font behind it with the font you have defined

I am a newbie to calibre and I am investigating to solve the issue, any suggestion from you is great appreciated.

Last edited by ctos; 03-02-2010 at 09:13 AM. Reason: correct English
ctos is offline   Reply With Quote
Old 02-28-2010, 12:14 PM   #4
wallcraft
reader
wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.wallcraft ought to be getting tired of karma fortunes by now.
 
wallcraft's Avatar
 
Posts: 6,979
Karma: 5183568
Join Date: Mar 2006
Location: Mississippi, USA
Device: Kindle 3 and Fire
Quote:
Originally Posted by ctos View Post
I am a newbie to calibre and I am investigating to solve the issue, any suggestion from you is great appreciated.
Something that might work is to redefine serif (and san-serif, although this is less necessary), because this is the default font if the specified font is not found.

Code:
@font-face {
font-family: "MSYaHei", serif, sans-serif;
font-weight: normal;
font-style: normal;
src: url(res:///sdcard/font/msyh.ttf);
}
@font-face {
font-family: "MSYaHei", serif, sans-serif;
font-weight: bold;
font-style: normal;
src: url(res:///sdcard/font/msyhbd.ttf);
}
With this approach you don't even need to provide a new body, because serif is already the default and now it points to MSYaHei. However, for complete safety you need to define normal italic and bold italic as well. I have an example ePub that redefines all the default fonts in Fonts and Epub - What works on Sony, Works for Pocket Pro too!
wallcraft is offline   Reply With Quote
Old 03-01-2010, 11:44 AM   #5
abjdiat
Enthusiast
abjdiat began at the beginning.
 
Posts: 32
Karma: 10
Join Date: Oct 2009
Device: Nook
it worked with Arabic texts (I used Arial font) but the letters are not connected to eather, I guess it lacks reshaping
http://blog.amr-gawish.com/39/arabic...ge-in-android/
abjdiat is offline   Reply With Quote
Old 03-03-2010, 02:22 AM   #6
bthoven
Evangelist
bthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enough
 
bthoven's Avatar
 
Posts: 452
Karma: 544
Join Date: Aug 2009
Location: Bangkok, Thailand
Device: Kindle'r 3, iPhone 3Gs, iPad 2, Galaxy Tab Wifi
Hi,

If I have font files that works for Thai in \system\fonts\ folder, what would be the src:url?

Thanks
bthoven is offline   Reply With Quote
Old 03-03-2010, 09:44 AM   #7
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
Quote:
Originally Posted by bthoven View Post
Hi,

If I have font files that works for Thai in \system\fonts\ folder, what would be the src:url?

Thanks
try this:

src: url(res:///system/font/<your font>.ttf);

please let us know whether this work.
ctos is offline   Reply With Quote
Old 03-06-2010, 10:30 AM   #8
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
Update, you don't need additional font file now, you can use system embedded font to display Chinese (or language android native supported). Thanks wallcraft's comments!

You just need apply below scripts in Extra CSS:

@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
body { font-family: "DroidFont", serif;}

enjoy it!

Last edited by ctos; 03-06-2010 at 11:20 AM.
ctos is offline   Reply With Quote
Old 03-07-2010, 12:13 AM   #9
droople
Connoisseur
droople has a complete set of Star Wars action figures.droople has a complete set of Star Wars action figures.droople has a complete set of Star Wars action figures.droople has a complete set of Star Wars action figures.
 
droople's Avatar
 
Posts: 95
Karma: 388
Join Date: Jan 2010
Device: Nook,Nook Simple Touch, Nook Color
Quote:
Originally Posted by ctos View Post
Update, you don't need additional font file now, you can use system embedded font to display Chinese (or language android native supported). Thanks wallcraft's comments!

You just need apply below scripts in Extra CSS:

@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
body { font-family: "DroidFont", serif;}

enjoy it!
not working on my nook

do i neet to softroot my nook first?

Last edited by droople; 03-07-2010 at 03:26 AM.
droople is offline   Reply With Quote
Old 03-07-2010, 07:50 AM   #10
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
Quote:
Originally Posted by droople View Post
not working on my nook

do i neet to softroot my nook first?
no need for softroot, I have sent a example file to you. hope it is helpful.

if CSS script not work for you, try the workaround I mentioned above, it should work.
ctos is offline   Reply With Quote
Old 03-07-2010, 08:35 AM   #11
bthoven
Evangelist
bthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enoughbthoven will become famous soon enough
 
bthoven's Avatar
 
Posts: 452
Karma: 544
Join Date: Aug 2009
Location: Bangkok, Thailand
Device: Kindle'r 3, iPhone 3Gs, iPad 2, Galaxy Tab Wifi
Quote:
Originally Posted by ctos View Post
Update, you don't need additional font file now, you can use system embedded font to display Chinese (or language android native supported). Thanks wallcraft's comments!

You just need apply below scripts in Extra CSS:

@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
body { font-family: "DroidFont", serif;}

enjoy it!
I believe I tried this Font once and to my surprise, it did not work. Let me try your script. Thanks
bthoven is offline   Reply With Quote
Old 03-31-2010, 12:46 AM   #12
mikeislong
Junior Member
mikeislong began at the beginning.
 
Posts: 1
Karma: 10
Join Date: Mar 2010
Device: Nook
I just got a Nook so I don't really know what I am doing. To view Chinese I followed the steps:

1. Plug in Nook to my computer, shown as H: drive
2. Create a new folder called Font
3. Copy the Win 7 font file msyh.ttf & msyhbd.ttf to the Font folder
4. Add my Chinese txt file into Calibre, convert to epub using the following extra CSS:

@font-face {
font-family: "MSYaHei";
font-weight: normal;
font-style: normal;
src: url(res:///system/media/sdcard/Font/msyh.ttf);
}
@font-face {
font-family: "MSYaHei";
font-weight: bold;
font-style: normal;
src: url(res:///system/media/sdcard/Font/msyhbd.ttf);
}

body { font-family: "MSYaHei", serif;}

5. Copy the epub file to the Nook H:/my document/novel.epub

and when I open it with the Nook, I just get bunch of ??, when there are english characters, it does display it correctly.

What am I doing wrong here? Any suggestions or tips will be greatly appreciated!!

Thanks! Mike
mikeislong is offline   Reply With Quote
Old 03-31-2010, 01:40 AM   #13
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
try this CSS style, which use embedded font file


@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: normal;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: normal;
font-style: italic;
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
@font-face {
font-family: "DroidFont", serif, sans-serif;
font-weight: bold;
font-style: italic;"DroidFont"
src: url(res:///system/fonts/DroidSansFallback.ttf);
}
body { font-family: "DroidFont", serif;}

if you still has issue, try below workaround

- open the epub file with zip tool and find the .css file in it
- search all "font-family:" part and replace the font behind it with the font "DroidFont"

Finally, try reboot nook to see whether it helps.
ctos is offline   Reply With Quote
Old 03-31-2010, 01:43 AM   #14
ctos
Enthusiast
ctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-booksctos has learned how to read e-books
 
Posts: 27
Karma: 881
Join Date: Feb 2010
Location: Beijing, China
Device: Nook, G1
and there is document in nookdevs with more detail, hope it is helpful.

http://nookdevs.com/Font_Changes
ctos is offline   Reply With Quote
Old 06-25-2010, 06:54 AM   #15
rty
Zealot
rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.rty got an A in P-Chem.
 
Posts: 105
Karma: 6066
Join Date: Apr 2010
Location: Travelling Nomad in Asia
Device: iPad 2, Nook 3G, Kindle DXG, Eken M001
It works well on my recipe for BBC Chinese (http://www.bbc.co.uk/zhongwen/simp/indepth/index.xml)

Spoiler:

Code:
class AdvancedUserRecipe1277443634(BasicNewsRecipe):
    title          = u'BBC Chinese'
    oldest_article = 7
    max_articles_per_feed = 100

    feeds          = [
	#(u'\u4e3b\u9875', u'http://www.bbc.co.uk/zhongwen/simp/index.xml'), 
	#(u'\u5206\u6790\u8bc4\u8bba', u'http://www.bbc.co.uk/zhongwen/simp/indepth/index.xml')
	]
    extra_css = '''
    	@font-face {font-family: "DroidFont", serif, sans-serif;  src: url(res:///system/fonts/DroidSansFallback.ttf); }\n
	body {margin-right: 8pt; font-family: 'DroidFont', serif;}
                    h1 {font-family: 'DroidFont', serif, sans-serif}
            '''
    __author__            = 'rty'
    __version__            = '1.0'
    language = 'zh-HANS'
    pubisher  = 'British Broadcasting Corporation'
    description           = 'BBC news in Chinese'
    category              = 'News, Chinese'
    remove_javascript = True
    use_embedded_content   = False
    no_stylesheets = True
    encoding               = 'UTF-8'
    conversion_options = {'linearize_tables':True} 
    masthead_url = 'http://wscdn.bbc.co.uk/zhongwen/simp/images/1024/brand.jpg'
    keep_only_tags = [
                              dict(name='h1'),
                              dict(name='p', attrs={'class':['primary-topic','summary']}),
                              dict(name='div', attrs={'class':['bodytext','datestamp']}), 
                              ]


But there's still some problem on the XML Feed page. Please look at the first photo. Look at the ??????? characters on the article summary/description lines in the XML feed page. The article itself is fine.

From what I observed, the problem only happens on XML Feed page with UTF-8 encoding.

Any idea how to solve this?
Spoiler:





Last edited by rty; 06-25-2010 at 06:56 AM.
rty is offline   Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Classic Nook in Canada - It works crod Barnes & Noble NOOK 43 03-08-2012 03:46 PM
Classic The Nook works in Germany mos Barnes & Noble NOOK 21 03-03-2010 01:33 PM
Fonts and Epub - What works on Sony, Works for Pocket Pro too! tamzilla Astak EZReader 23 12-13-2009 10:56 PM
PRS-300 Font Embedding Works on the 300 luqmaninbmore Sony Reader 1 09-05-2009 08:45 AM
Validated Secure DE works on SONY (EPUB /PDF) =X= Sony Reader 11 11-01-2008 07:43 PM


All times are GMT -4. The time now is 06:18 AM.


MobileRead.com is a privately owned, operated and funded community.